:root{color-scheme:light;--color-bg: var(--fo-bg-page-clean);--color-surface: var(--fo-surface);--color-text: var(--fo-text-clean);--color-border: var(--fo-border-clean);--color-accent: var(--fo-accent);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--radius-md: .75rem;--font-body: Inter, system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text)}button,input,textarea,select{font:inherit}a{color:inherit}.shell{max-width:1100px;margin:0 auto;padding:var(--space-6)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.nav-list{display:flex;gap:var(--space-3);flex-wrap:wrap;padding:0;margin:0;list-style:none}.stack{display:grid;gap:var(--space-4)}html,body{min-height:100%}#root{min-height:100vh}input,textarea,select,button{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:.5rem}button{background:var(--color-surface);cursor:pointer}.shell-centered .narrow-card form button[type=submit]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-color:var(--color-accent);background-color:var(--color-accent);color:#fff;-webkit-text-fill-color:#ffffff;font-weight:700}.shell-centered .narrow-card form button[type=submit]:disabled{cursor:wait;opacity:.72}button.active,.sidebar-link.active{background:#2155f51a;border-color:var(--color-accent)}.shell-centered{min-height:100vh;display:grid;place-items:center}.narrow-card{width:min(100%,26rem)}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-xs);color:#5a6272}.muted{color:#5a6272}.error-text{color:#9b1c1c;min-height:1.25rem;margin:0}.auth-notice{margin:0;padding:var(--space-3);border:1px solid #f0c36d;border-radius:.75rem;background:#fff8e8;color:#6b4e16}.auth-notice p{margin:0}.button-link{background:transparent;padding:0;border:0;color:var(--color-accent)}.button-link:hover{text-decoration:underline}.admin-layout{display:grid;grid-template-columns:18rem 1fr;min-height:100vh;gap:var(--space-4);padding:var(--space-4)}.admin-sidebar{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column}.admin-main{width:100%;max-width:none;margin:0;padding:0}.sidebar-link{display:block;text-decoration:none;padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:.5rem}.sidebar-section-title{margin:0;font-weight:600}.sidebar-user-block{margin-top:auto}.subtle-panel{background:#fafbff}.field-layout{min-height:100vh;display:grid;grid-template-rows:1fr auto}.field-content{padding-bottom:5rem}.field-tabbar{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);padding:var(--space-3);position:sticky;bottom:0;background:var(--color-surface);border-top:1px solid var(--color-border)}.button-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.booking-control-primary-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);width:100%;min-width:0}.booking-control-primary-tabs>.btn{width:100%;min-width:0;justify-content:center;text-align:center;white-space:normal;overflow-wrap:anywhere}.status-badge{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:999px;padding:.125rem .5rem}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:var(--space-2);border-bottom:1px solid var(--color-border)}.loading-spinner.full-page{min-height:50vh;display:grid;place-items:center}@media (max-width: 960px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}}.small{font-size:var(--text-sm)}.inventory-form-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.inventory-detail-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin:0}.inventory-detail-grid dt{font-size:var(--text-md);color:#5a6272;margin-bottom:var(--space-1)}.inventory-detail-grid dd{margin:0;font-weight:500}.field-page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.field-section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.job-card{width:100%;text-align:left;display:grid;gap:var(--space-3);background:var(--color-surface)}.job-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.job-card-body{display:grid;gap:var(--space-1)}.job-card-link{color:var(--color-accent);text-decoration:none}.detail-row{display:grid;gap:var(--space-1);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.detail-row:last-child{border-bottom:0}.plain-list{margin:0;padding-left:1.25rem;display:grid;gap:var(--space-2)}.two-column-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.sales-order-line{border:1px solid var(--color-border);border-radius:.75rem;padding:var(--space-3);display:grid;gap:var(--space-3)}.photo-placeholder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.photo-placeholder{min-height:7rem;border:1px dashed var(--color-border);border-radius:.75rem;display:grid;place-items:center;color:#5a6272;background:#fafbff;padding:var(--space-3);text-align:center}.success-banner{border-color:#b7e0c1;background:#f3fcf5}.status-badge{font-weight:600}.status-badge--draft{background:var(--fo-status-draft-bg)}.status-badge--scheduled{background:var(--fo-status-scheduled-bg);border-color:var(--fo-status-scheduled-border)}.status-badge--dispatched{background:var(--fo-status-dispatched-bg);border-color:var(--fo-status-dispatched-border)}.status-badge--in-progress{background:var(--fo-status-in-progress-bg);border-color:var(--fo-status-in-progress-border)}.status-badge--completed{background:var(--fo-status-completed-bg);border-color:var(--fo-status-completed-border)}.status-badge--incomplete-reported{background:var(--fo-status-incomplete-reported-bg);border-color:var(--fo-status-incomplete-reported-border)}.status-badge--needs-more-work{background:var(--fo-status-needs-more-work-bg);border-color:var(--fo-status-needs-more-work-border)}.status-badge--approved{background:var(--fo-status-approved-bg);border-color:var(--fo-status-approved-border)}.status-badge--cancelled{background:var(--fo-status-cancelled-bg);border-color:var(--fo-status-cancelled-border)}.status-badge--unknown{background:var(--fo-status-unknown-bg)}.page-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.filters-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.filters-grid-span-2{grid-column:span 2}.dashboard-metrics-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-page{gap:var(--space-6)}.dashboard-page-header-card{border-color:var(--fo-border);box-shadow:var(--shadow-card)}.dashboard-scope-control-row{justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--fo-surface-subtle);border:1px solid var(--fo-border);border-radius:var(--radius-lg)}.dashboard-section-title{margin:0;color:var(--fo-text);font-size:var(--text-xl);line-height:1.2}.dashboard-panel-card{border-color:var(--fo-border);box-shadow:var(--shadow-card)}.dashboard-metric-card{display:grid;gap:var(--space-2);text-align:left;padding:var(--space-4);color:var(--fo-text);transition:border-color .14s ease,transform .14s ease}.dashboard-metric-card:hover{border-color:var(--fo-border-strong);transform:translateY(-1px)}.dashboard-metric-title{font-size:var(--text-sm);color:var(--fo-text-muted);font-weight:600}.dashboard-metric-value{font-size:var(--text-metric);line-height:1;color:var(--fo-text)}.dashboard-content-grid{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.needs-attention-grid{align-content:start}.attention-section{min-height:0;border-color:var(--fo-border)}.attention-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2)}.attention-section h3{color:var(--fo-text);font-size:var(--text-base)}.dashboard-list-row{width:100%;text-align:left;display:grid;gap:var(--space-2);padding:var(--space-3);background:var(--fo-surface-subtle);border:1px solid var(--fo-border);border-radius:var(--radius-lg);color:var(--fo-text);transition:background .14s ease,border-color .14s ease}.dashboard-list-row:hover{background:var(--fo-surface);border-color:var(--fo-border-strong)}.dashboard-list-row-main{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap}.dashboard-pill-row{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.dashboard-soft-pill{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:var(--radius-pill);background:var(--fo-soft-blue);color:var(--fo-soft-blue-text);font-size:var(--text-sm)}.schedule-toolbar{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:end}.schedule-week-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr));align-items:start}.schedule-day-column{min-height:20rem;align-content:start}.schedule-day-header{display:flex;flex-direction:column;gap:.15rem;padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.schedule-card{width:100%;text-align:left;display:grid;gap:var(--space-2);padding:var(--space-3);background:#fbfcff;border-radius:.9rem}.schedule-card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.schedule-card-body{display:grid;gap:.15rem}.schedule-contractor-badge{display:inline-flex;min-width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:999px;background:#eef2ff;color:#2f4acb;font-weight:700}.schedule-empty-day{min-height:8rem;display:grid;place-items:center;border:1px dashed var(--color-border);border-radius:.9rem;color:#5a6272;background:#fafbff;text-align:center;padding:var(--space-3)}.table-link-button{background:transparent;border:0;padding:0;color:inherit;text-align:left}@media (max-width: 1200px){.dashboard-metrics-grid,.dashboard-metrics-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-content-grid{grid-template-columns:minmax(0,1fr)}.schedule-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.booking-control-primary-tabs{gap:var(--space-1)}.booking-control-primary-tabs>.btn{padding-inline:var(--space-1);font-size:var(--text-sm)}.dashboard-metrics-grid,.dashboard-metrics-grid--compact,.schedule-week-grid{grid-template-columns:minmax(0,1fr)}.filters-grid-span-2{grid-column:span 1}}body.admin-body{overflow-x:hidden}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);color:inherit;text-decoration:none}.admin-mobile-menu-button,.admin-mobile-close-button{display:none}.admin-sidebar-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.admin-sidebar-backdrop{display:none}.workorder-detail-grid{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1.35fr) minmax(16rem,22rem);gap:var(--space-4);align-items:start}.timeline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:start;padding:.65rem 0;border-bottom:1px solid var(--color-border)}.timeline-row:last-child{border-bottom:0}.table-wrapper{width:100%;overflow-x:auto}.data-table{min-width:42rem}.data-table caption{text-align:left;padding:0 0 var(--space-2);font-weight:600}.table-link-button,.data-table button{max-width:100%;word-break:break-word}.mobile-stack-grid,.responsive-two-panel,.responsive-three-panel{display:grid;gap:var(--space-4)}.responsive-two-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.responsive-three-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.truck-stock-layout{display:grid;gap:16px;grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:start}.schedule-toolbar .button-row,.page-header-row .button-row,.card .button-row{row-gap:var(--space-2)}@media (max-width: 1023px){.admin-layout{grid-template-columns:1fr;gap:var(--space-3);padding:var(--space-3)}.admin-main{padding-top:3.75rem}.admin-mobile-menu-button{position:fixed;top:var(--space-3);left:var(--space-3);z-index:40;display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.65rem .9rem;box-shadow:0 8px 24px #1f24301f;background:var(--color-surface)}.admin-mobile-close-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem}.admin-sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#14181f66}.admin-sidebar-backdrop.open{display:block}.admin-sidebar{position:fixed;top:0;left:0;z-index:35;width:min(22rem,calc(100vw - 2rem));height:100vh;border-radius:0;border-left:0;transform:translate(-110%);transition:transform .2s ease;overflow-y:auto}.admin-sidebar.open{transform:translate(0)}.schedule-toolbar,.responsive-three-panel,.responsive-two-panel,.truck-stock-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.shell{padding:var(--space-4)}.page-header-row{align-items:stretch}.page-header-row>*{width:100%}.page-header-row .button-row,.button-row.mobile-button-stack{width:100%}.page-header-row .button-row>*,.button-row.mobile-button-stack>*{flex:1 1 100%}.filters-grid,.filters-grid.filters-grid-workorders,.dashboard-list-row-main,.attention-section-header,.schedule-card-header,.field-page-header,.field-section-heading,.timeline-row{grid-template-columns:minmax(0,1fr)}.timeline-row{display:grid}.timeline-row span:last-child{color:#5a6272}.table-wrapper{overflow:visible}.data-table{min-width:0;border-collapse:separate;border-spacing:0}.data-table caption,.data-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.data-table tbody{display:grid;gap:var(--space-3)}.data-table tr{display:grid;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:.9rem}.data-table td{display:grid;gap:.35rem;border-bottom:0;padding:0}.data-table td:before{content:attr(data-label);font-size:var(--text-sm);font-weight:600;color:#5a6272;text-transform:uppercase;letter-spacing:.03em}.dashboard-metric-card,.schedule-card,.dashboard-list-row,.card{overflow-wrap:anywhere}.photo-placeholder-grid,.two-column-grid{grid-template-columns:minmax(0,1fr)}}.danger-zone{border-color:#f3b3b3;background:snow}.danger-button{border-color:#d92d20;color:#b42318}.purge-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f243066;display:grid;place-items:center;padding:var(--space-4);z-index:60}.purge-dialog{width:min(100%,34rem);max-height:calc(100vh - 2rem);overflow:auto}.csv-import-dialog{width:min(100%,560px);max-height:88vh;padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:16px;background:#fff;box-shadow:0 12px 40px #00000024,0 4px 12px #00000014}.csv-import-dialog__header{padding:20px 24px 16px;border-bottom:1px solid #f2f4f7;background:#fff}.csv-import-dialog__eyebrow{margin:0 0 4px;color:#2155f5;font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.csv-import-dialog__title{margin:0 0 4px;color:#0b1220;font-size:20px;font-weight:800;letter-spacing:-.3px;line-height:1.25}.csv-import-dialog__subtitle{margin:0;color:#8a94a6;font-size:13.5px;line-height:1.5}.csv-import-dialog__steps{display:flex;align-items:center;height:40px;padding:0 24px;border-bottom:1px solid #f2f4f7;background:#fff;flex-shrink:0}.csv-import-dialog__step-fragment{display:contents}.csv-import-dialog__step{display:flex;align-items:center;gap:6px;color:#8a94a6;font-size:12px;font-weight:600;white-space:nowrap}.csv-import-dialog__step.is-active{color:#2155f5}.csv-import-dialog__step.is-complete{color:#16a34a}.csv-import-dialog__step-dot{width:20px;height:20px;border:2px solid #d4d8de;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;color:#8a94a6;font-size:10px;font-weight:700}.csv-import-dialog__step.is-active .csv-import-dialog__step-dot{border-color:#2155f5;background:#2155f5;color:#fff}.csv-import-dialog__step.is-complete .csv-import-dialog__step-dot{border-color:#16a34a;background:#16a34a;color:#fff}.csv-import-dialog__step-line{flex:1 1 auto;min-width:8px;height:1px;margin:0 8px;background:#d4d8de}.csv-import-dialog__step-line.is-complete{background:#16a34a}.csv-import-dialog__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:20px 24px;background:#fff;scrollbar-width:thin;scrollbar-color:#d4d8de transparent}.csv-import-dialog__body::-webkit-scrollbar{width:4px}.csv-import-dialog__body::-webkit-scrollbar-thumb{background:#d4d8de;border-radius:2px}.csv-import-dialog__section{display:flex;flex-direction:column;gap:16px}.csv-import-dialog__footer{flex-shrink:0;padding:14px 24px;border-top:1px solid #f2f4f7;background:#fff;gap:12px}.csv-import-dialog__footer-left,.csv-import-dialog__footer-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.csv-import-dialog__footer-button.fo-action-button{min-height:36px;height:36px;padding:0 16px;font-size:13.5px}.csv-import-dialog__compact-action.fo-action-button{min-height:30px;height:30px;padding:0 12px;font-size:12px}.csv-import-dialog__dropzone{min-height:0;padding:36px 24px;border:2px dashed #d4d8de;border-radius:12px;background:#f8f9fb;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease}.csv-import-dialog__dropzone:hover,.csv-import-dialog__dropzone.is-dragging{border-color:#2155f5;background:#f0f4ff}.csv-import-dialog__dropzone-icon{width:44px;height:44px;margin-bottom:4px;border-radius:8px;background:#e8effe;color:#2155f5;display:inline-flex;align-items:center;justify-content:center}.csv-import-dialog__dropzone-title{color:#0b1220;font-size:15px;font-weight:600}.csv-import-dialog__dropzone-subtitle{color:#8a94a6;font-size:13px}.csv-import-dialog__dropzone-hint{color:#b0b8c4;font-size:12px}.csv-import-dialog__callout{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:8px;font-size:13px;line-height:1.55}.csv-import-dialog__callout--info{color:#1e40af;background:#f0f4ff;border:1px solid #e8effe}.csv-import-dialog__callout--warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.csv-import-dialog__callout--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.csv-import-dialog__callout--error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.csv-import-dialog__callout-icon{flex:0 0 auto;margin-top:2px}.csv-import-dialog__file-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid #d4d8de;border-radius:8px;background:#f8f9fb;font-size:13px}.csv-import-dialog__file-name{min-width:0;display:flex;align-items:center;gap:8px;color:#0b1220;font-weight:500}.csv-import-dialog__file-name svg{flex:0 0 auto;color:#2155f5}.csv-import-dialog__file-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-import-dialog__mode{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #d4d8de;border-radius:8px;background:#f8f9fb}.csv-import-dialog__mode-label{color:#4a5568;font-size:12px;font-weight:600}.csv-import-dialog__mode-select,.csv-import-dialog__mapping-select{height:36px;border:1.5px solid #d4d8de;border-radius:8px;background-color:#fff;color:#0b1220;padding:0 28px 0 10px;font-size:13px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238A94A6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.csv-import-dialog__mode-select:focus,.csv-import-dialog__mapping-select:focus{border-color:#2155f5}.csv-import-dialog__mapping-section{display:flex;flex-direction:column;gap:10px}.csv-import-dialog__mapping-headers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:0 2px;color:#8a94a6;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.csv-import-dialog__mapping-rows{display:flex;flex-direction:column;gap:6px}.csv-import-dialog__mapping-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border:1px solid #d4d8de;border-radius:8px;background:#f8f9fb;transition:border-color .15s ease,background .15s ease}.csv-import-dialog__mapping-row.is-mapped{background:#f0fdf4;border-color:#bbf7d0}.csv-import-dialog__mapping-row.is-required-unmapped{background:#fef2f2;border-color:#fecaca}.csv-import-dialog__field-info{min-width:0;display:flex;flex-direction:column;gap:2px}.csv-import-dialog__field-name{display:flex;align-items:center;gap:5px;color:#0b1220;font-size:13.5px;font-weight:600}.csv-import-dialog__required-badge{flex:0 0 auto;padding:1px 5px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#dc2626;font-size:10px;font-weight:700}.csv-import-dialog__field-hint{overflow:hidden;color:#8a94a6;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.csv-import-dialog__mapping-select{width:100%}.csv-import-dialog__mapping-select.is-mapped{border-color:#16a34a;background-color:#f0fdf4}.csv-import-dialog__mapping-select.is-required-unmapped{border-color:#dc2626}.csv-import-dialog__mapping-summary{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500}.csv-import-dialog__mapping-summary.is-good{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.csv-import-dialog__mapping-summary.needs-work{color:#d97706;background:#fffbeb;border:1px solid #fde68a}.csv-import-dialog__preview{overflow:hidden;border:1px solid #d4d8de;border-radius:12px;background:#fff}.csv-import-dialog__preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #d4d8de;background:#f8f9fb}.csv-import-dialog__preview-header strong{color:#0b1220;font-size:13px;font-weight:600}.csv-import-dialog__preview-header span{color:#8a94a6;font-size:12px}.csv-import-dialog__table-scroll{max-width:100%;overflow-x:auto}.csv-import-dialog__table{width:100%;border-collapse:collapse;font-size:13px}.csv-import-dialog__table th{padding:9px 12px;border-bottom:1px solid #d4d8de;background:#f8f9fb;color:#8a94a6;font-size:11px;font-weight:700;letter-spacing:.4px;text-align:left;text-transform:uppercase;white-space:nowrap}.csv-import-dialog__table td{max-width:140px;padding:9px 12px;border-bottom:1px solid #f2f4f7;color:#4a5568;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-import-dialog__table tr:last-child td{border-bottom:0}.csv-import-dialog__table tbody tr:hover td{background:#f8f9fb}.csv-import-dialog__empty-cell{color:#b0b8c4;font-size:12px;font-style:italic}.csv-import-dialog__empty-preview{margin:0;padding:18px 14px;color:#8a94a6;font-size:13px}.csv-import-dialog__issues-table td:last-child{max-width:280px;white-space:normal}.csv-import-dialog__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.csv-import-dialog__stat{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid #d4d8de;border-radius:12px;background:#f8f9fb}.csv-import-dialog__stat strong{color:#0b1220;font-size:24px;font-weight:800;line-height:1.1}.csv-import-dialog__stat span{color:#8a94a6;font-size:12px;font-weight:500}.csv-import-dialog__stat.is-success{background:#f0fdf4;border-color:#bbf7d0}.csv-import-dialog__stat.is-success strong{color:#16a34a}.csv-import-dialog__stat.is-warning{background:#fffbeb;border-color:#fde68a}.csv-import-dialog__stat.is-warning strong{color:#d97706}.csv-import-dialog__stat.is-error{background:#fef2f2;border-color:#fecaca}.csv-import-dialog__stat.is-error strong{color:#dc2626}.csv-import-dialog__complete{align-items:stretch}.csv-import-dialog__complete-icon{width:48px;height:48px;margin:0 auto -4px;border:2px solid #bbf7d0;border-radius:50%;background:#f0fdf4;color:#16a34a;display:flex;align-items:center;justify-content:center}.csv-import-dialog__complete h3{margin:0;color:#0b1220;font-size:18px;font-weight:700;text-align:center}.csv-import-dialog__complete>p{margin:-12px 0 0;color:#8a94a6;font-size:13.5px;text-align:center}@media (max-width: 480px){.purge-dialog-backdrop.csv-import-dialog-backdrop{padding:16px}.csv-import-dialog{width:100%;max-height:calc(100vh - 32px)}.csv-import-dialog__header{padding:20px 16px 16px}.csv-import-dialog__steps{padding:0 16px}.csv-import-dialog__body{padding:20px 16px}.csv-import-dialog__footer{padding:14px 16px;align-items:stretch}.csv-import-dialog__step{gap:4px;font-size:11px}.csv-import-dialog__step-line{margin:0 4px}.csv-import-dialog__mapping-headers,.csv-import-dialog__mapping-row{grid-template-columns:minmax(0,1fr)}.csv-import-dialog__mapping-headers span:last-child{display:none}.csv-import-dialog__field-hint{white-space:normal;overflow:visible;text-overflow:clip}.csv-import-dialog__mode{align-items:stretch;flex-direction:column}.csv-import-dialog__mode-select{width:100%}.csv-import-dialog__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.csv-import-dialog__preview-header{align-items:flex-start;flex-direction:column;gap:2px}.csv-import-dialog__footer-left,.csv-import-dialog__footer-right{flex:1 1 100%}.csv-import-dialog__footer-right{justify-content:flex-end}.csv-import-dialog__footer-button.fo-action-button{max-width:100%}}:root{--fo-bg-page: #f0f2f7;--fo-bg-page-clean: #f7f7fb;--fo-bg-page-soft: #f7f7fb;--fo-surface: #ffffff;--fo-surface-subtle: #fafbff;--fo-surface-metric: linear-gradient(160deg,#ffffff 0%,#f3f5fd 100%);--fo-sidebar-bg: #1a1f2e;--fo-sidebar-user-bg: rgba(255,255,255,.06);--fo-drawer-backdrop: rgba(15,18,28,.35);--fo-border: #dde1ec;--fo-border-clean: #d8dde8;--fo-border-strong: #c8cedc;--fo-sidebar-border: rgba(255,255,255,.1);--fo-danger-border: #f3b3b3;--fo-warning-border: #f0c36d;--fo-success-border: #b7e0c1;--fo-text: #1a1f2e;--fo-text-clean: #1f2430;--fo-text-muted: #5a6575;--fo-text-sidebar: #e8ecf5;--fo-text-sidebar-muted: #7a859e;--fo-text-sidebar-section: #9aa4bb;--fo-text-danger: #b42318;--fo-text-warning: #6b4e16;--fo-accent: #2155f5;--fo-accent-hover: #1a44d4;--fo-accent-bg: rgba(33,85,245,.1);--fo-sidebar-active-bg: rgba(33,85,245,.2);--fo-soft-blue: #eef2ff;--fo-soft-blue-text: #3d4d73;--fo-accent-text: #2f4acb;--fo-status-draft-bg: #f1f3f5;--fo-status-draft-border: #d8dde8;--fo-status-draft-text: #1f2430;--fo-status-scheduled-bg: #e7f0ff;--fo-status-scheduled-border: #a7c2ff;--fo-status-scheduled-text: #1f3f8f;--fo-status-dispatched-bg: #fff3e6;--fo-status-dispatched-border: #ffd299;--fo-status-dispatched-text: #7a4a12;--fo-status-in-progress-bg: #fff9db;--fo-status-in-progress-border: #ffe066;--fo-status-in-progress-text: #6b4e16;--fo-status-completed-bg: #ebfbee;--fo-status-completed-border: #b2f2bb;--fo-status-completed-text: #1b6b34;--fo-status-incomplete-reported-bg: #fff5f5;--fo-status-incomplete-reported-border: #ffa8a8;--fo-status-incomplete-reported-text: #b42318;--fo-status-needs-more-work-bg: #fff0f6;--fo-status-needs-more-work-border: #faa2c1;--fo-status-needs-more-work-text: #97266d;--fo-status-approved-bg: #e6fcf5;--fo-status-approved-border: #96f2d7;--fo-status-approved-text: #087f5b;--fo-status-cancelled-bg: #fff5f5;--fo-status-cancelled-border: #ffc9c9;--fo-status-cancelled-text: #b42318;--fo-status-unknown-bg: #f8f9fa;--fo-status-unknown-border: #d8dde8;--fo-status-unknown-text: #5a6575;--space-5: 1.25rem;--space-7: 1.75rem;--space-8: 2rem;--radius-xs: .375rem;--radius-sm: .5rem;--radius-lg: .875rem;--radius-xl: 1rem;--radius-drawer: 1rem 0 0 1rem;--radius-pill: 999px;--shadow-none: none;--shadow-card: 0 1px 2px rgba(15, 23, 42, .04);--shadow-popover: 0 12px 32px rgba(15, 23, 42, .14);--shadow-drawer: -16px 0 48px rgba(0,0,0,.18);--shadow-focus: 0 0 0 3px rgba(33,85,245,.2);--motion-drawer-easing: cubic-bezier(.32,.72,0,1);--motion-drawer-open: .3s;--motion-drawer-close: .25s;--motion-backdrop-open: .18s;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-metric: 32px;--z-backdrop: 50;--z-drawer: 55;--z-modal: 60;--z-toast: 70;--fo-shell-sidebar-width: 18rem}.fo-app-viewport-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;min-width:0;height:100vh;min-height:0;overflow:clip;background:var(--fo-bg-page)}@supports (height: 100dvh){.fo-app-viewport-shell{height:100dvh}}.fo-app-viewport-shell-has-mobile-bottom-nav{grid-template-rows:minmax(0,1fr) auto}.fo-sidebar-zone{display:none;min-width:0;min-height:0;overflow:auto;background:var(--fo-surface);-webkit-overflow-scrolling:touch}.fo-main-working-area{min-width:0;min-height:0;overflow:clip}.fo-mobile-bottom-nav-zone{display:block;min-width:0;min-height:0;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--fo-surface)}.fo-mobile-bottom-nav-zone-hidden{display:none}.fo-surface-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;overflow:clip}.fo-surface-header,.fo-surface-content{min-width:0;min-height:0}.fo-surface-content-scroll{overflow:auto;-webkit-overflow-scrolling:touch}.fo-surface-footer{min-width:0;min-height:0}.fo-surface-footer-viewport-edge{padding-bottom:env(safe-area-inset-bottom,0px)}@media (min-width: 1024px){.fo-app-viewport-shell{grid-template-columns:var(--fo-shell-sidebar-width, 18rem) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.fo-app-viewport-shell-has-mobile-bottom-nav{grid-template-rows:minmax(0,1fr)}.fo-sidebar-zone{display:block}.fo-mobile-bottom-nav-zone{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text);font-weight:600;text-decoration:none;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.btn:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.btn-primary{background:var(--fo-accent);border-color:var(--fo-accent);color:#fff}.btn-primary:hover{background:var(--fo-accent-hover);border-color:var(--fo-accent-hover)}.btn-secondary{background:var(--fo-surface-subtle);border-color:var(--fo-border);color:var(--fo-text)}.btn-ghost{background:transparent;border-color:transparent;color:inherit}.btn-danger{border-color:var(--fo-danger-border);color:var(--fo-text-danger);background:var(--fo-status-cancelled-bg)}.btn-sm{min-height:2rem;padding:.35rem var(--space-2);font-size:var(--text-sm)}.btn-icon{width:2.5rem;padding:0}.card-subtle{background:var(--fo-surface-subtle)}.card-metric{background:var(--fo-surface-metric);border-color:var(--fo-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.card-elevated{box-shadow:var(--shadow-card)}.card-danger{border-color:var(--fo-danger-border);background:var(--fo-status-cancelled-bg)}.card-warning{border-color:var(--fo-warning-border);background:#fff8e8}.card-success{border-color:var(--fo-success-border);background:#f3fcf5}.fo-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.fo-page-title{margin:0;color:var(--fo-text);font-size:var(--text-2xl);line-height:1.15}.fo-page-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.fo-content-region{display:grid;gap:var(--space-4)}.fo-filter-bar{display:grid;gap:var(--space-3);padding:var(--space-3);background:var(--fo-surface);border:1px solid var(--fo-border);border-radius:var(--radius-md)}.fo-filter-row{display:flex;align-items:end;gap:var(--space-3);flex-wrap:wrap}.fo-sidebar-dark{background:var(--fo-sidebar-bg);border-color:var(--fo-sidebar-border);color:var(--fo-text-sidebar);box-shadow:var(--shadow-card)}.fo-sidebar-dark .eyebrow,.fo-sidebar-dark .muted{color:var(--fo-text-sidebar-muted)}.fo-sidebar-nav-section{display:grid;gap:var(--space-2)}.fo-sidebar-nav-section .stack{gap:var(--space-1)}.fo-sidebar-user-block{background:var(--fo-sidebar-user-bg);border-color:var(--fo-sidebar-border);color:var(--fo-text-sidebar)}.fo-table{width:100%;border-collapse:collapse;background:var(--fo-surface)}.fo-table-header th{color:var(--fo-text-muted);background:var(--fo-surface-subtle);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.fo-table-row{background:var(--fo-surface)}.fo-table-row-clickable{cursor:pointer}.fo-table-row-clickable:hover{background:var(--fo-surface-subtle)}.fo-table-cell-meta{color:var(--fo-text-muted);font-size:var(--text-sm)}.fo-form-field{display:grid;gap:var(--space-2);align-content:start}.fo-field-label{color:var(--fo-text);font-size:var(--text-sm);font-weight:700;line-height:1.3}.fo-form-field>.error-text{font-size:var(--text-sm);line-height:1.4;min-height:0}.fo-input{width:100%;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text)}.fo-input:focus{outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent)}.fo-numeric-stepper{display:grid;grid-template-columns:2.5rem minmax(4.5rem,1fr) 2.5rem;align-items:stretch;width:min(100%,13rem);min-width:0}.fo-numeric-stepper__button,.fo-numeric-stepper__input{min-height:2.5rem;border:1px solid var(--fo-border);background:var(--fo-surface);color:var(--fo-text)}.fo-numeric-stepper__button{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;padding:0;background:var(--fo-surface-subtle);cursor:pointer}.fo-numeric-stepper__button--decrement{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.fo-numeric-stepper__button--increment{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.fo-numeric-stepper__input{width:100%;min-width:0;padding:var(--space-2) var(--space-3);border-right:0;border-left:0;border-radius:0;text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.fo-numeric-stepper__input::-webkit-inner-spin-button,.fo-numeric-stepper__input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.fo-numeric-stepper__button:hover:not(:disabled){border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.fo-numeric-stepper__button:focus-visible,.fo-numeric-stepper__input:focus-visible{position:relative;z-index:1;outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent)}.fo-numeric-stepper__button:disabled,.fo-numeric-stepper__input:disabled{cursor:not-allowed;opacity:.64}.fo-search-input{position:relative;display:block;width:100%}.fo-search-input__icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--fo-text-muted);font-size:var(--text-md);pointer-events:none;line-height:1}.fo-search-input__control{padding-left:2.25rem}.fo-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-backdrop);background:var(--fo-drawer-backdrop);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;transition:opacity .25s ease}.fo-drawer-backdrop.open{opacity:1}.fo-drawer-backdrop-portal{z-index:var(--z-modal)}.fo-drawer.fo-drawer-portal{z-index:calc(var(--z-modal) + 1)}.fo-drawer{position:fixed;top:0;right:0;bottom:0;z-index:var(--z-drawer);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--fo-surface);border-left:1px solid var(--fo-border-strong);border-radius:var(--radius-drawer);box-shadow:var(--shadow-drawer);transform:translate(100%);transition:transform var(--motion-drawer-close) var(--motion-drawer-easing);outline:none}.fo-drawer-backdrop[data-fo-drawer-stack-nested=true][data-fo-drawer-stack-root-portal=false]{z-index:calc(var(--z-drawer) + var(--fo-drawer-stack-backdrop-offset))}.fo-drawer[data-fo-drawer-stack-nested=true][data-fo-drawer-stack-root-portal=false]{z-index:calc(var(--z-drawer) + var(--fo-drawer-stack-drawer-offset))}.fo-drawer-backdrop[data-fo-drawer-stack-nested=true][data-fo-drawer-stack-root-portal=true]{z-index:calc(var(--z-modal) + var(--fo-drawer-stack-backdrop-offset) + 1)}.fo-drawer[data-fo-drawer-stack-nested=true][data-fo-drawer-stack-root-portal=true]{z-index:calc(var(--z-modal) + var(--fo-drawer-stack-drawer-offset) + 1)}.fo-drawer.open{transform:translate(0);transition-duration:var(--motion-drawer-open)}.fo-drawer-standard{width:min(55vw,calc(100vw - 32px));min-width:min(480px,calc(100vw - 32px))}.fo-drawer-expanded{width:min(900px,calc(100vw - 48px))}.fo-drawer-maximized{width:calc(100vw - var(--fo-shell-sidebar-width, 220px))}.fo-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--fo-border);background:var(--fo-surface)}.fo-drawer-header h2{margin:0;font-size:var(--text-lg);font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--fo-text)}.fo-drawer-body{min-height:0;overflow:auto;padding:var(--space-6);background:var(--fo-bg-page)}.fo-drawer-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--fo-border);background:var(--fo-surface)}.fo-empty{display:grid;place-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);min-height:12rem;text-align:center;background:var(--fo-surface);border:1px solid var(--fo-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.fo-empty-icon{width:2.75rem;height:2.75rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.fo-empty-title{margin:0;color:var(--fo-text);font-size:var(--text-lg);font-weight:700;line-height:1.25}.fo-empty-body{margin:0;max-width:32rem;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.5}.loading-spinner{color:var(--fo-text-muted)}.loading-spinner:before{content:"";display:inline-block;width:.85rem;height:.85rem;margin-right:var(--space-2);border:2px solid var(--fo-border);border-top-color:var(--fo-accent);border-radius:var(--radius-pill);vertical-align:-.12rem;animation:fo-spin .7s linear infinite}@keyframes fo-spin{to{transform:rotate(360deg)}}.status-badge--draft{background:var(--fo-status-draft-bg);border-color:var(--fo-status-draft-border);color:var(--fo-status-draft-text)}.status-badge--scheduled{background:var(--fo-status-scheduled-bg);border-color:var(--fo-status-scheduled-border);color:var(--fo-status-scheduled-text)}.status-badge--dispatched{background:var(--fo-status-dispatched-bg);border-color:var(--fo-status-dispatched-border);color:var(--fo-status-dispatched-text)}.status-badge--in-progress{background:var(--fo-status-in-progress-bg);border-color:var(--fo-status-in-progress-border);color:var(--fo-status-in-progress-text)}.status-badge--completed{background:var(--fo-status-completed-bg);border-color:var(--fo-status-completed-border);color:var(--fo-status-completed-text)}.status-badge--incomplete-reported{background:var(--fo-status-incomplete-reported-bg);border-color:var(--fo-status-incomplete-reported-border);color:var(--fo-status-incomplete-reported-text)}.status-badge--needs-more-work{background:var(--fo-status-needs-more-work-bg);border-color:var(--fo-status-needs-more-work-border);color:var(--fo-status-needs-more-work-text)}.status-badge--approved{background:var(--fo-status-approved-bg);border-color:var(--fo-status-approved-border);color:var(--fo-status-approved-text)}.status-badge--cancelled{background:var(--fo-status-cancelled-bg);border-color:var(--fo-status-cancelled-border);color:var(--fo-status-cancelled-text)}.status-badge--unknown{background:var(--fo-status-unknown-bg);border-color:var(--fo-status-unknown-border);color:var(--fo-status-unknown-text)}@media (max-width: 600px){.fo-drawer-standard,.fo-drawer-expanded{width:100vw}.fo-drawer{border-left:0;border-radius:0}.fo-drawer-header,.fo-drawer-body,.fo-drawer-footer{padding-left:var(--space-4);padding-right:var(--space-4)}}@media (max-width: 1023px){.fo-drawer-maximized{left:0;width:auto;max-width:none;min-width:0}.fo-drawer,.fo-drawer *{box-sizing:border-box}.fo-drawer-standard,.fo-drawer-expanded,.fo-drawer[style]{width:min(calc(100dvw - 16px),42rem)!important;max-width:calc(100dvw - 16px);min-width:0}.fo-drawer{right:max(0px,env(safe-area-inset-right,0px));max-width:calc(100dvw - 16px);max-height:100dvh;overflow-x:hidden;grid-template-rows:auto minmax(0,1fr) auto}.fo-drawer-header,.fo-backoffice-drawer-header{align-items:flex-start;gap:var(--space-3);min-width:0}.fo-drawer-header h2,.fo-backoffice-drawer-title{min-width:0;overflow-wrap:anywhere}.fo-backoffice-drawer-heading{min-width:0;max-width:100%}.fo-backoffice-drawer-header-actions{flex:0 0 auto;align-self:flex-start}.fo-drawer-body,.fo-backoffice-drawer-body{min-width:0;min-height:0;max-width:100%;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-6)}.fo-drawer-footer,.fo-backoffice-drawer-footer{min-width:0;max-width:100%;padding-bottom:var(--space-4)}.fo-drawer-body>*,.fo-backoffice-drawer-body>*,.fo-backoffice-drawer-content,.fo-backoffice-drawer-section,.fo-backoffice-drawer-form-grid,.fo-backoffice-drawer-action-row,.fo-action-footer{min-width:0;max-width:100%}.fo-backoffice-drawer-content,.fo-backoffice-drawer-form-grid{width:100%}.fo-backoffice-drawer-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;border-radius:var(--radius-lg);-webkit-overflow-scrolling:touch}.fo-backoffice-drawer-tabs button{flex:0 0 auto;white-space:nowrap}.fo-backoffice-drawer-action-row,.fo-action-footer{align-items:stretch}.fo-backoffice-drawer-action-row-end,.fo-action-footer-end{justify-content:flex-end}.fo-backoffice-drawer-section-title-row{min-width:0}.fo-drawer .fo-table-wrapper,.fo-drawer .table-wrapper,.fo-drawer .fo-list-table,.fo-drawer table{max-width:100%}.fo-drawer .fo-table-wrapper,.fo-drawer .table-wrapper,.fo-drawer .fo-list-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.fo-admin-bottom-tabs{z-index:calc(var(--z-drawer) + 1)}.fo-drawer .workorder-status-timeline{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));align-items:start!important;width:100%;max-width:100%;min-width:0;gap:0;overflow-x:hidden!important;padding:0 0 10px!important}.fo-drawer .workorder-status-timeline-step{position:relative;display:flex!important;flex:initial!important;min-width:0!important;max-width:none;align-items:center;gap:4px!important;text-align:center}.fo-drawer .workorder-status-timeline-step>div:first-child{width:7px!important;height:7px!important;position:relative;z-index:1}.fo-drawer .workorder-status-timeline-step:not(.workorder-status-timeline-step-last):after{content:"";position:absolute;top:4px;left:calc(50% + 8px);right:calc(-50% + 8px);height:1px;background:var(--fo-border);opacity:.5}.fo-drawer .workorder-status-timeline-step-connector-done:after{background:var(--fo-accent)!important}.fo-drawer .workorder-status-timeline-connector{display:none!important}.fo-drawer .workorder-status-timeline-label{display:block;width:100%;max-width:100%;min-width:0;font-size:0!important;line-height:1!important;letter-spacing:0!important;white-space:nowrap!important;overflow:hidden;text-align:center;text-overflow:clip;word-break:keep-all;overflow-wrap:normal}.fo-drawer .workorder-status-timeline-label:after{content:attr(data-mobile-label);display:block;max-width:100%;font-size:var(--text-2xs);line-height:1.05;letter-spacing:.018em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:clip}.fo-drawer .fo-inventory-item-detail-drawer-content,.fo-drawer .fo-inventory-item-detail-hero,.fo-drawer .fo-inventory-item-detail-hero-grid,.fo-drawer .fo-inventory-item-detail-title,.fo-drawer .fo-inventory-item-detail-barcode{min-width:0;max-width:100%}.fo-drawer .fo-inventory-item-detail-title{overflow-wrap:break-word!important;word-break:normal!important;-webkit-hyphens:manual;hyphens:manual;text-wrap:balance}.fo-drawer .fo-inventory-item-detail-barcode{overflow:hidden}.fo-drawer .fo-employee-inventory-drawer-content{padding-bottom:var(--space-8)}.fo-drawer .fo-employee-inventory-assigned-section{min-height:0;padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px))}.fo-drawer .fo-employee-inventory-list{margin-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px))}.fo-drawer .fo-employee-inventory-list .fo-list-table__row{min-width:0}.fo-drawer .fo-employee-inventory-list .fo-list-table__cell--actions{min-width:0;max-width:100%}.fo-drawer .fo-employee-inventory-adjustment-cell{min-width:0!important;max-width:100%;width:100%}.fo-drawer .fo-employee-inventory-adjustment-controls{display:flex;flex-wrap:wrap;align-items:stretch!important;gap:var(--space-2)!important;min-width:0;max-width:100%}.fo-drawer .fo-employee-inventory-adjustment-input{flex:1 1 5.5rem;min-width:0;max-width:100%}.fo-drawer .fo-employee-inventory-adjustment-save{flex:1 1 5rem;min-width:0;max-width:100%;white-space:nowrap}}@media (max-width: 767px){.fo-drawer-standard,.fo-drawer-expanded,.fo-drawer[style]{width:auto!important;max-width:none;min-width:0}.fo-drawer{top:0;right:0;bottom:0;left:0;width:auto;max-width:none;height:100dvh;border-left:0;border-radius:0}.fo-drawer-header,.fo-drawer-body,.fo-drawer-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.fo-drawer-header,.fo-backoffice-drawer-header{flex-wrap:nowrap}.fo-backoffice-drawer-title{font-size:var(--text-lg);line-height:1.25}.fo-backoffice-drawer-header-actions{gap:6px}.fo-backoffice-drawer-icon-button{min-width:34px;min-height:34px}.fo-backoffice-drawer-section{padding:var(--space-3);border-radius:var(--radius-lg)}.fo-backoffice-drawer-action-row,.fo-action-footer{justify-content:stretch}.fo-drawer .fo-action-button,.fo-drawer .fo-backoffice-drawer-action-row>button,.fo-drawer .fo-backoffice-drawer-action-row>a,.fo-drawer .fo-action-footer>button,.fo-drawer .fo-action-footer>a{width:100%}.fo-drawer .workorder-status-timeline{padding-bottom:9px!important}.fo-drawer .workorder-status-timeline-step{gap:3px!important}.fo-drawer .workorder-status-timeline-step:not(.workorder-status-timeline-step-last):after{left:calc(50% + 7px);right:calc(-50% + 7px)}.fo-drawer .workorder-status-timeline-label:after{font-size:var(--text-2xs);letter-spacing:.008em}.fo-drawer .fo-inventory-item-detail-hero-grid{grid-template-columns:minmax(0,1fr)!important;gap:var(--space-4)!important}.fo-drawer .fo-inventory-item-detail-title{font-size:var(--text-2xl)!important;line-height:1.12!important}.fo-drawer .fo-inventory-item-detail-barcode{justify-self:stretch!important;justify-content:flex-start!important}.fo-drawer .fo-employee-inventory-drawer-content{padding-bottom:var(--space-9)}.fo-drawer .fo-employee-inventory-list{margin-bottom:var(--space-8)}.fo-drawer .fo-employee-inventory-list .fo-list-table__cell--actions{overflow:visible}.fo-drawer .fo-employee-inventory-adjustment-controls{width:100%}.fo-drawer .fo-employee-inventory-adjustment-input,.fo-drawer .fo-employee-inventory-adjustment-save{flex:1 1 100%;width:100%!important}}@media (prefers-reduced-motion: reduce){.fo-drawer,.fo-drawer.open{transition-duration:1ms;transform:translate(0)}.fo-drawer-backdrop{transition-duration:1ms}.loading-spinner:before{animation:none}}.dashboard-page{max-width:98rem;gap:20px}.dashboard-page-hero{display:grid;gap:10px;padding-top:0}.dashboard-page-header{display:block}.dashboard-page-subtitle{margin:0;max-width:42rem;font-size:var(--text-md);line-height:1.45}.dashboard-page .fo-page-title{margin:4px 0;font-size:var(--text-2xl);line-height:1.15;font-weight:700;letter-spacing:-.022em}.dashboard-page .fo-page-eyebrow{color:#5a6575;font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em}.dashboard-scope-control-row{display:inline-flex;width:fit-content;max-width:min(100%,40rem);align-items:center;justify-content:flex-start;gap:8px;padding:5px 6px 5px 10px;background:#ffffffa3;border:1px solid #d8dee9;border-radius:999px;box-shadow:none}.dashboard-scope-control-row>span{max-width:31rem;overflow:hidden;color:#6b7688;text-overflow:ellipsis;white-space:nowrap}.dashboard-scope-control-row .btn-sm{min-height:1.55rem;padding:.12rem .55rem;border-radius:999px;font-size:var(--text-xs);font-weight:600}.dashboard-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-metrics-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-metric-card{display:grid;min-height:8.65rem;gap:10px;padding:18px;border:1px solid #d8dee9;border-radius:14px;background:linear-gradient(155deg,#fff,#f6f8fd);box-shadow:none;color:var(--fo-text);text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.dashboard-metric-card:hover{border-color:#c7cfde;box-shadow:0 10px 24px #0f172a0f;transform:translateY(-1px)}.dashboard-metric-card:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.dashboard-metric-card>.muted.small{font-size:var(--text-xs)}.dashboard-metric-icon{width:32px;height:32px;display:grid;place-items:center;justify-self:end;grid-row:1;grid-column:1;border-radius:8px}.dashboard-metric-icon--blue{background:#e8efff;color:#2f57df}.dashboard-metric-icon--amber{background:#fff3e1;color:#d97706}.dashboard-metric-icon--red{background:#ffe8ec;color:#dc2626}.dashboard-metric-icon--purple{background:#f0e8ff;color:#7c3aed}.dashboard-metric-title{grid-row:1;grid-column:1;align-self:start;padding-right:42px;color:#5a6575;font-size:var(--text-sm);font-weight:500}.dashboard-metric-value{color:var(--fo-text);font-size:var(--text-metric);line-height:1;font-weight:700;letter-spacing:-.035em}.dashboard-content-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(20rem,1fr);gap:16px;align-items:start}.dashboard-content-grid--single{grid-template-columns:minmax(0,1fr)}.dashboard-panel-card,.attention-section{border:1px solid #d8dee9;border-radius:12px;background:#fff;box-shadow:none}.dashboard-panel-card{gap:14px;padding:18px}.dashboard-section-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.dashboard-section-title{margin:4px 0 0;color:var(--fo-text);font-size:var(--text-base);line-height:1.25;font-weight:600;letter-spacing:-.01em}.dashboard-view-all-link{min-height:auto;padding:0;border:0;background:transparent;color:var(--fo-accent);font-size:var(--text-xs);font-weight:600;cursor:pointer}.dashboard-list-row{width:100%;display:grid;gap:6px;padding:10px 12px;border:1px solid #d8dee9;border-radius:10px;background:#f7f8fc;color:var(--fo-text);text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.dashboard-list-row:hover{background:#fff;border-color:#cbd3e2}.dashboard-list-row:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.dashboard-list-row-main{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.dashboard-list-row-main strong{min-width:0;font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-row-title-wrap{display:inline-flex;align-items:center;gap:7px;min-width:0}.dashboard-row-title-wrap svg{flex:0 0 auto;color:var(--fo-accent)}.dashboard-row-time{flex:0 0 auto;margin-left:auto;color:#6b7688;font-size:var(--text-xs);white-space:nowrap}.dashboard-pill-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.dashboard-schedule-row .dashboard-pill-row{padding-left:20px}.dashboard-soft-pill,.status-badge{font-size:var(--text-2xs)}.dashboard-soft-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#2155f512;color:var(--fo-accent);font-weight:500}.dashboard-schedule-row .dashboard-soft-pill+.dashboard-soft-pill,.dashboard-attention-row .dashboard-soft-pill{background:#f7f8fc;border:1px solid #d8dee9;color:#6b7688}.needs-attention-grid{gap:12px;align-content:start}.needs-attention-heading{gap:0}.attention-section{display:grid;gap:8px;padding:14px}.attention-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.attention-section-title-row{display:inline-flex;align-items:center;gap:7px;min-width:0}.attention-section-title-row h3{margin:0;font-size:var(--text-sm);line-height:1.2;font-weight:600;letter-spacing:0}.attention-section-icon{width:14px;height:14px;display:inline-grid;place-items:center;flex:0 0 auto}.attention-section-icon--green{color:#16a34a}.attention-section-icon--amber{color:#d97706}.attention-section-icon--red{color:#dc2626}.attention-section-count{color:#6b7688;font-size:var(--text-xs);line-height:1}.dashboard-attention-row{padding:7px 10px;border-radius:8px;font-size:var(--text-sm)}.dashboard-attention-row .dashboard-list-row-main strong{font-size:var(--text-sm)}.dashboard-attention-row .dashboard-pill-row{gap:5px}.attention-empty-text,.dashboard-empty-text{margin:0;color:#6b7688;font-size:var(--text-xs);font-style:italic}@media (max-width: 1200px){.dashboard-metrics-grid,.dashboard-metrics-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-content-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.dashboard-page{gap:16px}.dashboard-metrics-grid,.dashboard-metrics-grid--compact{grid-template-columns:minmax(0,1fr)}.dashboard-scope-control-row{width:100%;justify-content:space-between}.dashboard-list-row-main{flex-wrap:wrap}.dashboard-row-time{margin-left:20px}}:root{--fo-shell-bg: var(--fo-bg-page);--fo-shell-sidebar-width: 220px;--fo-shell-sidebar-bg: var(--fo-sidebar-bg);--fo-shell-sidebar-text: var(--fo-text-sidebar);--fo-shell-sidebar-muted: var(--fo-text-sidebar-muted);--fo-shell-sidebar-section: #4a5468;--fo-shell-sidebar-active-bg: var(--fo-sidebar-active-bg);--fo-shell-sidebar-active-border: rgba(33, 85, 245, .3);--fo-shell-sidebar-user-bg: var(--fo-sidebar-user-bg);--fo-shell-sidebar-user-border: var(--fo-sidebar-border)}.admin-layout{display:grid;grid-template-columns:var(--fo-shell-sidebar-width) minmax(0,1fr);gap:0;min-height:100vh;padding:0;background:var(--fo-shell-bg)}.admin-sidebar.fo-sidebar-dark{position:sticky;top:0;width:var(--fo-shell-sidebar-width);height:100vh;display:flex;flex-direction:column;gap:6px;flex-shrink:0;padding:20px 12px;overflow:hidden;border:0;border-right:none;border-radius:0;background:var(--fo-shell-sidebar-bg);color:var(--fo-shell-sidebar-text);box-shadow:none}.admin-sidebar-header-row{align-items:center;justify-content:space-between;gap:8px;padding:0 8px 16px;border-bottom:1px solid rgba(74,84,104,.3)}.fo-sidebar-brand-mark svg{width:14px;height:14px}.fo-sidebar-brand strong{color:var(--fo-shell-sidebar-text);font-size:var(--text-sm);font-weight:700;line-height:1.2}.fo-sidebar-brand span span{color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);letter-spacing:.04em;line-height:1.25}.fo-sidebar-nav-section .sidebar-section-title,.fo-sidebar-nav-section .fo-sidebar-nav-section-title{margin:0 0 4px 8px;color:var(--fo-shell-sidebar-section);font-size:var(--text-2xs);font-weight:700;line-height:1.3;letter-spacing:.1em;text-transform:uppercase}.fo-sidebar-nav-item{display:flex;align-items:center;gap:9px;width:100%;min-height:0;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--fo-shell-sidebar-text);font-size:var(--text-sm);font-weight:400;line-height:1.3;opacity:.8;transition:background .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease}.fo-sidebar-nav-item svg{width:15px;height:15px;flex:0 0 15px;color:var(--fo-shell-sidebar-muted);stroke-width:1.75}.fo-sidebar-nav-item:hover{background:#ffffff0b;color:#fff;opacity:1}.fo-sidebar-nav-item:hover svg{color:#fff}.fo-sidebar-nav-item-active,.fo-sidebar-nav-item.active{background:#2155f533;border-color:#2155f530;color:#fff;font-weight:600;opacity:1}.fo-sidebar-nav-item-active svg,.fo-sidebar-nav-item.active svg{color:#fff}.fo-sidebar-user-block{width:100%;margin-top:0;display:grid;gap:6px;padding:10px 12px;border-radius:8px;background:var(--fo-shell-sidebar-user-bg);border-color:var(--fo-shell-sidebar-user-border);color:var(--fo-shell-sidebar-text);box-shadow:none}.fo-sidebar-user-avatar{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;border-radius:999px;background:var(--fo-accent);color:#fff;font-size:var(--text-2xs);font-weight:700}.fo-sidebar-user-copy strong{color:var(--fo-shell-sidebar-text);font-size:var(--text-xs);font-weight:600;line-height:1.25}.fo-sidebar-user-copy span,.fo-sidebar-user-copy .muted{color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);line-height:1.25}.fo-sidebar-signout-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:0;padding:5px;border-radius:6px;border:1px solid var(--fo-shell-sidebar-user-border);background:transparent;color:var(--fo-shell-sidebar-muted);font-size:var(--text-xs)}.fo-sidebar-signout-button svg{width:13px;height:13px;color:var(--fo-shell-sidebar-muted)}.fo-sidebar-signout-button:hover{color:#fff;border-color:#ffffff2e;background:#ffffff0a}.fo-sidebar-signout-button:hover svg{color:#fff}.admin-main.shell{max-width:none;width:100%;margin:0;padding:24px}@media (max-width: 1023px){.admin-layout{grid-template-columns:1fr;padding:0}.admin-main.shell{padding:var(--space-3)}.admin-sidebar.fo-sidebar-dark{position:fixed;top:0;left:0;width:min(var(--fo-shell-sidebar-width),calc(100vw - 2rem));max-width:22rem;height:100vh;border-radius:0;transform:translate(-110%);transition:transform .2s ease;overflow-y:auto}.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}}:root{--fo-shell-bg: var(--fo-bg-page);--fo-shell-sidebar-width: 220px;--fo-shell-sidebar-x-padding: 12px;--fo-shell-sidebar-outer-width: calc(var(--fo-shell-sidebar-width) + (var(--fo-shell-sidebar-x-padding) * 2));--fo-shell-sidebar-bg: var(--fo-sidebar-bg);--fo-shell-sidebar-text: var(--fo-text-sidebar);--fo-shell-sidebar-muted: var(--fo-text-sidebar-muted);--fo-shell-sidebar-section: #4a5468;--fo-shell-sidebar-active-bg: var(--fo-sidebar-active-bg);--fo-shell-sidebar-active-border: rgba(33, 85, 245, .3);--fo-shell-sidebar-user-bg: var(--fo-sidebar-user-bg);--fo-shell-sidebar-user-border: var(--fo-sidebar-border)}.admin-layout{display:grid;grid-template-columns:var(--fo-shell-sidebar-outer-width) minmax(0,1fr);min-height:100vh;padding:0;gap:0;background:var(--fo-shell-bg)}.admin-sidebar.fo-sidebar-dark{position:sticky;top:0;width:var(--fo-shell-sidebar-outer-width);min-width:var(--fo-shell-sidebar-outer-width);max-width:var(--fo-shell-sidebar-outer-width);height:100vh;display:flex;flex-direction:column;gap:6px;flex-shrink:0;box-sizing:border-box;padding:20px var(--fo-shell-sidebar-x-padding);overflow:hidden;border:0;border-radius:0;background:var(--fo-shell-sidebar-bg);color:var(--fo-shell-sidebar-text);box-shadow:none}.admin-main.shell{min-width:0;max-width:none;width:100%;margin:0;padding:28px 32px;overflow:visible}@media (max-width: 1023px){.admin-layout{display:block;padding:0}.admin-main.shell{width:100%;padding:var(--space-3);overflow:visible}.admin-sidebar.fo-sidebar-dark{position:fixed;top:0;left:0;z-index:35;width:min(var(--fo-shell-sidebar-outer-width),calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);height:100vh;border-radius:0;transform:translate(-110%);transition:transform .2s ease;overflow-y:auto}.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}}:root{--fo-shell-bg: var(--fo-bg-page);--fo-shell-sidebar-width: 220px;--fo-shell-sidebar-x-padding: 12px;--fo-shell-sidebar-rendered-width: 220px;--fo-shell-sidebar-bg: var(--fo-sidebar-bg);--fo-shell-sidebar-text: var(--fo-text-sidebar);--fo-shell-sidebar-muted: var(--fo-text-sidebar-muted);--fo-shell-sidebar-section: #4a5468;--fo-shell-sidebar-active-bg: var(--fo-sidebar-active-bg);--fo-shell-sidebar-active-border: rgba(33, 85, 245, .3);--fo-shell-sidebar-user-bg: var(--fo-sidebar-user-bg);--fo-shell-sidebar-user-border: var(--fo-sidebar-border)}.admin-layout{display:flex;align-items:stretch;min-height:100vh;padding:0;gap:0;background:var(--fo-shell-bg)}.admin-sidebar.fo-sidebar-dark{position:sticky;top:0;width:var(--fo-shell-sidebar-rendered-width);min-width:var(--fo-shell-sidebar-rendered-width);max-width:var(--fo-shell-sidebar-rendered-width);flex:0 0 var(--fo-shell-sidebar-rendered-width);height:100vh;display:flex;flex-direction:column;gap:6px;box-sizing:border-box;padding:20px var(--fo-shell-sidebar-x-padding);overflow:hidden;border:0;border-radius:0;background:var(--fo-shell-sidebar-bg);color:var(--fo-shell-sidebar-text);box-shadow:none}.admin-sidebar-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px 16px;border-bottom:1px solid rgba(74,84,104,.3)}.fo-sidebar-brand{display:flex;align-items:center;gap:8px;min-width:0}.fo-sidebar-brand-mark{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;border-radius:7px;background:var(--fo-accent);color:#fff}.fo-sidebar-brand-mark svg{width:14px;height:14px;stroke-width:1.75}.fo-sidebar-brand>span:last-child{display:grid;gap:0;min-width:0}.fo-sidebar-brand strong{margin:0;color:var(--fo-shell-sidebar-text);font-size:var(--text-sm);font-weight:700;line-height:1.2}.fo-sidebar-brand span span{margin:0;color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);font-weight:400;letter-spacing:.04em}.fo-sidebar-nav-section{display:block}.fo-sidebar-nav-section .stack{display:grid;gap:1px}.fo-sidebar-nav-section .sidebar-section-title,.fo-sidebar-nav-section .fo-sidebar-nav-section-title{margin:0 0 4px 8px;color:var(--fo-shell-sidebar-section);font-size:var(--text-2xs);font-weight:700;line-height:normal;letter-spacing:.1em;text-transform:uppercase}.fo-sidebar-nav-item,.sidebar-link.fo-sidebar-nav-item{display:flex;align-items:center;gap:9px;width:100%;min-height:0;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--fo-shell-sidebar-text);font-size:var(--text-sm);font-weight:400;line-height:normal;opacity:.8;text-align:left;text-decoration:none;transition:all .12s ease}.fo-sidebar-nav-item svg,.sidebar-link.fo-sidebar-nav-item svg{width:15px;height:15px;flex:0 0 15px;color:var(--fo-shell-sidebar-muted);stroke-width:1.75}.fo-sidebar-nav-item:hover,.sidebar-link.fo-sidebar-nav-item:hover{background:#ffffff0b;color:#fff;opacity:1}.fo-sidebar-nav-item:hover svg,.sidebar-link.fo-sidebar-nav-item:hover svg{color:#fff}.fo-sidebar-nav-item-active,.fo-sidebar-nav-item.active,.sidebar-link.fo-sidebar-nav-item.active{background:#2155f533;border-color:#2155f530;color:#fff;font-weight:600;opacity:1}.fo-sidebar-nav-item-active svg,.fo-sidebar-nav-item.active svg,.sidebar-link.fo-sidebar-nav-item.active svg{color:#fff}.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{width:100%;margin-top:0;display:grid;gap:6px;padding:10px 12px;border:1px solid var(--fo-shell-sidebar-user-border);border-radius:8px;background:var(--fo-shell-sidebar-user-bg);color:var(--fo-shell-sidebar-text);box-shadow:none}.fo-sidebar-user-row{display:flex;align-items:center;gap:8px;min-width:0}.fo-sidebar-user-avatar{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;border-radius:999px;background:var(--fo-accent);color:#fff;font-size:var(--text-2xs);font-weight:700;line-height:1}.fo-sidebar-user-copy{display:grid;gap:0;min-width:0}.fo-sidebar-user-copy strong{margin:0;color:var(--fo-shell-sidebar-text);font-size:var(--text-xs);font-weight:600;line-height:normal}.fo-sidebar-user-copy span,.fo-sidebar-user-copy .muted{margin:0;color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);font-weight:400;line-height:normal}.fo-sidebar-user-copy strong,.fo-sidebar-user-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fo-sidebar-signout-button,.btn.fo-sidebar-signout-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:0;padding:5px;border:1px solid var(--fo-shell-sidebar-user-border);border-radius:6px;background:transparent;color:var(--fo-shell-sidebar-muted);font-size:var(--text-xs);font-weight:400;line-height:normal}.fo-sidebar-signout-button svg,.btn.fo-sidebar-signout-button svg{width:13px;height:13px;color:var(--fo-shell-sidebar-muted);stroke-width:1.75}.fo-sidebar-signout-button:hover,.btn.fo-sidebar-signout-button:hover{color:#fff;border-color:#ffffff2e;background:#ffffff0a}.fo-sidebar-signout-button:hover svg,.btn.fo-sidebar-signout-button:hover svg{color:#fff}.fo-sidebar-build-panel{display:grid;gap:6px;margin-top:8px}.fo-sidebar-update-button{width:100%;min-height:0;padding:5px 8px;border-radius:6px;border:1px solid rgba(33,85,245,.45);background:#2155f52e;color:#fff;font-size:var(--text-2xs);font-weight:600}.fo-sidebar-update-button:hover{border-color:#ffffff47;background:#2155f542}.fo-sidebar-build-label{margin:0;color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);line-height:1.25;text-align:center;letter-spacing:.01em}.admin-main.shell{flex:1 1 auto;min-width:0;max-width:none;width:auto;margin:0;padding:28px 32px;overflow:visible}@media (max-width: 1023px){.admin-layout{display:block;padding:0}.admin-main.shell{width:100%;padding:var(--space-3);overflow:visible}.admin-sidebar.fo-sidebar-dark{position:fixed;top:0;left:0;z-index:35;width:min(var(--fo-shell-sidebar-rendered-width),calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);height:100vh;flex-basis:auto;border-radius:0;transform:translate(-110%);transition:transform .2s ease;overflow-y:auto}.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}}:root{--fo-shell-sidebar-width: 220px;--fo-shell-sidebar-x-padding: 14px;--fo-shell-sidebar-rendered-width: 220px}.admin-sidebar.fo-sidebar-dark{width:var(--fo-shell-sidebar-rendered-width);min-width:var(--fo-shell-sidebar-rendered-width);max-width:var(--fo-shell-sidebar-rendered-width);flex-basis:var(--fo-shell-sidebar-rendered-width);gap:5px;padding:20px var(--fo-shell-sidebar-x-padding)}.admin-sidebar-header-row{padding:0 8px 14px}.fo-sidebar-brand strong{font-size:var(--text-md);line-height:1.18}.fo-sidebar-brand span span{font-size:var(--text-2xs);line-height:1.2}.fo-sidebar-nav-section .sidebar-section-title,.fo-sidebar-nav-section .fo-sidebar-nav-section-title{margin:0 0 3px 8px;font-size:var(--text-2xs);line-height:1.2}.fo-sidebar-nav-section .stack{gap:0}.fo-sidebar-nav-item,.sidebar-link.fo-sidebar-nav-item{gap:10px;padding:7px 10px;border-radius:7px;font-size:var(--text-md);line-height:1.22}.fo-sidebar-nav-item svg,.sidebar-link.fo-sidebar-nav-item svg{width:16px;height:16px;flex-basis:16px}.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{gap:5px;padding:9px 11px}.fo-sidebar-user-copy strong{font-size:var(--text-sm)}.fo-sidebar-user-copy span,.fo-sidebar-user-copy .muted{font-size:var(--text-2xs)}.fo-sidebar-signout-button,.btn.fo-sidebar-signout-button{padding:5px;font-size:var(--text-xs)}.admin-main.shell{padding:26px 30px}.dashboard-page{gap:18px}.dashboard-page-hero{gap:8px}.dashboard-page .fo-page-title{margin:3px 0;font-size:var(--text-2xl);line-height:1.12}.dashboard-page .fo-page-eyebrow{font-size:var(--text-2xs)}.dashboard-page-subtitle{font-size:var(--text-base);line-height:1.4}.dashboard-scope-control-row{gap:7px;padding:4px 6px 4px 10px}.dashboard-scope-control-row>span{font-size:var(--text-md)}.dashboard-scope-control-row .btn-sm{font-size:var(--text-xs)}.dashboard-metrics-grid{gap:12px}.dashboard-metric-card{min-height:8.15rem;gap:8px;padding:16px}.dashboard-metric-title{font-size:var(--text-md)}.dashboard-metric-value{font-size:var(--text-metric)}.dashboard-metric-card>.muted.small{font-size:var(--text-sm)}.dashboard-content-grid{gap:14px}.dashboard-panel-card{gap:12px;padding:16px}.dashboard-section-heading-row{gap:10px}.dashboard-section-title{margin-top:3px;font-size:var(--text-lg)}.dashboard-view-all-link{font-size:var(--text-md)}.dashboard-list-row{gap:5px;padding:9px 11px}.dashboard-list-row-main{gap:7px}.dashboard-list-row-main strong{font-size:var(--text-md)}.dashboard-row-time{font-size:var(--text-sm)}.dashboard-pill-row{gap:5px}.dashboard-soft-pill,.status-badge{font-size:var(--text-xs)}.dashboard-soft-pill{padding:2px 8px}.needs-attention-grid{gap:10px}.attention-section{gap:7px;padding:13px}.attention-section-title-row h3{font-size:var(--text-lg)}.attention-section-icon{width:15px;height:15px}.attention-section-count,.attention-empty-text,.dashboard-empty-text{font-size:var(--text-sm)}.dashboard-attention-row{padding:7px 10px;font-size:var(--text-md)}.dashboard-attention-row .dashboard-list-row-main strong{font-size:var(--text-md)}.stack-tight,.stack.tight,div.stack.stack.tight{gap:0}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column}.fo-sidebar-nav-item,.fo-sidebar-nav-item span,.sidebar-link.fo-sidebar-nav-item,.sidebar-link.fo-sidebar-nav-item span,.fo-sidebar-dark .fo-sidebar-nav-item,.fo-sidebar-dark .fo-sidebar-nav-item span{font-size:var(--text-sm)}.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{margin-top:0;min-height:0}@media (max-width: 1023px){.admin-sidebar.fo-sidebar-dark{width:min(var(--fo-shell-sidebar-rendered-width),calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);flex-basis:auto}.admin-main.shell{padding:var(--space-3)}}@media (max-width: 720px){.dashboard-page{gap:15px}.dashboard-page .fo-page-title{font-size:var(--text-2xl)}.dashboard-metric-card{min-height:0}}.workorders-vantis-page{max-width:98rem;gap:18px}.workorders-page-hero,.workorders-table-card,.workorders-main-card,.workorders-side-card,.workorders-form-card,.workorders-section-card{border:1px solid #d8dee9;border-radius:14px;background:#fff;box-shadow:none}.workorders-page-hero{gap:14px;padding:18px}.workorders-page-header{align-items:flex-start}.workorders-eyebrow{color:#5a6575;font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em}.workorders-page-title{margin:3px 0 2px;color:var(--fo-text);font-size:var(--text-2xl);line-height:1.15;font-weight:700;letter-spacing:-.022em}.workorders-page-subtitle{margin:0;max-width:44rem;color:#5a6575;font-size:var(--text-md);line-height:1.45}.workorders-scope-pill{display:inline-flex;width:fit-content;max-width:min(100%,40rem);margin:2px 0 0;padding:4px 10px;border:1px solid #d8dee9;border-radius:999px;background:#2155f512;color:var(--fo-accent);font-size:var(--text-xs);font-weight:600}.workorders-action-row{align-items:center;justify-content:flex-end;gap:8px}.workorders-filter-panel{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:12px;padding:14px;border:1px solid #d8dee9;border-radius:12px;background:#f7f8fc}.workorders-filter-panel label>span,.workorders-form-card label>span,.workorders-inline-form label>span{color:var(--fo-text);font-size:var(--text-xs);font-weight:700;letter-spacing:.02em}.workorders-filter-panel input,.workorders-filter-panel select,.workorders-filter-panel textarea,.workorders-form-card input,.workorders-form-card select,.workorders-form-card textarea,.workorders-inline-form input,.workorders-inline-form select,.workorders-inline-form textarea{width:100%;min-height:2.45rem;border-color:#d8dee9;border-radius:10px;background:#fff;color:var(--fo-text);font-size:var(--text-md)}.workorders-table-card{overflow:hidden;padding:0}.workorders-table-card .table-wrapper{border:0;border-radius:14px;background:#fff}.workorders-table-card .data-table{min-width:56rem}.workorders-table-card .data-table caption{padding:13px 16px 11px;color:var(--fo-text);font-size:var(--text-md);font-weight:700;background:#fff}.workorders-table-card .fo-table-header th{padding:10px 14px;border-color:#d8dee9;background:#f7f8fc;color:#6b7688;font-size:var(--text-2xs)}.workorders-table-card .fo-table-row td{padding:11px 14px;border-color:#e6eaf2;color:var(--fo-text);font-size:var(--text-md);vertical-align:middle}.workorders-table-card .fo-table-row:hover td{background:#fafbff}.workorders-table-link{width:100%;min-height:auto;padding:0;border:0;border-radius:0;background:transparent;color:inherit;text-align:left;font-size:inherit}.workorders-table-link:hover{color:var(--fo-accent)}.workorder-detail-grid{grid-template-columns:minmax(17rem,22rem) minmax(0,1.45fr) minmax(17rem,22rem);gap:16px}.workorders-main-card,.workorders-side-card,.workorders-form-card,.workorders-section-card{gap:14px;padding:16px}.workorders-card-title{margin:0;color:var(--fo-text);font-size:var(--text-base);line-height:1.25;font-weight:700;letter-spacing:-.01em}.workorders-meta-row{gap:8px;color:#5a6575;font-size:var(--text-sm)}.workorders-side-card,.workorders-section-card,.workorders-form-card{color:var(--fo-text);font-size:var(--text-md)}.workorders-side-card a,.workorders-main-card a{color:var(--fo-accent);font-weight:600}.workorders-side-card .card,.workorders-section-card .card,.workorders-form-card .card,.workorders-inline-form{border-color:#d8dee9;border-radius:12px;background:#f7f8fc}.workorders-timeline-card{padding:12px;border-radius:12px}.workorders-timeline-card>strong,.workorders-section-card>strong,.workorders-selector-panel>strong,.workorders-context-panel>strong{font-size:var(--text-sm);color:var(--fo-text)}.workorders-vantis-page .timeline-row{gap:12px;padding:8px 0;border-color:#e6eaf2;color:var(--fo-text);font-size:var(--text-sm)}.workorders-vantis-page .timeline-row span:last-child{color:#6b7688;font-weight:500}.workorders-prepared-by{margin:0;padding:0 2px;color:#6b7688}.workorder-form-page .workorder-form-grid{gap:16px;align-items:start}.workorders-form-card{align-content:start}.workorders-selector-panel,.workorders-context-panel{padding:12px}.workorders-selector-panel .selector-option{width:100%;justify-content:flex-start;padding:9px 10px;border-color:#d8dee9;border-radius:10px;background:#fff;color:var(--fo-text);text-align:left;font-size:var(--text-sm)}.workorders-selector-panel .selector-option:hover,.workorders-selector-panel .selector-option.active{border-color:#c7cfde;background:#2155f512;color:var(--fo-accent)}.workorder-draft-review-page{max-width:98rem}.workorder-draft-review-page .fo-backoffice-page-header{padding:18px;border:1px solid #d8dee9;border-radius:14px;background:#fff}.workorder-draft-review-page .fo-backoffice-page-title{font-size:var(--text-2xl);letter-spacing:-.022em}.workorders-section-description{margin:2px 0 0;max-width:42rem;font-size:var(--text-sm);line-height:1.45}.workorders-customer-search-slot{flex:0 1 340px;min-width:min(100%,260px)}.workorders-customer-search-slot .fo-search-input{width:100%}.workorders-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workorder-draft-review-page .fo-static-action-slot,.workorder-dispatch-review-page .fo-static-action-slot,.workorder-post-create-review-page .fo-static-action-slot{position:sticky;bottom:12px;z-index:5;padding-top:8px;background:linear-gradient(to bottom,rgba(248,250,252,0),var(--fo-bg-page) 35%)}.workorder-draft-review-page .fo-state-section{box-shadow:none}.workorders-form-actions{position:sticky;bottom:12px;z-index:5;justify-content:flex-end;padding:12px;border:1px solid #d8dee9;border-radius:14px;background:#ffffffeb;box-shadow:0 10px 24px #0f172a0f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.workorders-section-heading-row{gap:10px}@media (max-width: 1180px){.workorders-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1279px){.workorder-detail-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.workorders-vantis-page{gap:14px}.workorders-page-hero,.workorders-main-card,.workorders-side-card,.workorders-form-card,.workorders-section-card{padding:14px;border-radius:12px}.workorders-page-title{font-size:var(--text-xl)}.workorders-review-grid{grid-template-columns:minmax(0,1fr)}.workorders-customer-search-slot{flex-basis:100%}.workorders-action-row,.workorders-form-actions{justify-content:stretch}.workorders-action-row>*,.workorders-form-actions>*{flex:1 1 100%}.workorders-filter-panel{grid-template-columns:minmax(0,1fr)}.workorders-table-card{padding:0;border:0;background:transparent}.workorders-table-card .data-table{min-width:0}.workorders-table-card .data-table tr{border-color:#d8dee9;border-radius:12px;box-shadow:none}.workorders-form-actions{position:static;-webkit-backdrop-filter:none;backdrop-filter:none}}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{position:sticky;top:0;height:100vh;max-height:100vh;align-self:start;overflow:hidden;display:flex;flex-direction:column}.attention-section-header{padding-bottom:4px}.attention-section-list.stack.stack-tight{gap:2px}.admin-layout{padding-left:var(--fo-shell-sidebar-rendered-width)}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{position:fixed;top:0;left:0;width:var(--fo-shell-sidebar-rendered-width);min-width:var(--fo-shell-sidebar-rendered-width);max-width:var(--fo-shell-sidebar-rendered-width);height:100vh;max-height:100vh;overflow:hidden;display:flex;flex-direction:column;z-index:40}.fo-sidebar-nav-scroll{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:14px;padding-top:7px}.fo-sidebar-footer{flex-shrink:0;padding-top:12px;border-top:1px solid rgba(74,84,104,.4)}@media (max-width: 900px){.admin-layout{padding-left:0}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{position:fixed;transform:translate(-100%)}.admin-sidebar.open,.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}}.admin-layout{grid-template-columns:minmax(0,1fr);padding-left:var(--fo-shell-sidebar-rendered-width)}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{position:fixed;top:0;left:0;width:var(--fo-shell-sidebar-rendered-width);min-width:var(--fo-shell-sidebar-rendered-width);max-width:var(--fo-shell-sidebar-rendered-width);height:100vh;max-height:100vh;min-height:0;overflow:hidden;display:flex;flex-direction:column;z-index:40}.fo-sidebar-nav-scroll{flex:1 1 auto;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:14px;padding-top:7px}.fo-sidebar-footer{display:block;visibility:visible;opacity:1;position:relative;flex:0 0 auto;flex-shrink:0;height:auto;min-height:0;max-height:none;margin-top:0;overflow:visible;padding-top:12px;border-top:1px solid rgba(74,84,104,.4)}.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{display:grid;visibility:visible;opacity:1;position:relative;height:auto;min-height:0;max-height:none;margin-top:0;overflow:visible}.fo-sidebar-signout-button,.btn.fo-sidebar-signout-button{display:flex;visibility:visible;opacity:1;height:auto;min-height:0;max-height:none;overflow:visible}@media (max-width: 900px){.admin-layout{grid-template-columns:1fr;padding-left:0}.admin-sidebar,.admin-sidebar.fo-sidebar-dark{height:100vh;max-height:100vh;transform:translate(-100%)}.admin-sidebar.open,.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}}.fo-sidebar-logo-image{display:block;width:168px;max-width:100%;height:auto;object-fit:contain;background:transparent!important;background-color:transparent!important;background-image:none!important;border:0;border-radius:0;box-shadow:none!important}.fo-loading-bar{position:fixed;top:0;left:0;right:0;height:2px;background:var(--fo-accent);z-index:var(--z-toast, 9000);transform-origin:left center;animation:fo-loading-bar-sweep 1.8s ease-in-out infinite;pointer-events:none}@keyframes fo-loading-bar-sweep{0%{transform:scaleX(0);opacity:1}60%{transform:scaleX(.7);opacity:1}85%{transform:scaleX(.9);opacity:1}to{transform:scaleX(1);opacity:0}}@media (prefers-reduced-motion: reduce){.fo-loading-bar{animation:none;opacity:0}}.fo-pwa-titlebar{position:fixed;top:0;left:0;right:0;height:env(titlebar-area-height,0px);background:#1a1f2e;-webkit-app-region:drag;app-region:drag;display:flex;align-items:center;padding-left:env(titlebar-area-x,0px);z-index:calc(var(--z-drawer, 400) + 100);overflow:hidden}.fo-pwa-titlebar-offset{height:env(titlebar-area-height,0px);flex-shrink:0}.fo-sidebar-brand-button{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:block;min-width:0;border:0;border-radius:0;background:transparent!important;background-color:transparent!important;background-image:none!important;box-shadow:none!important;color:inherit;font:inherit;line-height:0;margin:0;padding:0;text-align:left;cursor:pointer;overflow:visible;-webkit-tap-highlight-color:transparent}.fo-sidebar-brand-button:hover,.fo-sidebar-brand-button:focus,.fo-sidebar-brand-button:active,.fo-sidebar-brand-button:focus-visible{background:transparent!important;background-color:transparent!important;background-image:none!important;box-shadow:none!important;outline-offset:3px}.fo-sidebar-brand-button .fo-sidebar-logo-image{background:transparent!important;background-color:transparent!important;background-image:none!important;border:0;border-radius:0;box-shadow:none!important;object-fit:contain}.settings-vantis-page{max-width:98rem;gap:18px}.settings-shell-card{gap:14px;padding:18px;border:1px solid #d8dee9;border-radius:14px;background:linear-gradient(155deg,#fff,#f7f9fd);box-shadow:none}.settings-shell-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings-shell-title-block{max-width:48rem}.settings-shell-title{margin:4px 0;font-size:var(--text-2xl);line-height:1.15;font-weight:700;letter-spacing:-.022em}.settings-shell-subtitle{margin:0;font-size:var(--text-md);line-height:1.45}.settings-tabbar{display:flex;flex-wrap:wrap;gap:8px;padding:6px;border:1px solid #d8dee9;border-radius:999px;background:#ffffffa8;width:fit-content;max-width:100%}.settings-tab-link{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.34rem .8rem;border:1px solid transparent;border-radius:999px;color:#5a6575;font-size:var(--text-sm);font-weight:600;text-decoration:none;transition:background .14s ease,border-color .14s ease,color .14s ease}.settings-tab-link:hover{background:#f3f6fc;color:#1a1f2e}.settings-tab-link.active{border-color:#2155f53d;background:#2155f51a;color:#2147c8}.settings-content-panel>.stack>.card,.settings-content-panel>.card{border-color:#d8dee9;border-radius:12px;box-shadow:none}.settings-general-page{gap:16px}.settings-general-page>.card{border:1px solid #d8dee9;border-radius:14px;box-shadow:none}.settings-general-hero{padding:18px;background:linear-gradient(155deg,#fff,#f8fafc)}.settings-general-heading{display:flex;align-items:stretch;justify-content:space-between;gap:18px}.settings-section-title{margin:4px 0 0;font-size:var(--text-xl);line-height:1.2;font-weight:700;letter-spacing:-.02em;color:#1a1f2e}.settings-section-description{max-width:42rem;margin:0;font-size:var(--text-md);line-height:1.5}.settings-general-status-card{display:grid;min-width:11rem;align-content:center;gap:2px;padding:14px 16px;border:1px solid #d8dee9;border-radius:12px;background:#fff}.settings-general-status-card strong{color:#1a1f2e;font-size:var(--text-2xl);line-height:1}.settings-status-label{color:#5a6575;font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.settings-success-panel{padding:12px 14px;border:1px solid #96f2d7;border-radius:12px;background:#e6fcf5;color:#087f5b;font-size:var(--text-md)}.settings-form-section{gap:16px;padding:18px;background:#fff}.settings-section-header{display:flex;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #eef1f6}.settings-section-header h3{margin:0;color:#1a1f2e;font-size:var(--text-base);line-height:1.25;font-weight:700}.settings-section-header p{margin:0}.settings-form-grid{display:grid;gap:14px}.settings-form-grid-single{grid-template-columns:minmax(0,1fr)}.settings-form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-form-grid-three{grid-template-columns:1.2fr repeat(2,minmax(9rem,.7fr))}.settings-action-footer{display:flex;justify-content:flex-end;padding:4px 0 2px}.settings-danger-section{padding:18px;border-color:#ffc9c9!important;background:snow}.settings-danger-eyebrow{color:#b42318;margin:0}@media (max-width: 900px){.settings-general-heading{flex-direction:column}.settings-general-status-card{min-width:0}.settings-form-grid-two,.settings-form-grid-three{grid-template-columns:minmax(0,1fr)}}@media (max-width: 700px){.settings-shell-card{padding:14px}.settings-tabbar{width:100%;border-radius:14px}.settings-tab-link{flex:1 1 calc(50% - 8px)}}.settings-screen-page{gap:16px}.settings-screen-page>.card{border:1px solid #d8dee9;border-radius:14px;box-shadow:none}.settings-screen-hero{padding:18px;background:linear-gradient(155deg,#fff,#f8fafc)}.settings-screen-heading{display:flex;align-items:stretch;justify-content:space-between;gap:18px}.settings-stat-row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;justify-content:flex-end}.settings-form-grid-labour{grid-template-columns:2fr 1fr 1fr auto;align-items:end}.settings-form-grid-field-library{grid-template-columns:2fr 1fr 1fr 1fr;align-items:end}.settings-table-section{overflow-x:auto}.settings-toolbar-header{align-items:flex-start}.settings-toolbar-row{max-width:34rem}.settings-inline-checkbox{display:inline-flex;align-items:center;gap:.45rem;min-height:2.5rem;color:#1a1f2e;font-weight:600}.settings-role-visibility-panel,.settings-panel-subsection{padding:14px;border:1px solid #d8dee9;border-radius:12px;background:#f8fafc}.settings-panel-subsection h3,.settings-danger-section h3,.settings-panel-form .danger-zone p{margin:0}@media (max-width: 900px){.settings-screen-heading{flex-direction:column}.settings-stat-row{justify-content:flex-start}.settings-form-grid-labour,.settings-form-grid-field-library{grid-template-columns:minmax(0,1fr)}}.fo-sort-heading{display:inline-flex;align-items:center;gap:.35rem;width:100%;border:0;background:transparent;color:inherit;padding:0;font:inherit;text-align:left;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.fo-sort-heading:hover{color:var(--fo-text)}.fo-inline-actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.fo-filter-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.fo-detail-highlight{border-color:#bfdbfe;background:#eff6ff}.fo-action-footer{display:flex;width:100%;gap:var(--space-2);flex-wrap:wrap;align-items:center}.fo-action-footer-end{justify-content:flex-end}.fo-action-footer-start{justify-content:flex-start}.fo-action-footer-between{justify-content:space-between}.fo-action-button{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface);color:var(--fo-text);box-shadow:var(--shadow-card);font-size:var(--text-sm);font-weight:700;line-height:1;cursor:pointer;text-decoration:none;transition:background .14s ease,border-color .14s ease,color .14s ease}.fo-action-button:hover:not(:disabled){border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.fo-action-button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.fo-action-button:disabled{cursor:not-allowed;opacity:.64;transform:none}.fo-action-button-primary{border-color:var(--fo-accent);background:var(--fo-accent);color:#fff}.fo-action-button-primary:hover:not(:disabled){border-color:var(--fo-accent-hover);background:var(--fo-accent-hover)}.fo-action-button-secondary{border-color:var(--fo-border);background:var(--fo-surface-subtle);color:var(--fo-text)}.fo-action-button-ghost{border-color:transparent;background:transparent;box-shadow:none;color:var(--fo-text-muted)}.fo-action-button-danger{border-color:#b42318;background:#b42318;color:#fff}.fo-action-button-danger:hover:not(:disabled){border-color:#9f1f14;background:#9f1f14}.fo-action-button-icon{flex:0 0 auto}.fo-action-button-page,.fo-backoffice-page-actions .fo-action-button{font-size:var(--text-sm)}@media (max-width: 600px){.fo-action-footer{justify-content:stretch}.fo-action-button{width:100%}}.fo-backoffice-page{display:grid;gap:var(--space-5);background:var(--fo-bg-page)}.fo-backoffice-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.fo-backoffice-page-heading{display:grid;gap:var(--space-1);min-width:min(100%,280px)}.fo-backoffice-page-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.fo-backoffice-page-title{margin:0;color:var(--fo-text);font-size:var(--text-2xl);line-height:1.12;font-weight:700;letter-spacing:-.02em}.fo-backoffice-page-subtitle{margin:var(--space-1) 0 0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.45;max-width:48rem}.fo-backoffice-page-meta{color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.4}.fo-backoffice-page-controls{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.fo-backoffice-page-search{min-width:min(100%,220px)}.fo-backoffice-page-search .fo-search-input{width:220px;max-width:100%}.fo-backoffice-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.fo-static-action-slot{display:flex;justify-content:flex-end;width:100%}.fo-warehouse-inventory-header .fo-backoffice-page-controls{flex:1 1 auto;min-width:min(100%,620px)}.fo-warehouse-inventory-header .fo-backoffice-page-search{flex:1 1 420px;min-width:min(100%,360px)}.fo-warehouse-inventory-header .fo-warehouse-inventory-search-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;width:100%}.fo-warehouse-inventory-header .fo-backoffice-page-search .fo-search-input{flex:1 1 260px;width:clamp(220px,24vw,320px)}.fo-warehouse-inventory-header .fo-backoffice-page-actions{flex:0 0 auto}@media (max-width: 920px){.fo-warehouse-inventory-header .fo-backoffice-page-controls,.fo-warehouse-inventory-header .fo-backoffice-page-search,.fo-warehouse-inventory-header .fo-backoffice-page-actions,.fo-warehouse-inventory-header .fo-warehouse-inventory-search-row{width:100%}.fo-warehouse-inventory-header .fo-warehouse-inventory-search-row{flex-wrap:wrap;justify-content:stretch}.fo-warehouse-inventory-header .fo-warehouse-inventory-search-row .fo-action-button,.fo-warehouse-inventory-header .fo-backoffice-page-search .fo-search-input{width:100%}}@media (max-width: 720px){.fo-backoffice-page-header,.fo-backoffice-page-controls,.fo-backoffice-page-actions,.fo-backoffice-page-search .fo-search-input{width:100%}.fo-backoffice-page-controls,.fo-backoffice-page-actions{justify-content:stretch}}.fo-backoffice-drawer-header{background:var(--fo-surface)}.fo-backoffice-drawer-heading{display:grid;gap:var(--space-1);min-width:0}.fo-backoffice-drawer-eyebrow,.fo-backoffice-drawer-section-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.fo-backoffice-drawer-title{margin:0;color:var(--fo-text);font-size:var(--text-lg);font-weight:700;line-height:1.2;letter-spacing:-.01em}.fo-backoffice-drawer-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.fo-backoffice-drawer-icon-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text-muted);box-shadow:var(--shadow-card);cursor:pointer}.fo-backoffice-drawer-body{display:block}.fo-backoffice-drawer-content{display:grid;gap:var(--space-4);min-width:0}.fo-backoffice-drawer-tabs{display:inline-flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle);width:fit-content;max-width:100%}.fo-backoffice-drawer-tabs button{min-height:32px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:700;cursor:pointer}.fo-backoffice-drawer-tabs button:hover,.fo-backoffice-drawer-tabs button.active,.fo-backoffice-drawer-tabs button[aria-selected=true]{background:var(--fo-accent-bg);color:var(--fo-accent-text);box-shadow:var(--shadow-card)}.fo-backoffice-drawer-form-grid{display:grid;gap:var(--space-4);min-width:0}.fo-backoffice-drawer-action-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.fo-backoffice-drawer-action-row-end{justify-content:flex-end}.fo-backoffice-drawer-action-row-start{justify-content:flex-start}.fo-backoffice-drawer-action-row-between{justify-content:space-between}.fo-backoffice-drawer-section{display:grid;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.fo-backoffice-drawer-section-subtle{background:var(--fo-surface-subtle)}.fo-backoffice-drawer-section-heading{display:grid;gap:var(--space-2)}.fo-backoffice-drawer-section-title-row{display:flex;align-items:flex-start;gap:var(--space-2);min-width:0}.fo-backoffice-drawer-section-icon{flex:0 0 auto;margin-top:var(--space-1);color:var(--fo-accent-text)}.fo-backoffice-drawer-section-title-copy{display:grid;gap:var(--space-1);min-width:0}.fo-backoffice-drawer-section .fo-field-label{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.fo-backoffice-drawer-section-title{margin:0;color:var(--fo-text);font-size:var(--text-base);font-weight:700;line-height:1.3}.fo-backoffice-drawer-section-description{margin:0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.5}.fo-backoffice-drawer-footer{background:var(--fo-surface)}.fo-list-table{width:100%;overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface)}.fo-list-table__header-slot{display:grid;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--fo-border)}.fo-list-table__head,.fo-list-table__row{display:grid;gap:var(--space-3);align-items:center}.fo-list-table__head{padding:.7rem var(--space-4);background:var(--fo-surface-subtle);color:var(--fo-text-muted);border-bottom:1px solid var(--fo-border)}.fo-list-table__heading{min-width:0;font-size:var(--text-xs);font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.06em}.fo-list-table__heading--right{text-align:right}.fo-list-table__heading--right .fo-sort-heading{justify-content:flex-end}.fo-list-table__row{width:100%;min-height:3.15rem;padding:.75rem var(--space-4);border:0;border-top:1px solid var(--fo-border);background:var(--fo-surface);color:var(--fo-text);text-align:left;font:inherit}.fo-list-table__head+.fo-list-table__row{border-top:0}.fo-list-table__row--button{cursor:pointer}.fo-list-table__row--button:hover,.fo-list-table__row--button:focus-visible{background:var(--fo-surface-subtle)}.fo-list-table__row--button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:-2px}.fo-list-table__row.is-selected{background:#2155f50d}.fo-list-table__cell{min-width:0;overflow:hidden;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.35;text-overflow:ellipsis}.fo-list-table__cell strong{color:var(--fo-text)}.fo-list-table__cell--title{color:var(--fo-text);font-weight:650}.fo-list-table__cell--meta{color:var(--fo-text-muted)}.fo-list-table__cell--right{text-align:right}.fo-list-table__cell--actions{display:inline-flex;justify-content:flex-end;align-items:center;gap:var(--space-2);overflow:visible}.fo-list-table__cell--danger{display:inline-flex;justify-content:flex-end;align-items:center;overflow:visible}.fo-list-table__empty{padding:3rem var(--space-4);color:var(--fo-text-muted);text-align:center}.fo-list-table__empty-title{margin:0;color:var(--fo-text);font-size:var(--text-md);font-weight:700}.fo-list-table__empty-description{margin:.35rem 0 0;font-size:var(--text-sm)}@media (max-width: 900px){.fo-list-table__head{display:none}.fo-list-table__row,.fo-list-table__row--button{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.fo-list-table__cell{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:var(--space-2);white-space:normal}.fo-list-table__cell:before{content:attr(data-label);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.fo-list-table__cell--actions,.fo-list-table__cell--danger{justify-content:stretch}}.fo-billing-line-items-section{display:grid;gap:12px}.fo-billing-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.fo-billing-section-heading{display:flex;align-items:flex-start;gap:10px;min-width:min(100%,16rem)}.fo-billing-section-icon,.settings-section-icon,.settings-tab-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2rem;height:2rem;border:1px solid var(--fo-border);border-radius:10px;background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.fo-billing-section-copy{display:grid;gap:3px;min-width:0}.fo-billing-section-copy h2{margin:0;color:var(--fo-text);font-size:var(--text-base);line-height:1.25;font-weight:750}.fo-billing-section-copy p{margin:0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.45}.fo-billing-section-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap}.settings-tab-link{gap:8px;justify-content:flex-start;text-align:left}.settings-tab-copy{display:grid;gap:1px;line-height:1.1}.settings-tab-copy strong{font-size:var(--text-sm);font-weight:700}.settings-tab-copy small{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:600}.settings-tab-link.active .settings-tab-icon{border-color:#2155f53d;background:#2155f51a;color:#2147c8}.settings-section-heading-with-icon{display:flex;align-items:flex-start;gap:12px;min-width:0}.settings-section-heading-with-icon>div{min-width:0}@media (max-width: 700px){.fo-billing-section-actions{width:100%;justify-content:stretch}.settings-tab-link{align-items:flex-start}}.fo-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0}.fo-info-grid__item{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid var(--fo-border);border-radius:12px;background:var(--fo-surface-subtle)}.fo-info-grid__item dt{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fo-info-grid__item dd{margin:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:650;overflow-wrap:anywhere}.fo-highlight-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid rgba(33,85,245,.22);border-radius:14px;background:#2155f514}.fo-highlight-card span{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.fo-highlight-card strong{color:var(--fo-text);font-size:var(--text-lg);letter-spacing:.08em}.fo-status-timeline{display:grid;gap:10px;margin:0;padding:0;list-style:none}.fo-status-timeline li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--fo-border)}.fo-status-timeline li:last-child{border-bottom:0}.fo-status-timeline span{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:650}.fo-status-timeline strong{color:var(--fo-text);font-size:var(--text-sm)}.fo-inline-form-row{display:grid;grid-template-columns:minmax(220px,1fr) 96px auto;gap:10px;align-items:end}.fo-form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fo-part-line{display:grid;grid-template-columns:minmax(180px,1fr) 96px auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--fo-border)}.fo-part-line:last-child{border-bottom:0}.fo-filter-field{display:inline-flex;min-width:180px}.fo-contractor-detail-content{max-width:980px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fo-responsive-surface{display:grid;gap:var(--space-4);width:100%;min-width:0;margin:0 auto}.fo-responsive-surface-standard{max-width:980px}.fo-responsive-surface-wide{max-width:1180px}.fo-responsive-surface-narrow{max-width:720px}.fo-responsive-surface-full{max-width:none}.fo-responsive-surface-footer-slot{position:sticky;bottom:0;z-index:5;margin:var(--space-2) calc(var(--space-4) * -1) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4);border-top:1px solid var(--fo-border);background:#fffffff5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.fo-surface-stack{display:grid;min-width:0}.fo-surface-stack-compact{gap:var(--space-2)}.fo-surface-stack-comfortable{gap:var(--space-4)}.fo-surface-stack-loose{gap:var(--space-6)}.fo-context-summary-card,.fo-state-section,.fo-expandable-section,.fo-placeholder-slot{border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.fo-context-summary-card{display:grid;gap:var(--space-4);padding:var(--space-5)}.fo-context-summary-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);align-items:start}.fo-context-summary-heading{display:grid;gap:4px;min-width:0}.fo-context-summary-eyebrow,.fo-state-section-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fo-context-summary-title{margin:0;color:var(--fo-text);font-size:var(--text-xl);font-weight:700;line-height:1.18}.fo-context-summary-subtitle,.fo-context-summary-meta,.fo-state-section-description{margin:0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.45}.fo-context-summary-actions{display:flex;flex-direction:column;gap:var(--space-2);align-items:stretch;min-width:min(100%,14rem)}.fo-context-summary-primary-action,.fo-context-summary-secondary-actions,.fo-state-section-actions,.fo-placeholder-slot-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;justify-content:flex-end}.fo-context-summary-primary-action .fo-action-button,.fo-context-summary-primary-action .btn{min-height:3rem;font-size:var(--text-base)}.fo-context-summary-body{display:grid;gap:var(--space-3);min-width:0}.fo-key-value-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3);margin:0}.fo-key-value-item{display:grid;gap:4px;min-width:0;padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.fo-key-value-item dt{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fo-key-value-item dd{margin:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:650;overflow-wrap:anywhere}.fo-responsive-record-list{display:grid;gap:var(--space-3);min-width:0}.fo-responsive-record-list-item{min-width:0;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.fo-state-section{display:grid;gap:var(--space-3);padding:var(--space-5)}.fo-state-section-header{display:flex;gap:var(--space-3);align-items:flex-start;justify-content:space-between}.fo-state-section-title{margin:0;color:var(--fo-text);font-size:var(--text-lg);font-weight:700;line-height:1.25}.fo-state-section-aside{display:flex;gap:var(--space-2);align-items:center;justify-content:flex-end;flex-wrap:wrap}.fo-state-section-status{display:inline-flex;align-items:center}.fo-state-section-body{display:grid;gap:var(--space-3);min-width:0}.fo-state-section-info{border-color:var(--fo-status-scheduled-border);background:var(--fo-status-scheduled-bg)}.fo-state-section-warning{border-color:var(--fo-status-in-progress-border);background:var(--fo-status-in-progress-bg)}.fo-state-section-success{border-color:var(--fo-status-approved-border);background:var(--fo-status-approved-bg)}.fo-state-section-danger{border-color:var(--fo-status-cancelled-border);background:var(--fo-status-cancelled-bg)}.fo-expandable-section{overflow:hidden}.fo-expandable-section-summary{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;padding:var(--space-5);color:var(--fo-text);cursor:pointer}.fo-expandable-section-summary:focus-visible{outline:2px solid var(--fo-accent);outline-offset:-2px}.fo-expandable-section-title{font-size:var(--text-base);font-weight:700}.fo-expandable-section-meta{color:var(--fo-text-muted);font-size:var(--text-sm)}.fo-expandable-section-body{display:grid;gap:var(--space-3);padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--fo-border)}.fo-placeholder-slot{display:grid;place-items:center;gap:var(--space-3);min-height:10rem;padding:var(--space-6);border-style:solid;border-color:var(--fo-border);background:var(--fo-surface);box-shadow:var(--shadow-card);text-align:center}.fo-placeholder-slot-icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-pill);background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.fo-placeholder-slot-copy{display:grid;gap:4px;max-width:28rem}.fo-placeholder-slot-title{margin:0;color:var(--fo-text);font-size:var(--text-base);font-weight:700}.fo-placeholder-slot-description{margin:0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.45}.fo-external-action-link{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-accent-text);font-size:var(--text-sm);font-weight:700;text-decoration:none}.fo-external-action-link:hover{border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.fo-external-action-link:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}@media (min-width: 820px){.fo-responsive-record-list-tablet{gap:0;border:1px solid var(--fo-border);border-radius:var(--radius-xl);overflow:hidden;background:var(--fo-surface)}.fo-responsive-record-list-tablet .fo-responsive-record-list-item{border-width:0 0 1px;border-radius:0}.fo-responsive-record-list-tablet .fo-responsive-record-list-item:last-child{border-bottom:0}}@media (max-width: 700px){.fo-responsive-surface{gap:var(--space-3)}.fo-context-summary-card,.fo-state-section{padding:var(--space-3);border-radius:var(--radius-lg)}.fo-context-summary-main{grid-template-columns:minmax(0,1fr)}.fo-context-summary-actions,.fo-context-summary-primary-action,.fo-context-summary-secondary-actions,.fo-state-section-header,.fo-state-section-aside,.fo-state-section-actions,.fo-placeholder-slot-actions{align-items:stretch;justify-content:stretch}.fo-context-summary-actions,.fo-state-section-header,.fo-state-section-aside{flex-direction:column}.fo-context-summary-primary-action>*,.fo-context-summary-secondary-actions>*,.fo-state-section-actions>*,.fo-placeholder-slot-actions>*,.fo-external-action-link{width:100%}.fo-key-value-grid{grid-template-columns:minmax(0,1fr)}.fo-expandable-section-summary{align-items:flex-start;flex-direction:column}}.fo-contractor-job-card{display:grid;min-width:0;overflow:hidden}.fo-contractor-job-card-main{display:grid;gap:var(--space-3);width:100%;padding:var(--space-3);border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.fo-contractor-job-card-main:hover{background:var(--fo-surface-subtle)}.fo-contractor-job-card-main:focus-visible{outline:2px solid var(--fo-accent);outline-offset:-2px}.fo-contractor-job-card-heading{display:flex;gap:var(--space-3);align-items:flex-start;justify-content:space-between;min-width:0}.fo-contractor-job-card-title,.fo-contractor-job-card-subtitle{display:block;overflow-wrap:anywhere}.fo-contractor-job-card-title{color:var(--fo-text);font-size:var(--text-base);font-weight:750;line-height:1.25}.fo-contractor-job-card-subtitle{margin-top:3px;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.35}.fo-contractor-task-note{display:block;padding:var(--space-2) var(--space-3);border:1px solid rgba(33,85,245,.18);border-radius:var(--radius-md);background:#2155f50f;color:var(--fo-text);font-size:var(--text-sm);line-height:1.45;overflow-wrap:anywhere}.fo-contractor-job-card-footer{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);padding:0 var(--space-3) var(--space-3)}.fo-contractor-address-unavailable{display:inline-flex;min-height:2.5rem;align-items:center;padding:var(--space-2) var(--space-3);border:1px dashed var(--fo-border);border-radius:var(--radius-sm);color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:650}@media (min-width: 820px){.fo-contractor-job-card{grid-template-columns:minmax(0,1fr) minmax(220px,.45fr);align-items:stretch}.fo-contractor-job-card-footer{padding:var(--space-3);border-left:1px solid var(--fo-border);background:var(--fo-surface-subtle)}}.fo-contractor-field-note{display:grid;gap:4px;padding:var(--space-3);border:1px solid rgba(33,85,245,.18);border-radius:var(--radius-lg);background:#2155f50f;color:var(--fo-text)}.fo-contractor-field-note strong{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fo-text-muted)}.fo-contractor-field-note span{font-size:var(--text-sm);line-height:1.45}.fo-scanner-search-grid{align-items:stretch}.fo-scanner-search-grid>*{min-width:0;max-width:100%}@media (max-width: 640px){.fo-form-grid-two.fo-scanner-search-grid{grid-template-columns:minmax(0,1fr)}}.fo-barcode-input-control{width:100%;max-width:100%;min-width:0;overflow-x:clip}.fo-barcode-input-control__entry-row{display:grid;grid-template-columns:minmax(0,1fr) max-content max-content;gap:var(--space-2);align-items:stretch;width:100%;max-width:100%;min-width:0}.fo-barcode-input-control__input{min-width:0;max-width:100%}.fo-barcode-input-control__button{min-width:0;white-space:nowrap;min-height:2.75rem;max-width:100%}.fo-barcode-input-control__scanner-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:.75rem 1rem;flex-shrink:0;min-width:0}.fo-barcode-input-control__scanner-title{font-size:var(--text-base);flex:0 0 auto}.fo-barcode-input-control__camera-select{display:flex;align-items:center;gap:.4rem;min-width:0;flex:1 1 auto;justify-content:flex-end}.fo-barcode-input-control__camera-label{color:#cbd5e1;white-space:nowrap}.fo-barcode-input-control__camera-input{width:100%;max-width:min(52vw,18rem);min-width:0;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#ffffff1f;color:#fff;padding:.45rem .65rem}.fo-barcode-input-control__camera-input option{color:#111827}.fo-barcode-input-control__stop-button{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:50%;width:2.5rem;height:2.5rem;color:#fff;font-size:var(--text-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.fo-barcode-input-control__status-actions{justify-content:flex-start;flex-wrap:wrap}@media (max-width: 560px){.fo-barcode-input-control__entry-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fo-barcode-input-control__input{grid-column:1 / -1}.fo-barcode-input-control__button{width:100%;white-space:normal}.fo-barcode-input-control__scanner-header{align-items:stretch;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem}.fo-barcode-input-control__scanner-title{flex:1 1 auto;min-width:0}.fo-barcode-input-control__camera-select{order:3;flex:1 1 100%;width:100%;justify-content:flex-start}.fo-barcode-input-control__camera-input{max-width:100%;flex:1 1 auto}}@media (max-width: 360px){.fo-barcode-input-control__entry-row{grid-template-columns:minmax(0,1fr)}}.fo-visual-scanner-bridge>.fo-barcode-input-control>.fo-barcode-input-control__entry-row{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 767px){body.fo-contractor-mobile-no-sidebar .admin-mobile-menu-button{display:none!important}}.fo-contractor-scan-only .fo-barcode-input-control__input{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important}.fo-contractor-scan-only .fo-barcode-input-control__entry-row{display:flex!important;align-items:stretch!important}.fo-contractor-scan-only .fo-barcode-input-control__button{min-height:34px;white-space:nowrap}.fo-contractor-scan-only .fo-barcode-input-control>div[aria-live=polite]:last-child{display:none!important}@media (max-width: 1023px){body.fo-contractor-mobile-no-sidebar .admin-mobile-menu-button,body.fo-contractor-mobile-no-sidebar button.admin-mobile-menu-button,body.fo-contractor-mobile-no-sidebar [class*=hamburger i],body.fo-contractor-mobile-no-sidebar [class*=sidebar-toggle i]{display:none!important;visibility:hidden!important;pointer-events:none!important}}@media (max-width: 1023px){body.fo-contractor-mobile-no-sidebar .admin-main,body.fo-contractor-mobile-no-sidebar .admin-layout{padding-top:0!important}body.fo-contractor-mobile-no-sidebar .admin-mobile-menu-button{position:absolute!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}}.fo-contractor-scan-only .fo-barcode-input-control__button{width:38px;min-width:38px;padding:0;display:inline-flex;align-items:center;justify-content:center}body.fo-contractor-mobile-no-sidebar{--fo-contractor-visible-height: 100vh;--fo-contractor-visible-width: 100vw;--fo-contractor-scroll-bottom-space: 0px;overflow:hidden}@supports (height: 100dvh){body.fo-contractor-mobile-no-sidebar{--fo-contractor-visible-height: 100dvh;--fo-contractor-visible-width: 100dvw}}body.fo-contractor-mobile-no-sidebar #root,body.fo-contractor-mobile-no-sidebar .admin-layout{height:var(--fo-contractor-visible-height);min-height:0;max-height:var(--fo-contractor-visible-height);overflow:hidden}body.fo-contractor-mobile-no-sidebar .admin-main{height:100%;min-height:0;max-height:100%;overflow:hidden;display:flex;flex-direction:column}body.fo-contractor-mobile-no-sidebar .fo-contractor-screen,body.fo-contractor-mobile-no-sidebar .fo-contractor-panel{display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;max-height:100%;overflow:hidden}body.fo-contractor-mobile-no-sidebar .fo-contractor-scroll-body{flex:1 1 auto;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding-bottom:var(--fo-contractor-scroll-bottom-space);padding-bottom:var(--fo-contractor-scroll-bottom-space)!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-account-body{align-content:start}@media (min-width: 1024px){body.fo-contractor-mobile-no-sidebar{--fo-contractor-scroll-bottom-space: 0px}body.fo-contractor-mobile-no-sidebar .fo-contractor-bottom-tabs{display:none!important}}body.fo-contractor-mobile-no-sidebar{--fo-contractor-drawer-max-width: 480px}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-card{display:block;box-sizing:border-box}body.fo-contractor-mobile-no-sidebar .fo-contractor-status-timeline{box-sizing:border-box}body.fo-contractor-mobile-no-sidebar .fo-contractor-drawer{max-height:var(--fo-contractor-visible-height, 100vh);box-sizing:border-box}@media (min-width: 768px){body.fo-contractor-mobile-no-sidebar{--fo-contractor-drawer-max-width: min(760px, calc(100vw - 48px) )}}.workorders-checklist-card{min-width:0}.workorders-checklist-compact-stack,.contractor-checklist-compact-stack{display:grid;gap:.5rem;min-width:0}.workorders-checklist-list,.contractor-checklist-list{display:grid;gap:0;min-width:0;overflow:hidden;border:1px solid var(--fo-border, #d9e2ec);border-radius:var(--fo-radius-md, .75rem);background:var(--fo-surface, #fff)}.workorders-checklist-row,.contractor-checklist-row{display:grid;gap:.5rem;align-items:center;min-width:0;padding:.45rem .65rem;border:0;border-bottom:1px solid var(--fo-border, #d9e2ec);background:transparent;grid-template-columns:minmax(0,1fr) auto}.workorders-checklist-row:last-child,.contractor-checklist-row:last-child{border-bottom:0}.workorders-checklist-row--readonly{grid-template-columns:auto minmax(0,1fr)}.workorders-checklist-row--editable{grid-template-columns:auto minmax(12rem,1fr) auto}.contractor-checklist-row{grid-template-columns:auto minmax(0,1fr);min-height:2.5rem;cursor:pointer}.contractor-checklist-row input[type=checkbox]{width:1.1rem;height:1.1rem;margin:0;flex:0 0 auto}.workorders-checklist-label,.workorders-checklist-label input{min-width:0;width:100%}.workorders-checklist-label input{padding-top:.45rem;padding-bottom:.45rem}.workorders-checklist-text,.contractor-checklist-text{min-width:0;overflow-wrap:anywhere;word-break:normal;line-height:1.35}.workorders-checklist-text,.contractor-checklist-text{font-size:var(--text-md);color:var(--fo-text, #1f2937)}.workorders-checklist-reorder-affordance{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;min-height:1.35rem;color:var(--fo-text-muted, #667085);font-size:var(--text-md);font-weight:700;letter-spacing:-.18em;-webkit-user-select:none;user-select:none}.workorders-checklist-controls{justify-content:flex-end;align-items:center;flex-wrap:wrap}.workorders-checklist-controls--compact{gap:.35rem}.workorder-dispatch-review-page .workorders-checklist-row{grid-template-columns:auto minmax(0,1fr) auto}.workorders-dispatch-form{border-color:var(--fo-border-strong, #cbd5e1)}.status-pill{display:inline-flex;gap:.35rem;align-items:center;white-space:nowrap;border:1px solid var(--fo-border, #d9e2ec);border-radius:999px;padding:.3rem .65rem;background:var(--fo-surface-subtle, #f8fafc);color:var(--fo-text-muted, #667085);font-size:var(--text-sm);font-weight:650}@media (max-width: 760px){.workorders-checklist-row,.workorder-dispatch-review-page .workorders-checklist-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.workorders-checklist-controls{justify-content:flex-start}}.workorder-post-create-review-page{max-width:98rem;padding-bottom:88px}.workorder-post-create-review-page .fo-static-action-slot .workorders-form-actions,.workorder-dispatch-review-page .fo-static-action-slot .workorders-form-actions{position:static;max-width:100%}.workorders-post-create-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,23rem);gap:16px;align-items:start}.workorders-post-create-main,.workorders-post-create-side{min-width:0}.workorders-split-row{justify-content:space-between;align-items:flex-start}.workorders-detail-list{gap:12px}.workorders-detail-list>div{display:grid;gap:4px;min-width:0}.workorders-detail-list strong{color:var(--fo-text);font-size:var(--text-xs);letter-spacing:.02em}.workorders-detail-list span,.preserve-linebreaks{color:#5a6575;white-space:pre-wrap;overflow-wrap:anywhere}.workorder-post-create-review-page .workorders-section-card,.workorder-post-create-review-page .workorders-side-card{box-shadow:0 12px 24px #0f172a0a}@media (max-width: 1080px){.workorders-post-create-grid{grid-template-columns:minmax(0,1fr)}}.maintenance-page{gap:16px}.maintenance-heading{align-items:flex-start}.maintenance-stat-row{min-width:min(100%,24rem)}.maintenance-control-grid{grid-template-columns:minmax(12rem,18rem) auto;align-items:end}.maintenance-control-actions,.maintenance-purge-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.maintenance-preview-title{display:grid;gap:2px}.maintenance-preview-title small{color:var(--fo-text-muted);font-size:var(--text-2xs);overflow-wrap:anywhere}.maintenance-reason-grid{display:flex;gap:8px;flex-wrap:wrap;padding-top:6px}.maintenance-reason-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid var(--fo-border);border-radius:999px;background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-xs)}.maintenance-reason-chip strong{color:var(--fo-text);font-weight:700;text-transform:capitalize}.maintenance-refused-panel{border-color:#ffd8a8;background:#fff4e6;color:#9a3412}.maintenance-purge-card .fo-form-field{max-width:34rem}@media (max-width: 760px){.maintenance-control-grid{grid-template-columns:minmax(0,1fr)}.maintenance-control-actions,.maintenance-purge-actions{justify-content:stretch}.maintenance-control-actions .fo-action-button,.maintenance-purge-actions .fo-action-button{flex:1 1 100%}}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-screen,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-header,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body :is(div,button,a,label,input,textarea,select,img),body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-card,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row-stack,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row,body.fo-contractor-mobile-no-sidebar .contractor-photo-capture-panel,body.fo-contractor-mobile-no-sidebar .contractor-photo-slot,body.fo-contractor-mobile-no-sidebar .contractor-photo-thumb,body.fo-contractor-mobile-no-sidebar .fo-contractor-time-session-card,body.fo-contractor-mobile-no-sidebar .fo-contractor-primary-action-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-session-metrics{box-sizing:border-box;max-width:100%;min-width:0}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-screen{overflow-x:hidden}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-header,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body{width:100%;overflow-x:hidden}body.fo-contractor-mobile-no-sidebar .fo-contractor-detail-title-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row-stack,body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-primary-action-row{min-width:0}body.fo-contractor-mobile-no-sidebar .fo-contractor-detail-title-row>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row-status>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-session-metrics>*,body.fo-contractor-mobile-no-sidebar .fo-contractor-primary-action-row>*{min-width:0;max-width:100%}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body button,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body a,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body span,body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-body div{overflow-wrap:anywhere}body.fo-contractor-mobile-no-sidebar .fo-contractor-job-detail-address-link,body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row,body.fo-contractor-mobile-no-sidebar .fo-contractor-primary-action-row>button{width:100%;max-width:100%}body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row{overflow:hidden}body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row-status{overflow:hidden;justify-content:flex-end}body.fo-contractor-mobile-no-sidebar .fo-contractor-submenu-row-status span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.fo-contractor-mobile-no-sidebar .contractor-photo-slot :is(label,button),body.fo-contractor-mobile-no-sidebar .contractor-photo-thumb button{max-width:100%}@media (max-width: 420px){body.fo-contractor-mobile-no-sidebar .fo-contractor-primary-action-row{grid-template-columns:minmax(0,1fr)!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row{align-items:flex-start!important;flex-wrap:wrap}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row>div:last-child{flex:1 1 100%;text-align:left!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-metrics{grid-template-columns:minmax(0,1fr)!important}}.fo-invoice-issue-form{display:grid;gap:16px}.fo-invoice-issue-summary-grid,.fo-invoice-issue-form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.fo-invoice-issue-summary-cell{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid var(--fo-border);border-radius:12px;background:var(--fo-surface-subtle)}.fo-invoice-issue-summary-cell span{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fo-invoice-issue-summary-cell strong{min-width:0;color:var(--fo-text);font-size:var(--text-md);overflow-wrap:anywhere}.fo-invoice-issue-input{width:100%;min-height:40px;border:1px solid var(--fo-border);border-radius:10px;background:var(--fo-surface);color:var(--fo-text);font-size:var(--text-md)}.fo-invoice-issue-input:disabled{background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.fo-invoice-issue-input:focus{outline:2px solid rgba(33,85,245,.18);border-color:var(--fo-accent)}@media (max-width: 720px){.fo-invoice-issue-summary-grid,.fo-invoice-issue-form-grid{grid-template-columns:minmax(0,1fr)}}.schedule-page{min-width:0;max-width:100%;overflow-x:clip}.schedule-page .fo-backoffice-page-header{align-items:flex-start;min-width:0;max-width:100%}.schedule-header-actions{display:flex;min-width:0;max-width:100%;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.schedule-view-switcher{display:inline-flex;min-width:0;align-items:center;gap:.125rem;padding:.125rem;border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface-subtle)}.schedule-view-switcher__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:2.25rem;padding:0 var(--space-3);border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--fo-text-muted);font:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.schedule-view-switcher__button:hover{color:var(--fo-text);background:var(--fo-surface)}.schedule-view-switcher__button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.schedule-view-switcher__button--active{border-color:#2155f538;background:var(--fo-surface);color:var(--fo-accent-text);box-shadow:var(--shadow-sm)}.schedule-contractor-filter{min-width:0;max-width:100%}.schedule-contractor-select{width:min(100%,12.5rem);min-height:2.5rem;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.schedule-scope-summary{display:inline-flex;min-width:0;max-width:100%;align-items:center;gap:var(--space-2);flex-wrap:wrap}.schedule-show-all-action.fo-action-button{min-height:auto;padding:0;color:var(--fo-accent);font-size:var(--text-xs);background:transparent}.schedule-mobile-day-pager{display:none}.schedule-week-surface{width:100%;min-width:0;max-width:100%;overflow-x:hidden;padding-bottom:var(--space-1)}.schedule-week-grid{display:grid;width:100%;min-width:0;max-width:100%;grid-template-columns:repeat(7,minmax(0,1fr));gap:.125rem;align-items:stretch;justify-items:stretch}.schedule-day-column{display:grid;width:100%;min-width:0;max-width:100%;box-sizing:border-box;gap:.25rem;padding:.3rem;border:1px solid transparent;border-radius:var(--radius-md);align-content:start;justify-items:stretch}.schedule-day-column--today{border-color:var(--fo-accent);background:linear-gradient(180deg,#2155f514,#2155f506)}.schedule-day-header{min-width:0;padding-bottom:.25rem;border-bottom:1px solid var(--fo-border)}.schedule-day-column--today .schedule-day-header{border-bottom-color:#2155f547}.schedule-day-eyebrow{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-1);margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.schedule-day-column--today .schedule-day-eyebrow,.schedule-day-column--today .schedule-day-date{color:var(--fo-accent-text)}.schedule-today-chip{display:inline-flex;flex:0 0 auto;align-items:center;border:1px solid rgba(33,85,245,.26);border-radius:var(--radius-pill);padding:.1rem .35rem;background:var(--fo-surface);color:var(--fo-accent-text);font-size:var(--text-2xs);font-weight:800;letter-spacing:.05em}.schedule-day-date{margin:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:700}.schedule-day-list{display:grid;width:100%;min-width:0;max-width:100%;gap:.25rem;justify-items:stretch}.schedule-day-empty{display:grid;width:100%;max-width:100%;justify-self:stretch;min-height:3.75rem;min-width:0;box-sizing:border-box;place-items:center;padding:.4rem;border:1px dashed var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-xs);text-align:center}.schedule-work-order-card{display:grid;width:100%;min-width:0;max-width:100%;box-sizing:border-box;justify-self:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;gap:.25rem;padding:.4rem;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface);color:var(--fo-text);font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease}.schedule-work-order-card:hover{border-color:var(--fo-border-strong);background:var(--fo-surface-subtle);transform:translateY(-1px)}.schedule-work-order-card:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.schedule-work-order-meta{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-1)}.schedule-work-order-time{min-width:0;overflow:hidden;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.schedule-work-order-initials{display:inline-flex;width:1.375rem;height:1.375rem;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--fo-soft-blue);color:var(--fo-accent-text);font-size:var(--text-2xs);font-weight:700;flex:0 0 auto}.schedule-work-order-title{min-width:0;overflow:hidden;color:var(--fo-text);font-size:var(--text-xs);font-weight:650;line-height:1.22;overflow-wrap:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto;text-overflow:ellipsis}.schedule-work-order-status{display:inline-flex;min-width:0;max-width:100%;overflow:hidden}.schedule-work-order-status .status-badge{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-work-order-detail-line{min-width:0;overflow:hidden;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.schedule-day-foundation-surface,.schedule-day-time-surface,.schedule-month-surface,.schedule-year-surface{width:100%;min-width:0;max-width:100%}.schedule-day-foundation-surface{display:grid;gap:var(--space-3)}.schedule-day-foundation-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.schedule-day-foundation-date{color:var(--fo-text);font-size:var(--text-lg);font-weight:800}.schedule-day-foundation-count{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800}.schedule-day-foundation-list{display:grid;gap:var(--space-2)}.schedule-foundation-empty{display:grid;min-height:8rem;place-items:center;padding:var(--space-4);border:1px dashed var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:650}.schedule-day-time-surface{display:grid;gap:var(--space-3)}.schedule-day-time-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.schedule-day-time-date{color:var(--fo-text);font-size:var(--text-lg);font-weight:800}.schedule-day-time-count{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800}.schedule-day-time-grid{display:grid;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);overflow:hidden}.schedule-day-time-slot{display:grid;grid-template-columns:5.5rem minmax(0,1fr);min-height:4.5rem;border-bottom:1px solid var(--fo-border)}.schedule-day-time-slot:last-child{border-bottom:0}.schedule-day-time-label{padding:var(--space-3) var(--space-2);border-right:1px solid var(--fo-border);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800;text-align:right;white-space:nowrap}.schedule-day-time-content{display:grid;align-content:start;gap:var(--space-2);min-width:0;padding:var(--space-2)}.schedule-day-time-content--desktop-density{justify-items:start}.schedule-day-time-label--create{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;width:100%;border-top:0;border-bottom:0;border-left:0;border-radius:0;cursor:pointer}.schedule-day-time-label__create-icon{flex:0 0 auto;opacity:.45;transition:opacity .12s ease,transform .12s ease}.schedule-day-time-label--create:hover .schedule-day-time-label__create-icon,.schedule-day-time-label--create:focus-visible .schedule-day-time-label__create-icon{opacity:1;transform:scale(1.08)}.schedule-day-time-label--create:focus-visible{position:relative;z-index:2;outline:2px solid var(--fo-accent);outline-offset:-2px}.schedule-day-time-empty{min-height:2.75rem;border:1px dashed rgba(123,134,158,.22);border-radius:var(--radius-md);background:#f6f8fc8a}.schedule-day-time-block-group{display:grid;width:min(100%,42rem);min-width:0;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),20rem));justify-content:start}.schedule-day-time-block-group--stacked{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),20rem))}.schedule-work-order-card--day-block{width:100%;max-width:20rem;min-height:5.75rem;border-color:var(--fo-border-strong);background:linear-gradient(180deg,#ffffff,var(--fo-surface-subtle))}.schedule-day-time-empty-state{min-height:5rem}.schedule-month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.125rem;margin-bottom:.125rem;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.schedule-month-weekdays span{padding:0 var(--space-2) var(--space-1)}.schedule-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.125rem}.schedule-month-day{display:grid;min-height:8.5rem;align-content:start;gap:.25rem;padding:.35rem;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.schedule-month-day--muted{background:var(--fo-surface-subtle);color:var(--fo-text-muted);opacity:.78}.schedule-month-day--today{border-color:var(--fo-accent);background:linear-gradient(180deg,#2155f514,#2155f506)}.schedule-month-day__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1);width:100%;min-height:1.75rem;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:var(--text-sm);font-weight:800;text-align:left;cursor:pointer}.schedule-month-day__header:focus-visible,.schedule-month-job:focus-visible,.schedule-year-month:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.schedule-month-day__count{display:inline-flex;min-width:1.35rem;min-height:1.35rem;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--fo-soft-blue);color:var(--fo-accent-text);font-size:var(--text-2xs);font-weight:800}.schedule-month-day__jobs{display:grid;gap:.2rem}.schedule-month-job{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem;align-items:center;width:100%;min-width:0;padding:.25rem .35rem;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text);font:inherit;text-align:left;cursor:pointer}.schedule-month-job span{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:750;white-space:nowrap}.schedule-month-job strong{min-width:0;overflow:hidden;font-size:var(--text-xs);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.schedule-month-more{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800}.schedule-year-surface--polished{display:grid;gap:var(--space-3)}.schedule-year-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.schedule-year-month{display:grid;min-height:7rem;align-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffff,var(--fo-surface-subtle));color:var(--fo-text);font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.schedule-year-month:hover{border-color:var(--fo-border-strong);background:var(--fo-surface);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.schedule-year-month--has-jobs{border-color:#2155f542}.schedule-year-month--today{border-color:var(--fo-accent);background:linear-gradient(180deg,#2155f51a,#2155f506)}.schedule-year-month__name{min-width:0;overflow:hidden;font-size:var(--text-base);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.schedule-year-month__meta{display:inline-flex;width:max-content;max-width:100%;min-height:1.65rem;align-items:center;gap:var(--space-1);padding:.15rem .45rem;border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800}.schedule-year-month__indicator{display:inline-flex;width:.45rem;height:.45rem;border-radius:var(--radius-pill);background:var(--fo-accent);box-shadow:0 0 0 .15rem #2155f51a}.schedule-year-month__count{color:var(--fo-accent-text);font-size:var(--text-xs);font-weight:850}.schedule-year-month__quiet{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700}@media (max-width: 1080px) and (min-width: 721px){.schedule-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 721px){.schedule-day-time-surface--dense .schedule-day-time-content{grid-template-columns:minmax(0,1fr)}.schedule-day-time-surface--dense .schedule-day-time-empty{width:min(100%,42rem)}.schedule-day-time-surface--dense .schedule-work-order-card--day-block{justify-self:start}.schedule-day-empty,.schedule-work-order-card{height:6.25rem;min-height:6.25rem}.schedule-day-empty{align-content:center}.schedule-work-order-card{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.schedule-work-order-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}@media (max-width: 720px){.schedule-page{overflow-x:clip}.schedule-header-actions,.schedule-view-switcher,.schedule-contractor-filter,.schedule-contractor-select{width:100%}.schedule-view-switcher{justify-content:center}.schedule-view-switcher__button{flex:1 1 0;padding-inline:var(--space-2)}.schedule-week-surface{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scroll-behavior:smooth;scroll-padding-inline:0;-webkit-overflow-scrolling:touch}.schedule-week-grid{display:grid;width:100%;min-width:100%;max-width:none;grid-auto-flow:column;grid-auto-columns:100%;grid-template-columns:none;gap:0}.schedule-day-column{width:100%;min-width:0;max-width:100%;min-height:22rem;box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;padding:var(--space-2)}.schedule-work-order-title{white-space:normal}.schedule-day-foundation-header,.schedule-day-time-header{align-items:flex-start;flex-direction:column}.schedule-day-time-slot{grid-template-columns:4.25rem minmax(0,1fr);min-height:4rem}.schedule-day-time-label{padding:var(--space-2) var(--space-1);font-size:var(--text-2xs)}.schedule-day-time-content{padding:var(--space-1)}.schedule-day-time-block-group,.schedule-day-time-block-group--stacked{width:100%;grid-template-columns:minmax(0,1fr)}.schedule-work-order-card--day-block{width:100%;max-width:100%;min-height:5.5rem}.schedule-month-surface{overflow:visible}.schedule-month-weekdays{gap:1px;margin-bottom:1px;font-size:.56rem;letter-spacing:.03em}.schedule-month-weekdays span{min-width:0;padding:0 0 .125rem;text-align:center}.schedule-month-grid{min-width:0;gap:1px;grid-auto-rows:minmax(3.05rem,1fr)}.schedule-month-day{min-width:0;min-height:3.05rem;gap:0;padding:.2rem;border-radius:var(--radius-sm);overflow:hidden}.schedule-month-day__header{min-height:100%;align-items:flex-start;padding:.05rem;font-size:var(--text-xs)}.schedule-month-day__count{min-width:1.1rem;min-height:1.1rem;padding:0 .25rem;font-size:.625rem;line-height:1}.schedule-month-day__jobs--desktop{display:none}.schedule-year-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-year-month{min-height:5.75rem;gap:var(--space-2);padding:var(--space-2)}.schedule-year-month__name{font-size:var(--text-sm)}.schedule-year-month__meta{min-height:1.45rem;padding-inline:.4rem;font-size:var(--text-2xs)}}.fo-admin-bottom-tabs{display:none;position:fixed;bottom:0;left:0;right:0;background:#1a1f2e;border-top:1px solid rgba(255,255,255,.1);z-index:50;padding-bottom:env(safe-area-inset-bottom,0px)}.fo-admin-bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 8px;background:transparent;border:none;color:#7a859e;font-size:var(--text-2xs);font-weight:400;cursor:pointer;font-family:inherit;transition:color .1s}.fo-admin-bottom-tab.fo-admin-bottom-tab-active{color:var(--fo-accent);font-weight:600}@media (max-width: 1023px){.fo-admin-bottom-tabs{display:flex;z-index:calc(var(--z-drawer) + 1)}.admin-main,.admin-main.shell{padding-bottom:0}.fo-table-wrapper,.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (min-width: 1024px){.fo-admin-bottom-tabs{display:none!important}}@media (max-width: 767px){.fo-page-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.fo-page-header-actions{width:100%;flex-wrap:wrap}.fo-page-search-row{flex-direction:column}.fo-page-search-row>*{width:100%}}@media (max-width: 1023px){.admin-work-orders-page .fo-backoffice-page-controls,.admin-billing-records-page .fo-backoffice-page-controls{width:100%;justify-content:stretch}.admin-work-orders-page .fo-backoffice-page-search,.admin-billing-records-page .fo-backoffice-page-search{flex:1 1 100%;width:100%}.admin-work-orders-page .fo-backoffice-page-search .fo-search-input,.admin-billing-records-page .fo-backoffice-page-search .fo-search-input{width:100%}.admin-work-orders-page .fo-backoffice-page-actions{width:100%;justify-content:stretch}.admin-work-orders-page .fo-backoffice-page-actions>*,.admin-work-orders-page .fo-backoffice-page-actions .fo-action-button{flex:1 1 12rem;min-width:0}.admin-work-order-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.admin-work-order-filter-grid select,.admin-work-order-date-filter-row input,.admin-work-order-date-filter-row .btn,.admin-billing-status-filter-row button{max-width:100%}}@media (max-width: 767px){.admin-work-order-filter-grid{grid-template-columns:minmax(0,1fr)!important}.admin-work-order-filter-grid select,.admin-work-order-date-filter-row label,.admin-work-order-date-filter-row input,.admin-work-order-date-filter-row .btn{width:100%}.admin-work-order-date-filter-row{align-items:stretch!important}.admin-work-order-date-filter-row label{justify-content:space-between}.admin-billing-summary-row,.admin-billing-status-filter-row{width:100%}.admin-billing-status-filter-row button{flex:1 1 calc(50% - 4px);min-width:0}}@media (max-width: 1023px){.admin-invoices-page .fo-backoffice-page-controls{width:100%;justify-content:stretch}.admin-invoices-page .fo-backoffice-page-search{flex:1 1 100%;width:100%}.admin-invoices-page .fo-backoffice-page-search .fo-search-input{width:100%}.admin-invoices-filter-row{grid-template-columns:minmax(0,1fr) minmax(10rem,auto)!important}.admin-invoices-status-filter,.admin-invoices-status-filter select{min-width:0;max-width:100%}}@media (max-width: 767px){.admin-invoices-filter-row{grid-template-columns:minmax(0,1fr)!important}.admin-invoices-summary-row,.admin-invoices-status-filter,.admin-invoices-status-filter select{width:100%}}:root{--fo-shell-visible-height: 100vh;--fo-shell-visible-width: 100vw}@supports (height: 100dvh){:root{--fo-shell-visible-height: 100dvh;--fo-shell-visible-width: 100dvw}}html:has(.admin-shell.fo-app-viewport-shell),body:has(.admin-shell.fo-app-viewport-shell),#root:has(.admin-shell.fo-app-viewport-shell){min-height:0;height:var(--fo-shell-visible-height);max-height:var(--fo-shell-visible-height);overflow:hidden}.admin-shell.fo-app-viewport-shell,.admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{position:relative;width:var(--fo-shell-visible-width);max-width:var(--fo-shell-visible-width);height:var(--fo-shell-visible-height);min-height:0;max-height:var(--fo-shell-visible-height);overflow:clip;gap:0;padding:0;background:var(--fo-shell-bg, var(--fo-bg-page))}.admin-shell.fo-app-viewport-shell>.fo-loading-bar,.admin-shell.fo-app-viewport-shell>.fo-pwa-titlebar,.admin-shell.fo-app-viewport-shell>.fo-pwa-titlebar-offset,.admin-shell.fo-app-viewport-shell>.admin-mobile-menu-button,.admin-shell.fo-app-viewport-shell>.admin-sidebar-backdrop{grid-column:1 / -1;grid-row:1 / -1}.admin-shell.fo-app-viewport-shell>.fo-pwa-titlebar-offset{position:absolute;top:0;left:0;width:0;height:env(titlebar-area-height,0px);overflow:hidden;pointer-events:none}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone{min-width:0;min-height:0}.admin-shell.fo-app-viewport-shell>.fo-main-working-area{min-width:0;min-height:0;max-width:none;width:100%;height:100%;max-height:100%;margin:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-sizing:border-box}.admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone{min-width:0;min-height:0;overflow:visible;background:#1a1f2e;border-top:1px solid rgba(255,255,255,.1);z-index:20}.admin-shell.fo-app-viewport-shell .fo-admin-bottom-tabs{position:static;left:auto;right:auto;bottom:auto;width:100%;z-index:auto;border-top:0;padding-bottom:0}.admin-shell.fo-app-viewport-shell .fo-contractor-bottom-tabs{width:100%;min-width:0;height:100%;display:flex;background:#1a1f2e;border-top:0}.admin-shell.fo-app-viewport-shell .fo-contractor-bottom-tab{flex:1 1 0;min-width:0;padding:10px 4px 8px;background:transparent;border:0;color:#7a859e;font-size:var(--text-2xs);font-weight:400;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.admin-shell.fo-app-viewport-shell .fo-contractor-bottom-tab-active{color:var(--fo-accent);font-weight:600}@media (min-width: 1024px){.admin-shell.fo-app-viewport-shell,.admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{grid-template-columns:var(--fo-shell-sidebar-rendered-width, var(--fo-shell-sidebar-outer-width, var(--fo-shell-sidebar-width, 18rem))) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone{grid-column:1;grid-row:1;display:flex;min-height:0}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar,.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.fo-sidebar-dark{position:relative;top:auto;left:auto;width:auto;min-width:0;max-width:none;height:var(--fo-shell-visible-height);max-height:var(--fo-shell-visible-height);transform:none;transition:none;z-index:auto;overflow:hidden;align-self:stretch;flex-direction:column}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar .fo-sidebar-nav-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar .fo-sidebar-footer{flex:0 0 auto}.admin-shell.fo-app-viewport-shell>.fo-main-working-area{grid-column:2;grid-row:1;padding:24px}.admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone{grid-column:2;grid-row:1;display:none!important}}@media (max-width: 1023px){.admin-shell.fo-app-viewport-shell,.admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.admin-shell.fo-app-viewport-shell>.fo-main-working-area,.admin-shell.fo-app-viewport-shell>.fo-main-working-area.admin-main,.admin-shell.fo-app-viewport-shell>.fo-main-working-area.admin-main.shell{grid-column:1;grid-row:1;min-height:0;height:100%;max-height:100%;padding:var(--space-3)}.admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden){grid-column:1;grid-row:2;display:block}.admin-shell.fo-app-viewport-shell .fo-admin-bottom-tabs{display:flex}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar,.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.fo-sidebar-dark{grid-column:1;grid-row:1 / 3;position:fixed;top:0;left:0;display:flex;width:min(var(--fo-shell-sidebar-width, 220px),calc(var(--fo-shell-visible-width) - 2rem));max-width:22rem;height:var(--fo-shell-visible-height);max-height:var(--fo-shell-visible-height);border-radius:0;transform:translate(-110%);transition:transform .2s ease;overflow:hidden;z-index:var(--z-drawer);flex-direction:column}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar .fo-sidebar-nav-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar .fo-sidebar-footer{flex:0 0 auto}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.open,.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.fo-sidebar-dark.open{transform:translate(0)}.admin-shell.fo-app-viewport-shell .fo-table-wrapper,.admin-shell.fo-app-viewport-shell .table-wrapper{min-height:0}}@media (max-width: 1023px){body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell,body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{--fo-mobile-bottom-nav-zone-height: calc(3.25rem + env(safe-area-inset-bottom, 0px)) ;grid-template-rows:minmax(0,1fr) var(--fo-mobile-bottom-nav-zone-height)}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-main-working-area.admin-main{grid-column:1;grid-row:1;padding-top:0!important}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone{grid-column:1;grid-row:2;display:block;height:var(--fo-mobile-bottom-nav-zone-height);min-height:var(--fo-mobile-bottom-nav-zone-height);max-height:var(--fo-mobile-bottom-nav-zone-height);overflow:hidden}}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell{--fo-mobile-bottom-nav-zone-height: calc(3.25rem + env(safe-area-inset-bottom, 0px)) ;--fo-drawer-visible-shell-top: 0px;--fo-drawer-visible-shell-left: 0px;--fo-drawer-visible-shell-right: 0px}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{grid-template-rows:minmax(0,1fr) var(--fo-mobile-bottom-nav-zone-height)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area{position:relative}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden){position:relative;z-index:30;height:var(--fo-mobile-bottom-nav-zone-height);min-height:var(--fo-mobile-bottom-nav-zone-height);max-height:var(--fo-mobile-bottom-nav-zone-height);padding-bottom:env(safe-area-inset-bottom,0px);overflow:hidden;box-sizing:border-box}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) .fo-admin-bottom-tabs{height:100%;min-height:0;align-items:stretch;padding-bottom:0;box-sizing:border-box}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) .fo-admin-bottom-tab{min-height:0;justify-content:center}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-backdrop{position:fixed;top:var(--fo-drawer-visible-shell-top);left:var(--fo-drawer-visible-shell-left);right:var(--fo-drawer-visible-shell-right);bottom:var(--fo-mobile-bottom-nav-zone-height);width:var(--fo-shell-visible-width);height:auto;max-height:none;z-index:24}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-standard,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-expanded,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer[style]{position:fixed;top:var(--fo-drawer-visible-shell-top);right:var(--fo-drawer-visible-shell-right);bottom:var(--fo-mobile-bottom-nav-zone-height);left:auto;z-index:25;width:min(var(--fo-shell-visible-width),42rem)!important;max-width:var(--fo-shell-visible-width);height:auto;max-height:none;min-height:0;border-left:0;border-radius:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.open{transform:translate(0)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-body,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-backoffice-drawer-body{min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-4)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-backoffice-drawer-footer{position:relative;z-index:1;flex:0 0 auto;padding-bottom:var(--space-4)}}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer.fo-drawer-footer-compact-actions,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-backoffice-drawer-footer.fo-drawer-footer-compact-actions{padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;justify-content:stretch;gap:6px;width:100%;max-width:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions)>*{min-width:0;max-width:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.workorders-action-row,.workorders-form-actions)>*{flex:0 1 auto}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions)>:not(button):not(a){grid-column:1 / -1}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-button,button,a){min-height:2.25rem}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-button,.fo-action-footer>button,.fo-action-footer>a,.fo-backoffice-drawer-action-row>button,.fo-backoffice-drawer-action-row>a,.workorders-action-row>button,.workorders-action-row>a,.workorders-form-actions>button,.workorders-form-actions>a){width:100%;padding:.3125rem .5rem;gap:.375rem;line-height:1.15;white-space:normal}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-button span{min-width:0;overflow-wrap:anywhere}}@media (max-width: 360px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions){grid-template-columns:minmax(0,1fr)}}.fo-sidebar-build-label{max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions){display:flex;flex-wrap:wrap;align-items:stretch;justify-content:flex-end;gap:6px}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-footer,.fo-backoffice-drawer-action-row,.workorders-action-row,.workorders-form-actions)>:is(.fo-action-button,button,a){flex:1 1 8.75rem;width:auto}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-button.fo-action-button-mobile-icon-only{position:relative;flex:0 0 2.25rem;inline-size:2.25rem;min-inline-size:2.25rem;max-inline-size:2.25rem;padding-inline:.3125rem}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-button.fo-action-button-mobile-icon-only .fo-action-button-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow{display:grid;grid-template-columns:2.25rem minmax(0,1fr) minmax(0,1fr) 2.25rem;grid-auto-flow:row dense;align-items:stretch;justify-content:stretch;gap:6px;width:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow>:is(.fo-action-button,button,a){width:100%;min-width:0;max-width:100%;flex:none}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow>.fo-action-button-role-utility.fo-action-button-mobile-icon-only{grid-column:span 1;inline-size:100%;min-inline-size:0;max-inline-size:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow>:is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow){grid-column:span 2}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow :is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow) .fo-action-button-label{white-space:nowrap;overflow-wrap:normal;word-break:normal}}@media (max-width: 360px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}}.fo-admin-page-surface{width:100%;height:100%}.fo-admin-page-surface>.fo-surface-content,.dashboard-page-content{display:grid;gap:var(--space-4);align-content:start}body.fo-contractor-mobile-no-sidebar .fo-contractor-screen.fo-surface-shell,body.fo-contractor-mobile-no-sidebar .fo-contractor-panel.fo-surface-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto}body.fo-contractor-mobile-no-sidebar .fo-contractor-screen.fo-surface-shell{flex:1 1 auto}.fo-panel-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1px;background:var(--fo-border);border:1px solid var(--fo-border);border-radius:10px;overflow:hidden;width:100%}.fo-panel-info-cell{min-width:0;background:var(--fo-surface);padding:10px 14px}.fo-panel-info-label{margin:0 0 3px;font-size:var(--text-2xs);color:var(--fo-text-muted);font-weight:600}.fo-panel-info-value{margin:0;min-width:0;font-size:var(--text-base);color:var(--fo-text);font-weight:500;line-height:1.45;overflow-wrap:break-word;word-break:break-word}.fo-panel-info-value :is(a,span,strong,em){overflow-wrap:break-word;word-break:break-word}.fo-panel-info-empty{color:var(--fo-text-muted);font-style:italic}.fo-live-detail-drawer-content{display:grid;gap:var(--space-4);align-content:start}.fo-live-detail-header-card{border:1px solid var(--fo-border);border-radius:14px;background:var(--fo-surface-subtle);padding:14px;min-width:0}.fo-work-order-detail{min-width:0;gap:var(--space-5)}.fo-work-order-detail-header{display:grid;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.fo-work-order-detail-header__eyebrow,.fo-work-order-detail-section__eyebrow,.fo-work-order-detail-item-group__title,.fo-work-order-detail-line-group__title,.fo-work-order-detail-card__eyebrow,.fo-work-order-detail-callout__eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;line-height:1.25;text-transform:uppercase;letter-spacing:.08em}.fo-work-order-detail-header__eyebrow{letter-spacing:.1em}.fo-work-order-detail-header__number{margin:0;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:600}.fo-work-order-detail-header__meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);min-width:0}.fo-work-order-detail-header__meta-item{min-width:0;color:var(--fo-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.fo-work-order-detail-timeline{display:flex;align-items:center;gap:0;width:100%;min-width:0;margin:var(--space-2) 0 0;padding:0 0 var(--space-1);overflow-x:auto}.fo-work-order-detail-timeline__step{display:flex;flex-direction:column;align-items:center;gap:3px;flex:0 0 auto;min-width:0}.fo-work-order-detail-timeline__dot{width:10px;height:10px;box-sizing:content-box;border-radius:var(--radius-pill);background:var(--fo-border)}.fo-work-order-detail-timeline__step.is-done .fo-work-order-detail-timeline__dot{background:var(--fo-accent)}.fo-work-order-detail-timeline__step.is-current .fo-work-order-detail-timeline__dot{border:2px solid var(--fo-accent)}.fo-work-order-detail-timeline__label{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:500;line-height:1.2;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.fo-work-order-detail-timeline__step.is-done .fo-work-order-detail-timeline__label{color:var(--fo-accent)}.fo-work-order-detail-timeline__step.is-current .fo-work-order-detail-timeline__label{font-weight:700}.fo-work-order-detail-timeline__connector{flex:1 1 1rem;min-width:16px;height:1px;margin-bottom:12px;background:var(--fo-border);opacity:.5}.fo-work-order-detail-timeline__connector.is-done{background:var(--fo-accent)}.fo-work-order-detail-section{min-width:0;margin-bottom:var(--space-5)}.fo-work-order-detail-section:last-child{margin-bottom:0}.fo-work-order-detail-section__heading{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.fo-work-order-detail-section__icon{color:var(--fo-text-muted)}.fo-work-order-detail-card,.fo-work-order-detail-callout,.fo-work-order-detail-item-card,.fo-work-order-detail-requirement,.fo-work-order-detail-completion-history__entry{min-width:0;border:1px solid var(--fo-border);border-radius:var(--radius-lg);padding:var(--space-3)}.fo-work-order-detail-card--subtle,.fo-work-order-detail-item-card,.fo-work-order-detail-requirement{background:var(--fo-surface-subtle)}.fo-work-order-detail-card__body,.fo-work-order-detail-callout__body,.fo-work-order-detail-item-card__note{margin:0;color:var(--fo-text);font-size:var(--text-md);line-height:1.6;overflow-wrap:anywhere}.fo-work-order-detail-card__eyebrow,.fo-work-order-detail-callout__eyebrow{margin-bottom:var(--space-1)}.fo-work-order-detail-callout{display:flex;align-items:flex-start;gap:var(--space-3)}.fo-work-order-detail-callout--warning{border-color:var(--fo-status-in-progress-border);background:var(--fo-status-in-progress-bg)}.fo-work-order-detail-callout--warning .fo-work-order-detail-callout__icon,.fo-work-order-detail-callout--warning .fo-work-order-detail-callout__eyebrow{color:var(--fo-status-in-progress-text)}.fo-work-order-detail-access-code{align-items:center;margin-top:var(--space-3);padding:var(--space-3) var(--space-4)}.fo-work-order-detail-access-code__value{color:var(--fo-status-in-progress-text);font-family:monospace;font-size:var(--text-xl);letter-spacing:.14em;overflow-wrap:anywhere}.fo-work-order-detail-meta,.fo-work-order-detail-empty,.fo-work-order-detail-item-card__meta,.fo-work-order-detail-item-card__source,.fo-work-order-detail-requirement__meta,.fo-work-order-detail-completion-history__date{margin:0;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.45}.fo-work-order-detail-empty--body{font-size:var(--text-sm)}.fo-work-order-detail-checklist-text.is-complete{text-decoration:line-through;opacity:.78}.fo-work-order-detail-checklist-provenance{margin-left:var(--space-2);font-size:var(--text-xs)}.fo-work-order-detail-requirements{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:var(--space-2);min-width:0}.fo-work-order-detail-requirement__title,.fo-work-order-detail-item-card__title,.fo-work-order-detail-completion-history__title{margin:0;color:var(--fo-text);font-size:var(--text-md);font-weight:700;line-height:1.35;overflow-wrap:anywhere}.fo-work-order-detail-requirement__meta,.fo-work-order-detail-item-card__meta,.fo-work-order-detail-item-card__note{margin-top:var(--space-1)}.fo-work-order-detail-item-group{display:grid;gap:var(--space-2);min-width:0;margin-top:var(--space-3)}.fo-work-order-detail-item-card--spaced{margin-bottom:var(--space-2)}.fo-work-order-detail-item-card__source{margin-top:var(--space-1);font-size:var(--text-2xs)}.fo-work-order-detail-completion-history{display:grid;gap:var(--space-3);min-width:0}.fo-work-order-detail-completion-history__entry{background:var(--fo-surface)}.fo-work-order-detail-completion-history__header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.fo-work-order-detail-history-row,.fo-work-order-detail-line-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);min-width:0;padding:var(--space-2) 0;border-bottom:1px solid var(--fo-border);color:var(--fo-text);font-size:var(--text-md)}.fo-work-order-detail-history-row__label,.fo-work-order-detail-history-row__value,.fo-work-order-detail-line-row>span{min-width:0;overflow-wrap:anywhere}.fo-work-order-detail-history-row__label--muted{color:var(--fo-text-muted)}.fo-work-order-detail-history-row__value,.fo-work-order-detail-line-row__value{text-align:right;white-space:pre-wrap}.fo-work-order-detail-line-group{min-width:0;margin-top:var(--space-3)}.fo-work-order-detail-line-group__title{margin-bottom:var(--space-2)}.fo-work-order-detail-block-spacer{margin-top:var(--space-3)}.fo-work-order-detail-completion-history-spacer{margin-top:var(--space-6)}.fo-work-order-detail-pre-wrap{white-space:pre-wrap}.fo-work-order-detail-feedback{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid;border-radius:var(--radius-sm);font-size:var(--text-md);line-height:1.45;overflow-wrap:anywhere}.fo-work-order-detail-feedback--success{color:var(--fo-status-approved-text);border-color:var(--fo-status-approved-border);background:var(--fo-status-approved-bg)}.fo-work-order-detail-feedback--error{color:var(--fo-status-cancelled-text);border-color:var(--fo-status-cancelled-border);background:var(--fo-status-cancelled-bg)}.fo-work-order-detail-dialog{width:min(28rem,calc(100vw - 2rem));max-width:28rem;max-height:calc(100dvh - 2rem);overflow:auto}.fo-work-order-detail-dialog__title,.fo-work-order-detail-purge-list{margin-top:0}@media (max-width: 720px){.fo-work-order-detail-header{padding:var(--space-4)}.fo-work-order-detail-history-row,.fo-work-order-detail-line-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1)}.fo-work-order-detail-history-row__value,.fo-work-order-detail-line-row__value{text-align:left}}@media (max-width: 720px){.fo-panel-info-grid{grid-template-columns:1fr}.fo-panel-info-cell{padding:12px 14px}}:root{--fo-safe-area-top: env(safe-area-inset-top, 0px);--fo-safe-area-right: env(safe-area-inset-right, 0px);--fo-safe-area-bottom: env(safe-area-inset-bottom, 0px);--fo-safe-area-left: env(safe-area-inset-left, 0px);--fo-mobile-touch-target: 2.75rem;--fo-mobile-compact-touch-target: 2.5rem;--fo-mobile-bottom-nav-safe-height: calc(var(--fo-mobile-bottom-nav-zone-height, 0px) + var(--fo-safe-area-bottom))}.fo-app-viewport-shell{padding-top:var(--fo-safe-area-top);padding-left:var(--fo-safe-area-left);padding-right:var(--fo-safe-area-right)}.fo-main-working-area,.fo-surface-content-scroll,.fo-drawer-body,.fo-backoffice-drawer-body,.fo-responsive-surface,.fo-responsive-surface-footer-slot{scroll-padding-top:calc(var(--space-6) + var(--fo-safe-area-top));scroll-padding-bottom:calc(var(--space-8) + var(--fo-mobile-bottom-nav-safe-height))}.fo-mobile-bottom-nav-zone{padding-left:var(--fo-safe-area-left);padding-right:var(--fo-safe-area-right);padding-bottom:var(--fo-safe-area-bottom)}.fo-surface-footer-viewport-edge,.fo-responsive-surface-footer-slot{padding-bottom:calc(var(--space-3) + var(--fo-safe-area-bottom))}.fo-drawer{top:var(--fo-safe-area-top);right:var(--fo-safe-area-right);bottom:var(--fo-safe-area-bottom);max-height:calc(100dvh - var(--fo-safe-area-top) - var(--fo-safe-area-bottom))}.fo-drawer-backdrop{inset:var(--fo-safe-area-top) var(--fo-safe-area-right) var(--fo-safe-area-bottom) var(--fo-safe-area-left)}.fo-drawer-header,.fo-backoffice-drawer-header{padding-top:calc(var(--space-4) + var(--fo-safe-area-top));padding-right:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-right)));padding-left:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-left)))}.fo-drawer-body,.fo-backoffice-drawer-body{padding-right:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-right)));padding-left:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-left)));padding-bottom:calc(var(--space-6) + var(--fo-safe-area-bottom))}.fo-drawer-footer,.fo-backoffice-drawer-footer{padding-right:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-right)));padding-bottom:calc(var(--space-4) + var(--fo-safe-area-bottom));padding-left:max(var(--space-6),calc(var(--space-4) + var(--fo-safe-area-left)))}.fo-backoffice-drawer-header-actions,.fo-panel-engine-chrome,.fo-panel-engine-field-controls,.fo-panel-engine-layout-controls,.fo-action-footer,.fo-backoffice-drawer-action-row{touch-action:manipulation}@media (hover: none),(pointer: coarse),(max-width: 1023px){.btn,.fo-action-button,.fo-drawer :is(button,a[role=button]),.fo-responsive-surface :is(button,a[role=button]),.fo-panel-engine :is(button,summary,.btn),.fo-backoffice-drawer-icon-button,.admin-mobile-menu-button,.admin-mobile-close-button,.fo-admin-bottom-tab,.fo-backoffice-drawer-tabs button{min-height:var(--fo-mobile-compact-touch-target)}.fo-backoffice-drawer-icon-button,.btn-icon,.admin-mobile-menu-button,.admin-mobile-close-button,.fo-panel-engine-drag-handle,.fo-panel-engine-field-controls>button,.fo-panel-engine-chrome>button{min-width:var(--fo-mobile-compact-touch-target)!important;min-height:var(--fo-mobile-compact-touch-target)!important}.fo-panel-engine-field-controls{gap:6px!important;margin-left:0!important;margin-top:6px!important;flex-wrap:wrap}.fo-panel-engine-field-controls>button,.fo-panel-engine-chrome>button,.fo-panel-engine-layout-controls :is(button,summary,.btn){padding:.4rem .55rem!important;line-height:1.1!important}.fo-panel-engine-chrome{gap:8px!important}.fo-panel-engine-add-panel-dialog-backdrop,.fo-panel-engine-popover-backdrop{padding-top:calc(var(--space-4) + var(--fo-safe-area-top))!important;padding-right:max(var(--space-4),var(--fo-safe-area-right))!important;padding-bottom:calc(var(--space-6) + var(--fo-safe-area-bottom))!important;padding-left:max(var(--space-4),var(--fo-safe-area-left))!important}.fo-panel-engine-add-panel-dialog,.fo-panel-engine-popover-dialog{max-width:calc(100dvw - var(--fo-safe-area-left) - var(--fo-safe-area-right) - 24px)!important;max-height:calc(100dvh - var(--fo-safe-area-top) - var(--fo-safe-area-bottom) - 32px)!important;scroll-padding-bottom:calc(var(--space-8) + var(--fo-safe-area-bottom))}:is(input,textarea,select,[contenteditable=true]):focus{scroll-margin-top:calc(var(--space-8) + var(--fo-safe-area-top));scroll-margin-bottom:calc(var(--space-8) + var(--fo-mobile-bottom-nav-safe-height))}}@media (max-width: 1023px){.fo-app-viewport-shell{padding-top:0;padding-left:0;padding-right:0}.admin-shell.fo-app-viewport-shell>.fo-main-working-area{padding-left:var(--fo-safe-area-left);padding-right:var(--fo-safe-area-right);scroll-padding-bottom:calc(var(--space-8) + var(--fo-mobile-bottom-nav-safe-height))}.admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone{padding-left:var(--fo-safe-area-left);padding-right:var(--fo-safe-area-right);padding-bottom:var(--fo-safe-area-bottom)}.admin-mobile-menu-button{top:max(var(--space-3),calc(var(--space-2) + var(--fo-safe-area-top)));left:max(var(--space-3),calc(var(--space-2) + var(--fo-safe-area-left)));min-width:var(--fo-mobile-touch-target);min-height:var(--fo-mobile-touch-target)}.admin-sidebar.fo-sidebar-dark{padding-top:calc(20px + var(--fo-safe-area-top));padding-left:max(var(--fo-shell-sidebar-x-padding, 12px),var(--fo-safe-area-left));padding-bottom:calc(20px + var(--fo-safe-area-bottom));height:100dvh;max-height:100dvh}.admin-sidebar-backdrop{inset:var(--fo-safe-area-top) var(--fo-safe-area-right) var(--fo-mobile-bottom-nav-safe-height) var(--fo-safe-area-left)}.fo-drawer,.fo-drawer.fo-drawer-standard,.fo-drawer.fo-drawer-expanded,.fo-drawer[style]{top:var(--fo-safe-area-top)!important;right:var(--fo-safe-area-right)!important;bottom:var(--fo-mobile-bottom-nav-safe-height)!important;width:min(calc(100dvw - var(--fo-safe-area-left) - var(--fo-safe-area-right)),42rem)!important;max-width:calc(100dvw - var(--fo-safe-area-left) - var(--fo-safe-area-right))!important;max-height:calc(100dvh - var(--fo-safe-area-top) - var(--fo-mobile-bottom-nav-safe-height))!important}.fo-drawer-backdrop{inset:var(--fo-safe-area-top) var(--fo-safe-area-right) var(--fo-mobile-bottom-nav-safe-height) var(--fo-safe-area-left)}.fo-drawer-header,.fo-backoffice-drawer-header{padding-top:max(var(--space-3),calc(var(--space-2) + var(--fo-safe-area-top)));padding-right:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-right)));padding-left:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-left)))}.fo-drawer-body,.fo-backoffice-drawer-body{padding-right:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-right)));padding-left:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-left)));padding-bottom:calc(var(--space-8) + var(--fo-safe-area-bottom))}.fo-drawer-footer,.fo-backoffice-drawer-footer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer.fo-drawer-footer-compact-actions,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-backoffice-drawer-footer.fo-drawer-footer-compact-actions{padding-right:max(10px,calc(8px + var(--fo-safe-area-right)));padding-bottom:calc(8px + var(--fo-safe-area-bottom));padding-left:max(10px,calc(8px + var(--fo-safe-area-left)))}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions :is(.fo-action-button,button,a){min-height:var(--fo-mobile-compact-touch-target)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-button.fo-action-button-mobile-icon-only{flex-basis:var(--fo-mobile-compact-touch-target);inline-size:var(--fo-mobile-compact-touch-target);min-inline-size:var(--fo-mobile-compact-touch-target);max-inline-size:var(--fo-mobile-compact-touch-target)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .fo-action-footer-layout-mixed-workflow{grid-template-columns:var(--fo-mobile-compact-touch-target) minmax(0,1fr) minmax(0,1fr) var(--fo-mobile-compact-touch-target)}.fo-responsive-surface-footer-slot{padding-bottom:calc(var(--space-3) + var(--fo-safe-area-bottom))}}@media (min-width: 1024px){.fo-drawer{top:0;right:0;bottom:0;max-height:100vh}.fo-drawer-backdrop{top:0;right:0;bottom:0;left:0}.fo-app-viewport-shell{padding:0}}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-backdrop{z-index:calc(var(--z-drawer) - 1)!important}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-backdrop[data-fo-drawer-stack-nested=true]{z-index:calc(var(--z-drawer) + var(--fo-drawer-stack-backdrop-offset))!important}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-standard,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-expanded,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer[style]{z-index:var(--z-drawer)!important;bottom:var(--fo-mobile-bottom-nav-zone-height)!important;max-height:calc(var(--fo-shell-visible-height) - var(--fo-mobile-bottom-nav-zone-height) - var(--fo-safe-area-top))!important}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer[data-fo-drawer-stack-nested=true]{z-index:calc(var(--z-drawer) + var(--fo-drawer-stack-drawer-offset))!important}.fo-drawer-header,.fo-backoffice-drawer-header{align-items:center;min-height:calc(var(--fo-mobile-touch-target) + var(--space-3));padding-top:max(var(--space-3),calc(var(--space-2) + var(--fo-safe-area-top)))!important;padding-right:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-right)))!important;padding-left:max(calc(var(--fo-mobile-touch-target) + var(--space-5)),calc(var(--space-4) + var(--fo-safe-area-left)))!important}.fo-backoffice-drawer-heading{min-width:0;padding-right:var(--space-2)}.fo-backoffice-drawer-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.fo-drawer-footer,.fo-backoffice-drawer-footer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-backoffice-drawer-footer{padding-bottom:calc(var(--space-4) + var(--fo-safe-area-bottom))!important}.fo-panel-engine-field-controls,.fo-panel-engine-chrome{gap:8px!important}.fo-panel-engine-field-controls>button,.fo-panel-engine-chrome>button,.fo-panel-engine-drag-handle,.fo-panel-engine-layout-controls :is(button,summary,.btn){min-width:var(--fo-mobile-touch-target)!important;min-height:var(--fo-mobile-touch-target)!important;padding:.55rem .65rem!important}.fo-panel-engine-field-controls svg,.fo-panel-engine-chrome svg,.fo-panel-engine-drag-handle svg,.fo-panel-engine-layout-controls svg{width:1.05rem!important;height:1.05rem!important}.fo-drawer .workorder-status-timeline{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:7px!important;overflow-x:hidden!important;padding:2px 0 12px!important}.fo-drawer .workorder-status-timeline-step{display:grid!important;grid-template-columns:14px minmax(0,1fr)!important;align-items:center!important;justify-content:start!important;gap:8px!important;min-width:0!important;width:100%!important;text-align:left!important}.fo-drawer .workorder-status-timeline-step>div:first-child{width:9px!important;height:9px!important;justify-self:center}.fo-drawer .workorder-status-timeline-step:not(.workorder-status-timeline-step-last):after,.fo-drawer .workorder-status-timeline-connector{display:none!important;content:none!important}.fo-drawer .workorder-status-timeline-label{display:block!important;width:auto!important;min-width:0!important;font-size:var(--text-xs)!important;line-height:1.25!important;letter-spacing:.025em!important;white-space:normal!important;overflow:visible!important;text-align:left!important;text-overflow:initial!important;text-transform:uppercase}.fo-drawer .workorder-status-timeline-label:after{content:none!important;display:none!important}}@media (max-width: 1023px){.fo-drawer-header,.fo-backoffice-drawer-header{min-height:auto!important;padding-left:max(var(--space-4),calc(var(--space-3) + var(--fo-safe-area-left)))!important}.fo-panel-engine-field-controls{gap:5px!important;margin-top:2px!important;align-items:center!important}.fo-panel-engine-field-controls>button,.fo-panel-engine-chrome>button,.fo-panel-engine-drag-handle{min-width:var(--fo-mobile-compact-touch-target)!important;min-height:var(--fo-mobile-compact-touch-target)!important;padding:.35rem .5rem!important;line-height:1!important}.fo-panel-engine-layout-controls :is(button,summary,.btn){min-height:var(--fo-mobile-compact-touch-target)!important;padding-top:.4rem!important;padding-bottom:.4rem!important}.fo-panel-engine-field-controls svg,.fo-panel-engine-chrome svg,.fo-panel-engine-drag-handle svg,.fo-panel-engine-layout-controls svg{width:1rem!important;height:1rem!important}}@media (hover: none),(pointer: coarse),(max-width: 1023px){.fo-panel-engine-panel-settings-menu .fo-panel-engine-settings-switch{width:46px!important;min-width:46px!important;max-width:46px!important;height:28px!important;min-height:28px!important;max-height:28px!important;padding:0!important;overflow:hidden!important;align-self:center!important}.fo-panel-engine-panel-settings-menu .fo-panel-engine-settings-switch>span{width:22px!important;height:22px!important;top:3px!important}}.cleanup-restore-mobile-list{display:none}.cleanup-restore-mobile-card{border:1px solid var(--fo-border);border-radius:18px;background:var(--fo-surface);box-shadow:0 12px 24px #0f172a0d;padding:14px;display:grid;gap:12px;min-width:0}.cleanup-restore-mobile-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cleanup-restore-mobile-card__title{color:var(--fo-text);font-weight:700;min-width:0;overflow-wrap:anywhere}.cleanup-restore-mobile-card__status{flex:0 0 auto;border:1px solid var(--fo-border);border-radius:999px;background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;line-height:1.2;padding:5px 8px;text-align:right}.cleanup-restore-mobile-card__code{color:var(--fo-text-muted);font-size:var(--text-xs);overflow-wrap:anywhere}.cleanup-restore-mobile-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:0}.cleanup-restore-mobile-card__meta div{display:grid;gap:3px;min-width:0}.cleanup-restore-mobile-card__meta dt{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.cleanup-restore-mobile-card__meta dd{color:var(--fo-text);font-size:var(--text-sm);margin:0;min-width:0;overflow-wrap:anywhere}.cleanup-restore-mobile-card__actions{border-top:1px solid var(--fo-border);padding-top:12px}.cleanup-restore-mobile-card__actions .button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cleanup-restore-mobile-card__actions .fo-action-button,.cleanup-restore-mobile-card__actions .btn{justify-content:center;min-height:44px;width:100%}.cleanup-restore-mobile-empty{border:1px dashed var(--fo-border);border-radius:18px;background:var(--fo-surface-subtle);color:var(--fo-text-muted);padding:16px;text-align:center}@media (max-width: 760px){.cleanup-restore-desktop-table{display:none}.cleanup-restore-mobile-list{display:grid;gap:12px}.cleanup-restore-mobile-card__header{display:grid}.cleanup-restore-mobile-card__status{justify-self:start;text-align:left}.cleanup-restore-mobile-card__meta,.cleanup-restore-mobile-card__actions .button-row{grid-template-columns:minmax(0,1fr)}}.fo-pwa-status-panel{display:grid;gap:8px}.fo-pwa-status-panel-quiet{gap:0}.fo-pwa-status-card{display:grid;gap:6px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#ffffff0b}.fo-pwa-status-card-update{border-color:#2155f573;background:#2155f529}.fo-pwa-status-title,.fo-pwa-status-copy{margin:0}.fo-pwa-status-title{color:#fff;font-size:var(--text-2xs);font-weight:700;letter-spacing:.02em}.fo-pwa-status-copy{color:var(--fo-shell-sidebar-muted);font-size:var(--text-2xs);line-height:1.35}.fo-sidebar-install-button,.fo-sidebar-install-instruction,.fo-sidebar-update-check-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:0;padding:5px 8px;border-radius:6px;font-size:var(--text-2xs);font-weight:600}.fo-sidebar-install-instruction{justify-content:flex-start;border:0;background:transparent;color:var(--fo-shell-sidebar-muted);cursor:default;pointer-events:none}.fo-sidebar-install-button svg,.fo-sidebar-install-instruction svg,.fo-sidebar-update-check-button svg,.fo-sidebar-update-button svg{flex:0 0 auto}.fo-pwa-update-banner{position:fixed;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(var(--fo-mobile-bottom-nav-height, 64px) + env(safe-area-inset-bottom) + 10px);z-index:35;display:none;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px 9px 12px;border:1px solid rgba(33,85,245,.34);border-radius:14px;background:#141d33f5;box-shadow:0 14px 35px #00000038;color:#fff;font-size:var(--text-xs);font-weight:700;pointer-events:auto}.fo-pwa-update-banner-button{min-height:34px;padding:6px 10px;border-radius:999px}@media (max-width: 1023px){.fo-pwa-update-banner{display:flex}}@media (max-width: 1023px){.admin-shell.fo-app-viewport-shell>.admin-sidebar-backdrop.open{z-index:calc(var(--z-drawer) + 2)}.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.open,.admin-shell.fo-app-viewport-shell>.fo-sidebar-zone.admin-sidebar.fo-sidebar-dark.open{z-index:calc(var(--z-drawer) + 3)}}@media (max-width: 1023px){body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell,body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{--fo-mobile-bottom-nav-content-height: clamp(4rem, 4rem + var(--fo-safe-area-bottom), 4.5rem);--fo-mobile-bottom-nav-safe-clearance: max(var(--fo-safe-area-bottom), .5rem);--fo-mobile-bottom-nav-zone-height: calc(var(--fo-mobile-bottom-nav-content-height) + var(--fo-mobile-bottom-nav-safe-clearance));--fo-mobile-bottom-nav-safe-height: var(--fo-mobile-bottom-nav-zone-height);grid-template-rows:minmax(0,1fr) var(--fo-mobile-bottom-nav-zone-height)}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden),body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden){grid-column:1;grid-row:2;display:grid;grid-template-rows:minmax(var(--fo-mobile-compact-touch-target),var(--fo-mobile-bottom-nav-content-height)) minmax(0,var(--fo-mobile-bottom-nav-safe-clearance));align-items:stretch;justify-content:stretch;height:var(--fo-mobile-bottom-nav-zone-height);min-height:var(--fo-mobile-bottom-nav-zone-height);max-height:var(--fo-mobile-bottom-nav-zone-height);padding-top:0;padding-right:var(--fo-safe-area-right);padding-bottom:0;padding-left:var(--fo-safe-area-left);overflow:visible;isolation:isolate;box-sizing:border-box;background:#1a1f2e}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden):after,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden):after{content:"";display:block;grid-row:2;min-height:var(--fo-mobile-bottom-nav-safe-clearance);background:inherit;pointer-events:none}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tabs,.fo-contractor-bottom-tabs),body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tabs,.fo-contractor-bottom-tabs){grid-row:1;align-self:stretch;width:100%;height:var(--fo-mobile-bottom-nav-content-height);min-height:var(--fo-mobile-compact-touch-target);max-height:none;padding-top:0;padding-bottom:0;margin:0;box-sizing:border-box;background:transparent;align-items:stretch;min-width:0;overflow:visible;position:relative;z-index:1;visibility:visible;opacity:1}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab),body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab){flex:1 1 0;min-width:0;min-height:var(--fo-mobile-compact-touch-target);max-height:none;height:auto;justify-content:center;align-items:center;padding-top:.5rem;padding-bottom:.45rem;box-sizing:border-box;overflow:visible;position:relative;z-index:2;visibility:visible;opacity:1;line-height:1.05}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab) :is(svg,span),body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab) :is(svg,span){flex:0 0 auto;min-width:0;max-width:100%;visibility:visible;opacity:1}@media (orientation: landscape) and (max-height: 540px){body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell,body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell.fo-app-viewport-shell-has-mobile-bottom-nav{--fo-mobile-bottom-nav-content-height: max(3.75rem, var(--fo-mobile-compact-touch-target));--fo-mobile-bottom-nav-safe-clearance: max(var(--fo-safe-area-bottom), .125rem)}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab),body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-mobile-bottom-nav-zone:not(.fo-mobile-bottom-nav-zone-hidden) :is(.fo-admin-bottom-tab,.fo-contractor-bottom-tab){padding-top:.35rem;padding-bottom:.3rem}}body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer,body.fo-contractor-mobile-no-sidebar .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-backdrop,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-backdrop{bottom:var(--fo-mobile-bottom-nav-zone-height)}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-standard,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer.fo-drawer-expanded,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer[style]{bottom:var(--fo-mobile-bottom-nav-zone-height)!important;max-height:calc(var(--fo-shell-visible-height) - var(--fo-mobile-bottom-nav-zone-height) - var(--fo-safe-area-top))!important}}.fo-destructive-confirmation-backdrop{align-items:center;overflow-y:auto;padding-bottom:max(var(--space-4),env(safe-area-inset-bottom))}.fo-destructive-confirmation-dialog{outline:none;width:min(100%,36rem)}.fo-destructive-confirmation-eyebrow{color:var(--fo-text-danger);margin:0}.fo-destructive-confirmation-actions{justify-content:flex-end;flex-wrap:wrap}.fo-setup-fullscreen-shell{box-sizing:border-box;width:100vw;min-width:100vw;max-width:100vw;min-height:100dvh;margin:0;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));display:grid;place-items:center;overflow-x:hidden;background:radial-gradient(circle at top left,rgba(42,96,183,.13),transparent 32rem),linear-gradient(135deg,#f6f8fb,#edf2f7)}.fo-setup-fullscreen-card{box-sizing:border-box;width:min(100%,46rem);max-width:46rem;margin:0;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--border-subtle, #d9e1ec);border-radius:24px;background:var(--surface, #ffffff);box-shadow:0 24px 80px #0f172a24}.fo-setup-fullscreen-card-wide{width:min(100%,72rem);max-width:72rem}.fo-setup-fullscreen-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.fo-setup-fullscreen-logo{width:3rem;height:3rem;object-fit:contain;flex:0 0 auto}.fo-setup-fullscreen-content,.fo-setup-step-surface{min-width:0}.fo-setup-fullscreen-build-label{margin:1.25rem 0 0;color:var(--text-muted, #5a6272);font-size:var(--text-xs, .75rem);text-align:right;overflow-wrap:anywhere}@media (max-width: 720px){.fo-setup-fullscreen-shell{align-items:stretch;place-items:stretch;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left))}.fo-setup-fullscreen-card,.fo-setup-fullscreen-card-wide{width:100%;max-width:none;min-height:calc(100dvh - max(1.5rem,env(safe-area-inset-top)) - max(1.5rem,env(safe-area-inset-bottom)));border-radius:20px}.fo-setup-fullscreen-header{align-items:flex-start}}.fo-onboarding-shell{box-sizing:border-box;display:flex;width:100vw;min-width:100vw;max-width:100vw;min-height:100dvh;height:100dvh;margin:0;overflow:hidden;background:#0b1220;color:#0b1220}.fo-onboarding-left-panel{position:relative;width:360px;flex:0 0 360px;display:flex;flex-direction:column;padding:48px 40px;overflow:hidden;background:#0b1220;color:#fff}.fo-onboarding-left-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(33,85,245,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(33,85,245,.06) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.fo-onboarding-left-panel:after{content:"";position:absolute;bottom:-80px;left:-80px;width:380px;height:380px;background:radial-gradient(circle,rgba(33,85,245,.22) 0%,rgba(33,85,245,.06) 50%,transparent 70%);pointer-events:none}.fo-onboarding-left-logo,.fo-onboarding-left-content,.fo-onboarding-step-list{position:relative;z-index:1}.fo-onboarding-logo-mark{width:132px;height:auto;object-fit:contain}.fo-onboarding-left-content{flex:1;display:flex;flex-direction:column;justify-content:center}.fo-onboarding-left-tagline{margin:0 0 16px;font-family:var(--font-heading, inherit);font-size:28px;font-weight:700;line-height:1.25;letter-spacing:-.5px;color:#fff}.fo-onboarding-left-tagline span{color:#7a9af9}.fo-onboarding-left-sub{margin:0;color:#8a94a6;font-size:14px;line-height:1.6}.fo-onboarding-step-list{list-style:none;display:flex;flex-direction:column;gap:4px;margin:0;padding:0}.fo-onboarding-step-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px}.fo-onboarding-step-item.active{background:#2155f526}.fo-onboarding-step-dot{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;font-size:11px;font-weight:700}.fo-onboarding-step-dot.done{background:#2155f5;color:#fff}.fo-onboarding-step-dot.active{background:#fff;color:#0b1220;box-shadow:0 0 0 3px #2155f566}.fo-onboarding-step-dot.upcoming{border:1px solid #2e3b4e;background:#253040;color:#8a94a6}.fo-onboarding-step-label{font-size:13.5px;font-weight:600}.fo-onboarding-step-item.active .fo-onboarding-step-label{color:#fff}.fo-onboarding-step-item.done .fo-onboarding-step-label{color:#b0b8c4}.fo-onboarding-step-item.upcoming .fo-onboarding-step-label{color:#8a94a6}.fo-onboarding-right-panel{position:relative;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;overflow-y:auto;background:#f2f4f7;padding:40px}.fo-onboarding-content-card{width:min(100%,960px);margin:auto;background:#fff;border:1px solid #d4d8de;border-radius:24px;box-shadow:0 12px 40px #00000024,0 4px 12px #00000014;overflow:hidden}.fo-onboarding-content-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:32px 36px 20px;border-bottom:1px solid #e5e7eb}.fo-onboarding-content-header h1{margin:0 0 8px;font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.8px}.fo-onboarding-content-header p{margin:0;color:#4a5568}.fo-onboarding-eyebrow{margin:0 0 10px!important;color:#2155f5!important;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fo-onboarding-content-body{padding:28px 36px 34px}.fo-onboarding-content-card>.fo-onboarding-content-body:first-child{padding-top:36px}.fo-onboarding-build-label{width:min(100%,960px);margin:12px auto 0;color:#5a6272;font-size:var(--text-xs, .75rem);text-align:right;opacity:.72;overflow-wrap:anywhere}.fo-onboarding-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.fo-onboarding-section-card{border:1px solid #d4d8de;border-radius:16px;background:#fff;padding:20px}.fo-onboarding-section-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.fo-onboarding-template-list{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;border:1.5px solid #d4d8de;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 2px 8px #0b12200d}.fo-onboarding-template-row{width:100%;border:0;border-bottom:1px solid #f2f4f7;border-radius:0;background:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 20px;text-align:left;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.fo-onboarding-template-list li:last-child .fo-onboarding-template-row{border-bottom:0}.fo-onboarding-template-row:hover{background:#f2f4f7}.fo-onboarding-template-row:focus-visible{outline:3px solid rgba(33,85,245,.22);outline-offset:-3px}.fo-onboarding-template-row.selected{background:#e8effe;border-bottom-color:#2155f51a}.fo-onboarding-template-radio{width:18px;height:18px;border-radius:999px;border:2px solid #b0b8c4;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:border-color .15s ease,background .15s ease}.fo-onboarding-template-radio>span{width:6px;height:6px;border-radius:999px;background:#fff;opacity:0;transform:scale(0);transition:opacity .15s ease,transform .15s ease}.fo-onboarding-template-row.selected .fo-onboarding-template-radio{border-color:#2155f5;background:#2155f5}.fo-onboarding-template-row.selected .fo-onboarding-template-radio>span{opacity:1;transform:scale(1)}.fo-onboarding-template-info{min-width:0}.fo-onboarding-template-name{display:block;font-size:14px;font-weight:700;color:#0b1220}.fo-onboarding-template-description{display:block;margin-top:2px;color:#5f6b7a;font-size:12.5px;line-height:1.45}.fo-onboarding-template-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.fo-onboarding-template-preview-btn{height:32px;padding:0 14px;border-radius:10px;border:1.5px solid #d4d8de;background:#fff;color:#253040;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .15s ease,color .15s ease,box-shadow .15s ease}.fo-onboarding-template-preview-btn:hover,.fo-onboarding-template-preview-btn:focus-visible{border-color:#2155f5;color:#2155f5;box-shadow:0 0 0 3px #2155f51a}.fo-onboarding-template-preview-btn:disabled{opacity:.62;cursor:wait}.fo-onboarding-preview-kicker{margin:0 0 6px;font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--fo-text-muted)}.fo-onboarding-work-order-preview-meta,.fo-onboarding-customer-preview-meta,.fo-onboarding-customer-preview-address{display:flex;align-items:center;gap:8px;color:var(--fo-text-muted);font-size:var(--text-sm)}.fo-onboarding-customer-preview-meta{color:var(--fo-text-strong);font-weight:700;margin-bottom:8px}.fo-onboarding-work-order-preview-timeline{display:flex;gap:0;align-items:center;margin-top:16px;margin-bottom:0;overflow-x:auto;padding-bottom:2px}.fo-onboarding-preview-empty-field,.fo-onboarding-preview-field{display:grid;grid-template-columns:minmax(8rem,.55fr) minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid #eef2f7}.fo-onboarding-preview-field:last-child{border-bottom:0}.fo-onboarding-preview-label{color:#5a6272;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.fo-onboarding-preview-value{color:#0b1220;font-weight:600}@media (max-width: 860px){.fo-onboarding-shell{height:auto;min-height:100dvh;overflow-y:auto;flex-direction:column}.fo-onboarding-left-panel{width:100%;flex-basis:auto;min-height:auto;padding:max(20px,env(safe-area-inset-top)) 22px 22px}.fo-onboarding-left-content{margin:28px 0 22px}.fo-onboarding-left-tagline{font-size:24px}.fo-onboarding-right-panel{min-height:auto;overflow:visible;padding:18px max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.fo-onboarding-content-card{margin:0;border-radius:20px}.fo-onboarding-content-header,.fo-onboarding-content-body{padding-left:20px;padding-right:20px}.fo-onboarding-content-card>.fo-onboarding-content-body:first-child{padding-top:24px}.fo-onboarding-form-grid,.fo-onboarding-template-row{grid-template-columns:1fr}.fo-onboarding-template-actions{justify-content:flex-start}}.fo-onboarding-step-surface{display:grid;gap:22px}.fo-onboarding-progress-track{height:6px;overflow:hidden;border-radius:999px;background:#e8edf5}.fo-onboarding-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#2155f5,#4d77f7);transition:width .2s ease}.fo-onboarding-inner-step-list{display:flex;flex-wrap:wrap;gap:8px}.fo-onboarding-inner-step{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #d4d8de;border-radius:999px;color:#647084;background:#fff;font-size:var(--text-xs);font-weight:700}.fo-onboarding-inner-step>span{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:#edf2f7;color:#647084;font-size:11px}.fo-onboarding-inner-step.active{border-color:#2155f552;background:#eef4ff;color:#163fbd}.fo-onboarding-inner-step.active>span,.fo-onboarding-inner-step.done>span{background:#2155f5;color:#fff}.fo-onboarding-screen{display:flex;flex-direction:column;gap:18px;min-height:420px}.fo-onboarding-screen-eyebrow{margin:0;color:#2155f5;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.fo-onboarding-screen-title{margin:0;color:#0b1220;font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-.04em}.fo-onboarding-screen-subtitle{max-width:640px;margin:0;color:#5f6b7a;font-size:var(--text-base);line-height:1.65}.fo-onboarding-welcome-graphic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8px}.fo-onboarding-welcome-card{display:grid;gap:10px;align-content:start;min-height:170px;padding:20px;border:1px solid #d4d8de;border-radius:18px;background:#fff;box-shadow:0 8px 24px #0b12200f}.fo-onboarding-welcome-card strong{color:#0b1220;font-size:var(--text-base)}.fo-onboarding-welcome-card span:last-child{color:#5f6b7a;font-size:var(--text-sm);line-height:1.5}.fo-onboarding-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;color:#2155f5;background:#2155f514}.fo-onboarding-footer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:18px;border-top:1px solid #e5e7eb}.fo-onboarding-step-counter{color:#8a94a6;font-size:var(--text-sm);font-weight:700}.fo-onboarding-primary-large{min-height:48px;padding-inline:22px;border-radius:14px;gap:8px}.fo-onboarding-form-section-label{margin:4px 0 -4px;color:#0b1220;font-size:var(--text-xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fo-onboarding-form-grid.single{grid-template-columns:minmax(0,1fr)}.fo-onboarding-editor-preview-grid{display:grid;gap:10px}.fo-onboarding-editor-preview-field,.fo-onboarding-editor-preview-empty{display:grid;grid-template-columns:minmax(9rem,.5fr) minmax(0,1fr);gap:14px;align-items:center;min-height:44px;padding:10px 12px;border:1px solid #e4e8ef;border-radius:12px;background:#f8fafc}.fo-onboarding-editor-preview-field .fo-onboarding-preview-value{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}@media (max-width: 860px){.fo-onboarding-welcome-graphic,.fo-onboarding-editor-preview-field,.fo-onboarding-editor-preview-empty{grid-template-columns:1fr}.fo-onboarding-footer-actions{align-items:stretch;flex-direction:column}.fo-onboarding-footer-actions .cluster{justify-content:flex-start}}.fo-onboarding-shell{height:100dvh;overflow:hidden}.fo-onboarding-right-panel{min-height:0;overflow:hidden}.fo-onboarding-content-card{display:flex;flex-direction:column;max-height:calc(100dvh - 104px);min-height:min(720px,calc(100dvh - 104px))}.fo-onboarding-content-body{min-height:0;overflow:hidden;display:flex;flex-direction:column}.fo-onboarding-step-surface{min-height:0;overflow:hidden;display:flex;flex-direction:column;flex:1 1 auto}.fo-onboarding-screen{min-height:0;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.fo-onboarding-footer-actions{position:sticky;bottom:0;z-index:2;background:linear-gradient(180deg,#ffffffeb,#fff 24%);padding-bottom:2px}.fo-onboarding-form-grid.triple,.fo-onboarding-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fo-onboarding-action-card,.fo-onboarding-destination-button,.fo-onboarding-user-row,.fo-onboarding-add-team-form{border:1px solid #d4d8de;border-radius:16px;background:#fff;box-shadow:0 4px 14px #0b12200d}.fo-onboarding-action-card,.fo-onboarding-destination-button{display:grid;align-content:start;gap:10px;padding:18px;color:#253040;text-align:left;cursor:pointer}.fo-onboarding-action-card{min-height:150px}.fo-onboarding-action-card:hover,.fo-onboarding-action-card:focus-visible,.fo-onboarding-destination-button:hover,.fo-onboarding-destination-button:focus-visible{border-color:#2155f5;box-shadow:0 0 0 3px #2155f51a}.fo-onboarding-team-list,.fo-onboarding-next-steps{display:grid;gap:12px}.fo-onboarding-user-row{display:flex;align-items:center;gap:12px;padding:12px 14px}.fo-onboarding-user-row span:nth-child(2){flex:1 1 auto;min-width:0}.fo-onboarding-user-row small,.fo-onboarding-action-card span,.fo-onboarding-destination-button span{display:block;color:#5f6b7a;font-size:var(--text-sm);line-height:1.45}.fo-onboarding-user-avatar,.fo-onboarding-complete-graphic{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#2155f5;color:#fff;font-weight:800}.fo-onboarding-user-avatar{width:38px;height:38px;flex:0 0 38px;font-size:12px}.fo-onboarding-team-toolbar{display:flex;justify-content:flex-start}.fo-onboarding-add-team-form{display:grid;gap:14px;padding:16px}.fo-onboarding-complete-graphic{width:64px;height:64px}.fo-onboarding-destination-button{width:100%;min-height:0;padding:12px 14px;gap:4px}.fo-onboarding-next-steps.compact{gap:8px}.fo-onboarding-add-user-dialog{width:min(620px,calc(100vw - 32px))}.fo-onboarding-add-user-dialog-backdrop{z-index:var(--z-modal)}@media (max-height: 820px) and (min-width: 861px){.fo-onboarding-right-panel{padding-top:24px;padding-bottom:24px}.fo-onboarding-content-card{max-height:calc(100dvh - 72px);min-height:calc(100dvh - 72px)}.fo-onboarding-content-body{padding-top:22px;padding-bottom:22px}.fo-onboarding-screen{gap:14px}.fo-onboarding-screen-title{font-size:clamp(28px,3vw,38px)}.fo-onboarding-welcome-card{min-height:142px;padding:16px}}@media (max-width: 860px){.fo-onboarding-shell{height:auto;min-height:100dvh;overflow-y:auto}.fo-onboarding-right-panel,.fo-onboarding-content-body,.fo-onboarding-step-surface,.fo-onboarding-screen{overflow:visible}.fo-onboarding-content-card{min-height:auto;max-height:none}.fo-onboarding-form-grid.triple,.fo-onboarding-action-grid{grid-template-columns:1fr}}.fo-inventory-barcode-field-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:var(--space-2);align-items:stretch;width:100%;max-width:100%;min-width:0}.fo-inventory-barcode-field-row>input{min-width:0}.fo-inventory-barcode-field-row .fo-contractor-scan-only .fo-barcode-input-control__button{min-height:2.75rem}.vantis-money-input{display:flex;align-items:center;min-width:0;width:100%;border:1px solid var(--fo-border, #d9e2ec);border-radius:var(--fo-radius-md, .75rem);background:var(--fo-surface, #fff);overflow:hidden}.vantis-money-input>span{flex:0 0 auto;padding:0 .75rem;color:var(--fo-text-muted, #667085);font-weight:700}.vantis-money-input>input{min-width:0;width:100%;border:0;background:transparent}.vantis-tax-checkbox{display:inline-flex;align-items:center;gap:.45rem;align-self:end;min-height:2.75rem;color:var(--fo-text, #1f2937);font-weight:650}.vantis-tax-checkbox input[type=checkbox]{width:1rem;height:1rem;margin:0}.workorders-billing-line-item.workorders-checklist-row--editable{grid-template-columns:minmax(12rem,1fr) auto auto}@media (max-width: 760px){.workorders-billing-grid,[data-billing-mobile-layout=stacked] .workorders-review-grid{grid-template-columns:minmax(0,1fr)}.workorders-billing-line-item.workorders-checklist-row--editable{grid-template-columns:minmax(0,1fr);align-items:stretch}.vantis-tax-checkbox{align-self:start}}.settings-logo-control{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border:1px solid #dfe5ef;border-radius:14px;background:#f8fafc}.settings-logo-preview,.settings-logo-empty,.settings-logo-actions{display:flex;align-items:center;gap:12px}.settings-logo-preview img{width:64px;height:64px;border:1px solid #dfe5ef;border-radius:12px;background:#fff;object-fit:contain}.settings-logo-empty{color:#5a6575;font-size:var(--text-sm)}.settings-logo-actions input[type=file]{max-width:260px}@media (max-width: 640px){.settings-logo-control,.settings-logo-actions{align-items:stretch;flex-direction:column}}.fo-invoice-drawer-layout{display:grid;gap:var(--space-4)}.fo-invoice-action-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.fo-invoice-action-status,.fo-invoice-action-buttons{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.fo-invoice-action-success{display:inline-flex;align-items:center;max-width:100%;gap:var(--space-1);padding:.35rem var(--space-2);border:1px solid var(--fo-success-border);border-radius:var(--radius-md);background:var(--fo-surface);color:var(--fo-text);font-size:var(--text-sm);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.fo-invoice-review-panel{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface)}.fo-invoice-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--space-3)}.fo-invoice-document{display:grid;gap:var(--space-6);padding:clamp(20px,4vw,40px);border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface);box-shadow:var(--shadow-card)}.fo-invoice-document-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--fo-border)}.fo-invoice-company-block{display:grid;gap:var(--space-1);min-width:0}.fo-invoice-company-block h2{margin:0;font-size:clamp(1.35rem,3vw,2rem);line-height:1.1;color:var(--fo-text-strong)}.fo-invoice-company-block p,.fo-invoice-address-grid p,.fo-invoice-footer p{margin:0;color:var(--fo-text-muted);line-height:1.45;white-space:pre-line}.fo-invoice-document-label{margin:0 0 var(--space-1) 0;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--fo-text-muted)}.fo-invoice-company-logo{width:min(130px,28vw);max-height:82px;object-fit:contain}.fo-invoice-meta-block,.fo-invoice-address-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--space-3)}.fo-invoice-meta-block div,.fo-invoice-address-grid div{display:grid;gap:var(--space-1);align-content:start}.fo-invoice-meta-block span,.fo-invoice-address-grid span,.fo-invoice-lines-header,.fo-invoice-line-group-label,.fo-invoice-totals span,.fo-invoice-footer strong{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--fo-text-muted)}.fo-invoice-meta-block strong,.fo-invoice-address-grid strong{color:var(--fo-text-strong)}.fo-invoice-lines{display:grid;border:1px solid var(--fo-border);border-radius:var(--radius-lg);overflow:hidden}.fo-invoice-lines-header,.fo-invoice-line-row{display:grid;grid-template-columns:minmax(220px,1fr) 72px 104px 112px;gap:var(--space-3);align-items:center}.fo-invoice-lines-header{padding:var(--space-2) var(--space-3);background:var(--fo-surface-subtle)}.fo-invoice-lines-header span:not(:first-child),.fo-invoice-line-row>span{text-align:right}.fo-invoice-line-group{display:grid}.fo-invoice-line-group+.fo-invoice-line-group{border-top:1px solid var(--fo-border)}.fo-invoice-line-group-label{margin:0;padding:var(--space-3) var(--space-3) var(--space-1);background:var(--fo-surface)}.fo-invoice-line-row{padding:var(--space-3);border-top:1px solid var(--fo-border-soft, var(--fo-border))}.fo-invoice-line-group .fo-invoice-line-row:first-of-type{border-top:0}.fo-invoice-line-description{display:grid;gap:2px;min-width:0}.fo-invoice-line-description strong{color:var(--fo-text-strong)}.fo-invoice-line-description small{color:var(--fo-text-muted)}.fo-invoice-line-tax-flag{display:inline-flex;align-items:center;margin-left:var(--space-2);padding:1px var(--space-2);border:1px solid var(--fo-border);border-radius:999px;color:var(--fo-text-muted);font-size:.68rem;font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.fo-invoice-line-row-empty{border-top:0}.fo-invoice-totals{display:grid;justify-self:end;min-width:min(100%,320px);gap:var(--space-2)}.fo-invoice-totals div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.fo-invoice-total-row{padding-top:var(--space-2);border-top:1px solid var(--fo-border);font-size:1.12rem}.fo-invoice-total-row strong{font-size:1.24rem}.fo-invoice-footer{display:grid;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--fo-border)}.fo-invoice-footer p{display:grid;gap:var(--space-1)}@media (max-width: 760px){.fo-invoice-action-bar,.fo-invoice-document-header{display:grid}.fo-invoice-lines{border:0;gap:var(--space-3);overflow:visible}.fo-invoice-lines-header{display:none}.fo-invoice-line-group{gap:var(--space-2)}.fo-invoice-line-row{grid-template-columns:1fr;gap:var(--space-1);border:1px solid var(--fo-border);border-radius:var(--radius-lg)}.fo-invoice-line-row>span{display:flex;justify-content:space-between;text-align:left}.fo-invoice-line-row>span:nth-of-type(1):before{content:"Qty"}.fo-invoice-line-row>span:nth-of-type(2):before{content:"Rate"}.fo-invoice-line-row>span:nth-of-type(3):before{content:"Amount"}}.fo-tab-row,.fo-filter-row,.fo-pay-period-nav,.fo-review-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.fo-pay-period-nav{justify-content:space-between}.fo-payroll-metric-grid,.fo-export-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--space-4);min-width:0}.fo-payroll-metric-grid-compact{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}.fo-payroll-metric-card{min-width:0;display:grid;gap:var(--space-2);align-content:start}.fo-payroll-metric-card strong{font-size:var(--text-2xl);overflow-wrap:anywhere}.fo-payroll-metric-chart-slot{min-height:.25rem;border-radius:999px;background:var(--fo-surface-muted)}.fo-payroll-employee-cell{display:flex;align-items:center;gap:var(--space-3);min-width:0}.fo-payroll-avatar-button{width:2.5rem;height:2.5rem;border:1px solid var(--fo-border);border-radius:999px;overflow:hidden;display:grid;place-items:center;background:var(--fo-surface-muted);color:var(--fo-text);font-weight:900;padding:0;flex:0 0 auto}.fo-payroll-avatar-button img{width:100%;height:100%;object-fit:cover;display:block}.fo-payroll-name-button{border:0;background:transparent;color:var(--fo-text);font:inherit;font-weight:800;padding:0;text-align:left;overflow-wrap:anywhere}.fo-payroll-name-button:hover{color:var(--fo-accent)}.fo-clocked-in-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:var(--space-3);min-width:0}.fo-clocked-in-card{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-sm)}.fo-clocked-in-info{flex:1 1 auto;display:grid;gap:var(--space-1);min-width:0}.fo-clocked-in-name{width:fit-content;max-width:100%}.fo-clocked-in-meta{color:var(--fo-muted);font-size:var(--text-xs);overflow-wrap:anywhere}.fo-clocked-in-time{color:var(--fo-accent);font-size:var(--text-lg);white-space:nowrap;flex:0 0 auto}.fo-section-heading-row{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.fo-section-heading-row h2{margin:0}.fo-empty-inline{display:flex;gap:var(--space-3);align-items:center;justify-content:center;min-height:8rem;color:var(--fo-muted)}.fo-correction-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--fo-border);min-width:0}.fo-correction-row>div{display:grid;gap:var(--space-1);min-width:0}.fo-correction-row span{color:var(--fo-muted);overflow-wrap:anywhere}.fo-toggle-row{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:800}.fo-pay-period-controls{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:end}.fo-pay-period-controls>label{flex:1 1 12rem}.fo-review-card-header{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.fo-review-note{flex:1 1 16rem}.fo-export-card h2{margin:0}@media (max-width: 700px){.fo-payroll-metric-grid,.fo-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fo-pay-period-controls{display:grid;grid-template-columns:minmax(0,1fr)}.fo-correction-row{align-items:flex-start;flex-direction:column}}.fo-employee-cell{display:flex;align-items:center;gap:var(--space-3);min-width:0}.fo-employee-cell>div{display:grid;gap:var(--space-1);min-width:0}.fo-employee-cell span{color:var(--fo-muted);font-size:var(--text-xs);overflow-wrap:anywhere}.fo-pay-period-employee-row{cursor:pointer}.fo-pay-period-employee-row:hover{background:var(--fo-surface-muted)}.fo-timecard-detail-panel{gap:var(--space-4);min-width:0}.fo-timecard-session-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--fo-border);min-width:0}.fo-timecard-session-row>div{display:grid;gap:var(--space-1);min-width:0}.fo-timecard-session-row span{color:var(--fo-muted);overflow-wrap:anywhere}@media (max-width: 700px){.fo-timecard-session-row{flex-direction:column}}.fo-timecard-period-label{color:var(--fo-text-muted);font-weight:700}.fo-timecard-session-row .status-badge{width:fit-content}.fo-billing-metadata-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);align-items:stretch}.fo-billing-metadata-item{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.fo-billing-metadata-item strong{overflow-wrap:anywhere}.fo-billing-hours-field{align-self:start;grid-auto-rows:max-content}.fo-billing-hours-note{display:block;min-height:1rem;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.25;margin-top:var(--space-1)}.fo-user-directory-cell{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0;border:0;background:transparent;color:var(--fo-text);padding:0;text-align:left;font:inherit}.fo-user-directory-cell>span:last-child{display:grid;gap:var(--space-1);min-width:0}.fo-user-directory-cell small{color:var(--fo-text-muted);overflow-wrap:anywhere}.fo-user-directory-cell .user-profile-photo-button{width:3rem;height:3rem;flex:0 0 3rem;border:1px solid var(--fo-border);border-radius:999px;background:var(--fo-surface-muted);display:grid;place-items:center;overflow:hidden;font-weight:800}.fo-user-directory-cell .user-profile-photo-thumb{width:100%;height:100%;object-fit:cover;border-radius:inherit}@media (max-width: 760px){.fo-billing-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.fo-billing-flat-section{gap:var(--space-4);min-width:0}.fo-billing-line-items-section{padding:var(--space-5);border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface);box-shadow:var(--shadow-sm)}.fo-billing-metadata-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-muted);align-items:stretch}.fo-billing-metadata-item{display:grid;gap:var(--space-1);min-width:0;padding:0 var(--space-4);border-right:1px solid var(--fo-border);background:transparent}.fo-billing-metadata-item:first-child{padding-left:0}.fo-billing-metadata-item:last-child{padding-right:0;border-right:0}.fo-billing-metadata-item .eyebrow{color:var(--fo-text-muted);line-height:1.1}.fo-billing-metadata-item strong{min-width:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:750;line-height:1.3;overflow-wrap:anywhere}.fo-billing-line-toolbar{display:flex;align-items:flex-end;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;min-width:0}.fo-billing-line-toolbar label{display:grid;gap:var(--space-1);min-width:9rem}.fo-billing-line-items-panel{display:grid;gap:var(--space-5);min-width:0}.fo-billing-line-section{display:grid;gap:var(--space-3);min-width:0}.fo-billing-line-section+.fo-billing-line-section{padding-top:var(--space-4);border-top:1px solid var(--fo-border)}.fo-billing-subsection-header{display:grid;gap:var(--space-1);min-width:0}.fo-billing-subsection-header h3{margin:0;color:var(--fo-text);font-size:var(--text-base);font-weight:800;line-height:1.25}.fo-billing-line-table{display:grid;min-width:0;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);overflow:hidden}.fo-billing-line-header,.fo-billing-line-item-row{display:grid;grid-template-columns:minmax(16rem,1.75fr) minmax(8rem,.75fr) minmax(8rem,.75fr) minmax(9rem,.75fr);gap:var(--space-3);align-items:start}.fo-billing-line-header{padding:var(--space-2) var(--space-3);background:var(--fo-surface-subtle);border-bottom:1px solid var(--fo-border);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase}.fo-billing-line-item-row{padding:var(--space-3);border-bottom:1px solid var(--fo-border)}.fo-billing-line-item-row:last-child{border-bottom:0}.fo-billing-line-cell{display:grid;gap:var(--space-1);min-width:0;align-self:start}.fo-billing-line-cell-description{gap:var(--space-2)}.fo-billing-line-cell-description .btn{width:fit-content}.fo-billing-line-mobile-label{display:none;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase}.fo-billing-line-subtext,.fo-billing-hours-note{display:block;min-height:1rem;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.25}.fo-billing-hours-field,.fo-billing-hours-field input{align-self:start}.fo-billing-totals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);min-width:0;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--fo-border)}.fo-empty-note{margin:0;padding:var(--space-3);color:var(--fo-text-muted);font-size:var(--text-sm)}@media (max-width: 900px){.fo-billing-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fo-billing-metadata-item{padding:var(--space-3);border-right:0;border-bottom:1px solid var(--fo-border)}.fo-billing-metadata-item:nth-last-child(-n+2){border-bottom:0}.fo-billing-line-header{display:none}.fo-billing-line-item-row{grid-template-columns:1fr;gap:var(--space-3)}.fo-billing-line-mobile-label{display:inline}.fo-billing-totals-grid{grid-template-columns:1fr}}@media (max-width: 560px){.fo-billing-line-items-section{padding:var(--space-4)}.fo-billing-metadata-grid{grid-template-columns:1fr}.fo-billing-metadata-item,.fo-billing-metadata-item:nth-last-child(-n+2){padding:var(--space-3) 0;border-bottom:1px solid var(--fo-border)}.fo-billing-metadata-item:last-child{border-bottom:0}}.fo-billing-metadata-grid{background:var(--fo-surface);border:1px solid var(--fo-border);box-shadow:var(--shadow-sm)}.fo-billing-metadata-item{border:0;border-right:1px solid var(--fo-border);border-radius:0;background:transparent;box-shadow:none}.fo-billing-metadata-item:last-child{border-right:0}.fo-billing-line-table .fo-billing-cell-control{width:100%;min-height:1.75rem;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--fo-text)!important;font:inherit}.fo-billing-line-table .fo-billing-cell-control:not(:disabled){padding:var(--space-2)!important;border:1px solid var(--fo-border-strong)!important;border-radius:var(--radius-sm)!important;background:var(--fo-surface)!important}.fo-billing-line-table .fo-billing-cell-control:focus:not(:disabled){border-color:var(--fo-accent)!important;outline:2px solid var(--fo-accent);outline-offset:1px}.fo-billing-line-table .fo-billing-cell-control:disabled{opacity:1;-webkit-text-fill-color:var(--fo-text)}.fo-billing-line-item-row{align-items:start}.fo-billing-line-cell,.fo-billing-hours-field,.fo-billing-tax-field{align-self:start;align-content:start}.fo-billing-totals-grid{align-items:start}.fo-billing-total-cell{display:grid;gap:var(--space-1);min-width:0;align-self:start;align-content:start}.fo-billing-total-control{display:flex;align-items:center;width:100%;min-height:2rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--fo-text);font:inherit;font-weight:600}.fo-billing-tax-note{display:block;min-height:1rem;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.25}@media (max-width: 900px){.fo-billing-metadata-item,.fo-billing-metadata-item:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--fo-border)}.fo-billing-metadata-item:nth-child(odd){border-right:1px solid var(--fo-border)}}@media (max-width: 560px){.fo-billing-metadata-item,.fo-billing-metadata-item:nth-child(odd),.fo-billing-metadata-item:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--fo-border)}.fo-billing-metadata-item:last-child{border-bottom:0}}.fo-field-label-required{display:inline-flex;align-items:center;gap:.2rem}.fo-required-asterisk{color:var(--fo-danger, #dc2626);font-weight:800}.fo-form-submitted .fo-input:required:invalid,.fo-input.fo-input-invalid{border-color:var(--fo-danger, #dc2626);box-shadow:inset 3px 0 0 var(--fo-danger, #dc2626)}.fo-form-submitted .fo-input:required:invalid:focus,.fo-input.fo-input-invalid:focus{outline-color:#dc262647}.fo-billing-line-clamp{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fo-contractor-required-badge{letter-spacing:.02em}@media (max-width: 640px){.fo-contractor-time-session-card{padding:12px!important}.fo-contractor-session-summary-row{align-items:flex-start!important}.fo-contractor-session-total{width:100%;text-align:left!important;margin-left:40px!important}.fo-contractor-session-action-row{justify-content:flex-start!important;margin-left:40px}}.fo-billing-detail-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.fo-admin-bottom-tabs-compact .fo-admin-bottom-tab span{max-width:5.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 640px){body.fo-contractor-mobile-no-sidebar .fo-contractor-time-session-card{padding:8px 9px!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-summary-row{align-items:center!important;gap:6px!important;flex-wrap:nowrap!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-label-group{flex:1 1 0!important;min-width:0!important;gap:6px!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-control-group{flex:0 0 auto!important;justify-content:flex-end!important;gap:6px!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-total{width:auto!important;text-align:right!important;margin-left:0!important}body.fo-contractor-mobile-no-sidebar .fo-contractor-session-inline-action{padding-inline:.48rem!important;min-height:1.8rem;font-size:var(--text-2xs)}}@media (max-width: 600px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:6px;width:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow>:is(.fo-action-button,button,a){width:auto;min-width:0;max-width:100%;white-space:nowrap}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow>.fo-action-button-mobile-icon-only,body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow>.fo-action-button-role-utility.fo-action-button-mobile-icon-only{flex:0 0 2.25rem;inline-size:2.25rem;min-inline-size:2.25rem;max-inline-size:2.25rem}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow>:is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow){flex:1 1 8rem;min-inline-size:min(8rem,44%)}}@media (max-width: 340px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-action-row.fo-action-footer-layout-mixed-workflow>:is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow){flex-basis:100%;min-inline-size:100%}}.fo-company-directory-toolbar{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;max-width:none;width:100%}.fo-company-directory-toolbar>*{flex:0 1 auto}.fo-company-directory-toolbar .fo-search-input,.fo-company-directory-toolbar [role=search]{flex:1 1 18rem;min-width:min(100%,16rem)}.fo-employee-inventory-toolbar{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;max-width:none;width:100%}.fo-employee-inventory-toolbar>*{flex:0 1 auto}.fo-employee-inventory-toolbar .fo-search-input,.fo-employee-inventory-toolbar [role=search]{flex:1 1 18rem;min-width:min(100%,16rem)}.fo-customers-style-header.fo-backoffice-page-header{align-items:flex-end;flex-wrap:nowrap}.fo-customers-style-header .fo-backoffice-page-heading{flex:1 1 auto;min-width:14rem}.fo-customers-style-header .fo-backoffice-page-controls{flex:0 1 auto;min-width:min(100%,34rem);flex-wrap:nowrap}.fo-customers-style-header .fo-backoffice-page-search{min-width:0;width:auto}.fo-company-directory-toolbar,.fo-employee-inventory-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:.625rem;flex-wrap:nowrap;max-width:none;width:auto}.fo-company-directory-toolbar>*,.fo-employee-inventory-toolbar>*{flex:0 0 auto}.fo-company-directory-toolbar .fo-search-input,.fo-company-directory-toolbar [role=search]{flex:1 1 24rem;width:clamp(18rem,34vw,30rem);min-width:18rem}.fo-employee-inventory-toolbar .fo-search-input,.fo-employee-inventory-toolbar [role=search]{flex:1 1 18rem;width:clamp(14rem,24vw,22rem);min-width:14rem}.fo-toolbar-field-label{display:inline-flex;align-items:center;gap:.45rem;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.fo-toolbar-field-label .fo-input{min-width:11rem}.fo-company-directory-department-filter .fo-input{width:clamp(9.5rem,13vw,12rem);min-width:9.5rem;max-width:12rem}.fo-company-directory-contractor-header{display:flex;align-items:flex-end;justify-content:space-between;gap:.875rem}.fo-company-directory-contractor-heading{display:grid;gap:.25rem;min-width:12rem}.maintenance-purge-card--compact{padding-block:.875rem;gap:.625rem}.maintenance-purge-compact-row{display:flex;align-items:center;justify-content:space-between;gap:.875rem}.maintenance-purge-copy{margin:0;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.35}.settings-layout-editor-selection-card{min-height:7.25rem;opacity:1!important;filter:none!important;border:1px solid var(--fo-border-strong, #bfdbfe)!important;border-left:4px solid var(--fo-accent, #1d4ed8)!important;background:var(--fo-surface, #ffffff)!important;color:var(--fo-text, #0f172a)!important;box-shadow:0 10px 24px #0f172a14!important;position:relative}.settings-layout-editor-selection-card:hover{transform:translateY(-1px);border-color:var(--fo-accent, #1d4ed8)!important;box-shadow:0 14px 28px #0f172a1f!important}@media (max-width: 920px){.fo-customers-style-header.fo-backoffice-page-header,.fo-customers-style-header .fo-backoffice-page-controls,.fo-company-directory-contractor-header,.maintenance-purge-compact-row{flex-wrap:wrap}.fo-customers-style-header .fo-backoffice-page-heading,.fo-customers-style-header .fo-backoffice-page-controls,.fo-customers-style-header .fo-backoffice-page-search,.fo-company-directory-toolbar,.fo-employee-inventory-toolbar,.fo-company-directory-contractor-heading{width:100%}.fo-company-directory-toolbar,.fo-employee-inventory-toolbar{justify-content:stretch;flex-wrap:wrap}.fo-company-directory-toolbar>*,.fo-employee-inventory-toolbar>*,.fo-toolbar-field-label,.fo-toolbar-field-label .fo-input,.fo-company-directory-toolbar .fo-search-input,.fo-company-directory-toolbar [role=search],.fo-employee-inventory-toolbar .fo-search-input,.fo-employee-inventory-toolbar [role=search]{flex:1 1 100%;width:100%;min-width:0}.maintenance-purge-actions{width:100%}}.fo-login-persistence-choice{display:inline-flex;align-items:center;gap:var(--fo-space-2, .5rem);font-size:var(--fo-font-size-sm, .875rem)}.fo-login-persistence-choice input{inline-size:1rem;block-size:1rem}.fo-account-page{max-width:72rem;margin-inline:auto;padding-bottom:calc(var(--fo-space-8, 2rem) + env(safe-area-inset-bottom))}.fo-account-card{overflow:hidden}.fo-account-photo-row{display:flex;align-items:center;gap:var(--fo-space-4, 1rem);flex-wrap:wrap}.fo-account-avatar{inline-size:5.5rem;block-size:5.5rem;border-radius:999px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--fo-border-color, currentColor);font-size:1.5rem;font-weight:700}.fo-account-avatar img{inline-size:100%;block-size:100%;object-fit:cover}.fo-account-readonly-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--fo-space-3, .75rem)}.fo-account-readonly{display:grid;gap:.25rem;min-width:0}.fo-account-readonly span,.fo-account-metrics span{font-size:var(--fo-font-size-xs, .75rem);opacity:.72}.fo-account-readonly strong{overflow-wrap:anywhere}.fo-account-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--fo-space-3, .75rem)}.fo-account-metrics>div{display:grid;gap:.25rem}.fo-account-history-row{display:flex;align-items:center;justify-content:space-between;gap:var(--fo-space-3, .75rem);padding-block:var(--fo-space-2, .5rem);border-bottom:1px solid var(--fo-border-color, currentColor)}.fo-account-history-row:last-child{border-bottom:0}.fo-account-history-button{inline-size:100%;border-inline:0;border-top:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.fo-account-history-button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.fo-sidebar-account-button,.fo-sidebar-signout-button{inline-size:100%;justify-content:flex-start}.fo-credential-gate{min-block-size:100dvh;padding-bottom:env(safe-area-inset-bottom)}@media (max-width: 40rem){.fo-sidebar-account-button{min-height:1.5rem;padding-block:.2rem}.fo-account-page{padding-inline:var(--fo-space-3, .75rem)}.fo-account-history-row{align-items:flex-start;flex-direction:column}}.fo-connection-status{position:sticky;top:calc(env(titlebar-area-height,0px) + 8px);z-index:40;align-self:center;flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:min(42rem,calc(100% - 20px));box-sizing:border-box;margin:calc(env(titlebar-area-height,0px) + 8px) auto 8px;padding:8px 10px;border:1px solid var(--fo-border);border-radius:999px;background:var(--fo-surface);color:var(--fo-text);box-shadow:0 8px 24px #0f172a29;font-size:var(--text-xs)}.fo-connection-status-copy{display:inline-flex;align-items:baseline;gap:6px;min-width:0}.fo-connection-status-copy span{color:var(--fo-text-muted);white-space:nowrap}.fo-connection-status-offline{border-color:#e3b341;background:#fff9e8;color:#684b00}.fo-connection-status-warning{border-color:#e8a598;background:#fff4f0;color:#7c2618}.fo-connection-status-success{border-color:#9bd3a7;background:#effbf2;color:#1a4d2e}.fo-connection-status-checking svg{animation:fo-connection-spin 1s linear infinite}.fo-connection-status-action{border:0;background:transparent;color:inherit;font:inherit;font-weight:800;cursor:pointer;padding:2px 4px}@keyframes fo-connection-spin{to{transform:rotate(360deg)}}body.fo-contractor-mobile-no-sidebar .admin-main:has(>.fo-connection-status)>.fo-contractor-screen{flex:1 1 0;height:auto;max-height:none}@media (max-width: 1023px){.fo-connection-status{top:calc(var(--fo-safe-area-top) + env(titlebar-area-height,0px) + 8px);margin-top:calc(var(--fo-safe-area-top) + env(titlebar-area-height,0px) + 8px)}}@media (max-width: 640px){.fo-connection-status{width:calc(100% - 20px);max-width:calc(100% - 20px);border-radius:12px}.fo-connection-status-copy{flex-wrap:wrap;gap:2px 6px}.fo-connection-status-copy span{white-space:normal}}.email-provider-picker{gap:18px}.email-provider-picker h2,.email-provider-connected-card h2{margin:0}.email-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}.email-provider-card{min-width:0;min-height:148px;justify-content:space-between;padding:18px;border:1px solid var(--fo-border, #d8dee9);border-radius:14px;background:var(--fo-surface, #ffffff)}.email-provider-card-heading,.email-provider-connected-heading{display:flex;align-items:center;gap:14px;min-width:0}.email-provider-card-copy,.email-provider-connected-copy{min-width:0}.email-provider-card-copy strong{font-size:var(--text-base)}.email-provider-card-copy .muted{font-size:var(--text-sm)}.email-provider-card-action{width:100%;justify-content:center}.email-provider-logo,.email-provider-neutral-icon{flex:0 0 auto;object-fit:contain}.email-provider-logo-card{width:34px;height:34px}.email-provider-logo-connected{width:32px;height:32px}.email-provider-neutral-icon{display:inline-flex;align-items:center;justify-content:center}.email-provider-connected-card{gap:16px}.email-provider-connected-heading{flex-wrap:wrap}.email-provider-connected-copy{flex:1 1 14rem}.email-provider-connected-copy p{margin:0;overflow-wrap:anywhere}.email-provider-status{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:6px 10px;border:1px solid #b7e4c7;border-radius:999px;background:#f0fff4;color:#087f5b;font-size:var(--text-sm);font-weight:700}.email-provider-status-reconnect{border-color:#ffd8a8;background:#fff9db;color:#9c5b00}@media (max-width: 700px){.email-provider-grid{grid-template-columns:minmax(0,1fr)}.email-provider-card{min-height:0}.email-provider-connected-heading{align-items:flex-start}.email-provider-status{margin-left:46px}}@media (max-width: 480px){.email-provider-status{margin-left:0}.email-provider-card,.email-provider-picker,.email-provider-connected-card{min-width:0}}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:flex-end;gap:6px;width:100%;max-width:100%}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>:is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow){flex:1 1 9rem;width:auto;min-width:0;max-width:100%;min-height:2.25rem;white-space:normal}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>:is(.fo-action-button-role-primary-workflow,.fo-action-button-role-secondary-workflow,.fo-action-button-role-destructive-workflow) .fo-action-button-label{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:normal}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>.workorders-detail-action-status{order:-1;flex:1 0 100%;width:100%;min-width:0;max-width:100%;margin:0 0 2px;white-space:normal;overflow-wrap:anywhere;word-break:normal}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>.fo-action-button-role-utility.fo-action-button-mobile-icon-only{flex:0 0 2.25rem;inline-size:2.25rem;min-inline-size:2.25rem;max-inline-size:2.25rem;min-height:2.25rem}}.schedule-work-order-card--scheduled{border-color:var(--fo-accent);border-style:dashed;background:var(--fo-surface-subtle)}.schedule-work-order-card--scheduled:hover{border-color:var(--fo-accent-hover);background:var(--fo-surface)}.schedule-work-order-card--dispatched{border-style:solid}.schedule-month-job--scheduled{border-color:var(--fo-accent);border-style:dashed;background:var(--fo-surface)}.schedule-month-job--scheduled:hover{border-color:var(--fo-accent-hover);background:var(--fo-surface-subtle)}.schedule-month-job--dispatched{border-style:solid}.schedule-year-month__status-markers{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.schedule-year-month__status-marker{display:inline-flex;min-height:1.45rem;align-items:center;justify-content:center;padding:.1rem .4rem;border:1px solid var(--fo-accent);border-radius:var(--radius-pill);color:var(--fo-accent-text);font-size:var(--text-2xs);font-weight:850;letter-spacing:.02em}.schedule-year-month__status-marker--scheduled{background:var(--fo-surface);border-style:dashed}.schedule-year-month__status-marker--dispatched{background:var(--fo-soft-blue);border-style:solid}.workorder-recurrence-inline{margin-top:var(--space-1);min-width:0}.workorder-recurrence-toggle{width:fit-content;margin:0}.workorder-recurrence-fields{min-width:0;width:100%}.workorder-recurrence-inline .fo-backoffice-checkbox-row{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.25rem;padding:.25rem 0}.workorder-compact-checkbox{width:1.125rem!important;height:1.125rem!important;min-width:1.125rem!important;max-width:1.125rem!important;min-height:1.125rem!important;margin:0;padding:0;flex:0 0 1.125rem}.fo-action-sheet-backdrop{place-items:center;padding:var(--space-4)}.fo-action-sheet{width:min(100%,34rem);max-width:34rem;max-height:min(80dvh,42rem);overflow-x:hidden;overflow-y:auto;display:grid;gap:0;padding:0;border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface);box-shadow:var(--shadow-popover);margin:0}.fo-action-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0;padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--fo-border);background:var(--fo-surface)}.fo-action-sheet-header h2{margin:0;min-width:0;color:var(--fo-text);font-size:var(--text-lg);font-weight:700;line-height:1.2;letter-spacing:-.01em}.fo-action-sheet-close{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;min-width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text-muted);box-shadow:var(--shadow-card);cursor:pointer;flex:0 0 auto}.fo-action-sheet-close:hover{border-color:var(--fo-border-strong);background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.fo-action-sheet-close:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px;border-color:var(--fo-accent);background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.fo-action-sheet-body{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3) var(--space-4) var(--space-4)}.fo-action-sheet-section{display:grid;gap:var(--space-1);min-width:0}.fo-action-sheet-section+.fo-action-sheet-section{margin-top:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--fo-border)}.fo-action-sheet-section-title{margin:0;padding:var(--space-1) var(--space-2);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;line-height:1.3;letter-spacing:.08em;text-transform:uppercase}.fo-action-sheet-row{width:100%;min-width:0;min-height:2.75rem;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--fo-text);text-align:left;font:inherit;font-size:var(--text-sm);font-weight:600;line-height:1.35;cursor:pointer}.fo-action-sheet-row:hover{border-color:var(--fo-border);background:var(--fo-surface-subtle)}.fo-action-sheet-row:focus-visible{outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent);background:var(--fo-accent-bg)}.fo-action-sheet-row:disabled{color:var(--fo-text-muted);background:transparent;cursor:not-allowed;opacity:.64}.fo-action-sheet-row--danger{color:var(--fo-text-danger)}.fo-action-sheet-row>svg{flex:0 0 auto;color:currentColor}.workorder-action-sheet-status-correction textarea{width:100%;box-sizing:border-box;resize:vertical}.workorders-detail-action-row.fo-action-footer-layout-mixed-workflow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;gap:6px;width:100%}.workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>.fo-action-button-role-primary-workflow{width:100%;min-width:0}@media (max-width: 1023px){body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow{grid-template-columns:2.25rem minmax(0,1fr) 2.25rem}body:not(.fo-contractor-mobile-no-sidebar) .admin-shell.fo-app-viewport-shell>.fo-main-working-area .fo-drawer-footer-compact-actions .workorders-detail-action-row.fo-action-footer-layout-mixed-workflow>.fo-action-button-role-primary-workflow{grid-column:auto}.fo-action-sheet-backdrop{place-items:end center;padding:0}.fo-action-sheet{width:100%;max-width:none;max-height:calc(100dvh - env(safe-area-inset-top,0px) - .5rem);padding-bottom:env(safe-area-inset-bottom,0px);border-right:0;border-bottom:0;border-left:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0}}@media (max-height: 520px) and (orientation: landscape){.fo-action-sheet{max-height:calc(100dvh - .25rem)}.fo-action-sheet-header{padding-top:var(--space-3);padding-bottom:var(--space-2)}.fo-action-sheet-body{padding-top:var(--space-2);padding-bottom:var(--space-3)}}.fo-action-button-primary-subtle{border-color:var(--fo-accent);background:var(--fo-accent-bg);color:var(--fo-accent-text)}.fo-action-button-primary-subtle:hover:not(:disabled){border-color:var(--fo-accent-hover);background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.fo-action-button-success{border-color:#157347;background:#157347;color:#fff}.fo-action-button-success:hover:not(:disabled){border-color:#115c39;background:#115c39}.fo-action-feedback-layer{position:fixed;top:calc(env(safe-area-inset-top,0px) + 4.25rem);right:max(1rem,env(safe-area-inset-right,0px));z-index:1600;width:min(26rem,calc(100vw - 2rem));max-height:calc(100vh - 6rem - env(safe-area-inset-bottom,0px));overflow-y:auto;pointer-events:none}.fo-action-feedback-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--fo-border-strong);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:0 16px 36px #1118272e;color:var(--fo-text);pointer-events:auto}.fo-action-feedback-notice-success{border-color:var(--fo-success-border)}.fo-action-feedback-notice-error{border-color:#f1a3a3;background:#fff8f8}.fo-action-feedback-icon{margin-top:.1rem;color:#157347}.fo-action-feedback-notice-error .fo-action-feedback-icon{color:#b42318}.fo-action-feedback-copy{display:grid;min-width:0;gap:.2rem}.fo-action-feedback-title,.fo-action-feedback-message{overflow-wrap:anywhere}.fo-action-feedback-title{font-size:var(--text-sm);line-height:1.35}.fo-action-feedback-message{font-size:var(--text-sm);line-height:1.45}.fo-action-feedback-dismiss{display:inline-grid;width:2rem;height:2rem;place-items:center;margin:-.3rem -.3rem 0 0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--fo-text-muted);cursor:pointer}.fo-action-feedback-dismiss:hover{background:var(--fo-surface-subtle);color:var(--fo-text)}.fo-action-feedback-dismiss:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.fo-invoice-action-area{display:grid;gap:var(--space-2)}.fo-invoice-online-payment-state{min-width:0;padding:0 var(--space-1);color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.4;overflow-wrap:anywhere}.settings-online-payments-card{display:grid;gap:var(--space-4);width:min(100%,48rem)}.settings-online-payments-intro{margin:0;max-width:44rem;color:var(--fo-text-muted)}.settings-online-payments-provider{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-3) 0}.settings-online-payments-wordmark{display:block;width:60px;height:auto;max-width:100%;flex:0 0 auto}.settings-online-payments-provider-copy{display:grid;gap:.18rem;min-width:0;color:var(--fo-text);font-size:var(--text-sm);line-height:1.4;overflow-wrap:anywhere}.settings-online-payments-provider-copy strong{font-weight:650}.settings-online-payments-provider-copy small{color:var(--fo-text-muted)}.settings-online-payments-state{display:grid;gap:var(--space-1);max-width:44rem;padding:var(--space-3) var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface-subtle)}.settings-online-payments-state>strong{color:var(--fo-text);font-size:var(--text-base);line-height:1.35}.settings-online-payments-state>small{color:var(--fo-text-muted);line-height:1.45}.settings-online-payments-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--fo-border)}.settings-online-payments-actions .btn{justify-content:center;min-width:11.5rem}@media (max-width: 600px){.fo-action-feedback-layer{top:calc(env(safe-area-inset-top,0px) + 3.75rem);right:max(.75rem,env(safe-area-inset-right,0px));width:calc(100vw - 1.5rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))}.settings-online-payments-card{gap:var(--space-3)}.settings-online-payments-provider{gap:var(--space-3);padding:var(--space-2) 0}.settings-online-payments-wordmark{width:56px}.settings-online-payments-state{padding:var(--space-3)}.settings-online-payments-actions{display:grid;grid-template-columns:1fr}.settings-online-payments-actions .btn{width:100%;min-width:0}}.fo-sidebar-notifications-button{position:relative}.fo-sidebar-notification-badge{margin-inline-start:auto;min-width:1.25rem;height:1.25rem;padding-inline:.3rem;display:inline-grid;place-items:center;border-radius:999px;background:#b42318;color:#fff;font-size:.67rem;font-weight:800;line-height:1}.fo-admin-bottom-tab,.admin-shell.fo-app-viewport-shell .fo-contractor-bottom-tab{position:relative}.fo-mobile-menu-unread-badge{position:absolute;top:.2rem;left:calc(50% + .45rem);min-width:1.15rem;height:1.15rem;padding-inline:.25rem;display:inline-grid;place-items:center;border-radius:999px;background:#b42318;color:#fff;border:2px solid #1a1f2e;font-size:.61rem;font-weight:800;line-height:1;pointer-events:none}@media (max-width: 40rem){.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{position:relative}.fo-sidebar-user-row{padding-inline-end:2.4rem}.fo-sidebar-notifications-button,.btn.fo-sidebar-notifications-button{position:absolute;inset-block-start:.45rem;inset-inline-end:.55rem;inline-size:1.9rem;min-inline-size:1.9rem;min-height:1.9rem;padding:0;justify-content:center;z-index:1}.fo-sidebar-notifications-button>span:not(.fo-sidebar-notification-badge){display:none}.fo-sidebar-notifications-button .fo-sidebar-notification-badge{position:absolute;inset-block-start:-.3rem;inset-inline-end:-.35rem;margin-inline-start:0}}.workorders-accepted-quote-context{min-width:0;overflow:hidden}.workorders-accepted-quote-context-grid{display:grid;grid-template-columns:minmax(8.5rem,.42fr) minmax(0,1fr);gap:8px 14px;align-items:start}.workorders-accepted-quote-context-grid>strong{color:var(--fo-text);font-size:var(--text-sm)}.workorders-accepted-quote-context-grid>span{min-width:0;overflow-wrap:anywhere;color:var(--fo-text)}[data-accepted-quote-work-order-state]{min-width:0;overflow-wrap:anywhere}@media (max-width: 720px){.workorders-accepted-quote-context-grid{grid-template-columns:minmax(0,1fr);gap:4px}.workorders-accepted-quote-context-grid>span+strong{margin-top:8px}[data-accepted-quote-work-order-state]>.btn{width:100%}}@media (max-width: 1023px){.admin-sidebar.fo-sidebar-dark{padding-top:calc(var(--space-3) + var(--fo-safe-area-top));padding-bottom:calc(var(--space-3) + var(--fo-safe-area-bottom))}.admin-sidebar-header-row{padding-bottom:var(--space-2)}.fo-sidebar-nav-scroll{gap:var(--space-2);padding-top:var(--space-1)}.fo-sidebar-footer{padding-top:var(--space-2)}}@media (max-width: 1023px) and (max-height: 720px){.admin-sidebar.fo-sidebar-dark{gap:var(--space-1);padding-top:calc(var(--space-1) + var(--fo-safe-area-top));padding-bottom:calc(var(--space-1) + var(--fo-safe-area-bottom))}.admin-sidebar-header-row{padding-bottom:var(--space-1)}.fo-sidebar-logo-image{width:132px}.fo-sidebar-nav-scroll{gap:var(--space-1);padding-top:0}.fo-sidebar-nav-section .sidebar-section-title,.fo-sidebar-nav-section .fo-sidebar-nav-section-title{margin-bottom:0;line-height:1}.fo-sidebar-nav-item,.sidebar-link.fo-sidebar-nav-item{padding-block:5px}.fo-sidebar-footer{padding-top:1px}.fo-sidebar-user-block,.card.subtle-panel.fo-sidebar-user-block{gap:1px;padding-block:var(--space-1)}.fo-sidebar-user-avatar{width:26px;height:26px;flex-basis:26px}.fo-sidebar-account-button{min-height:1.5rem;padding-block:.2rem}.fo-sidebar-signout-button,.btn.fo-sidebar-signout-button{padding:var(--space-1)}.fo-sidebar-build-panel{gap:2px;margin-top:2px}.fo-sidebar-update-check-button{padding-block:var(--space-1)}}.work-order-create-section-heading{justify-content:space-between;align-items:flex-start}.work-order-create-checklist-source-badges{gap:var(--space-2);flex-wrap:wrap}.work-order-create-checklist-requirement{align-items:center;justify-content:flex-end;flex-wrap:wrap}.work-order-create-inline-note{margin:0}.work-order-create-readonly-field{min-height:3rem;padding:var(--space-3);background:var(--fo-surface-subtle)}.work-order-create-dialog-actions{justify-content:flex-end}.work-order-create-drawer-description{margin:0 0 var(--space-4)}.billing-detail-min-width{min-width:0}.billing-detail-adjustment-reason{flex:1 1 18rem;min-width:0}.billing-detail-purge-list{margin-top:0}.work-order-inventory-consumption{display:grid;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.work-order-inventory-consumption__heading{display:grid;gap:var(--space-1)}.work-order-inventory-consumption__eyebrow,.work-order-inventory-consumption__success,.work-order-inventory-consumption__section-title,.work-order-inventory-consumption__empty,.work-order-inventory-consumption__blocked,.work-order-inventory-consumption__selected-unit{margin:0}.work-order-inventory-consumption__success{color:var(--fo-status-completed-text);font-size:var(--text-sm)}.work-order-inventory-consumption__list,.work-order-inventory-consumption__correction-form{display:grid;gap:var(--space-2)}.work-order-inventory-consumption__section-title,.work-order-inventory-consumption__row-title{color:var(--fo-text);font-weight:700}.work-order-inventory-consumption__section-title,.work-order-inventory-consumption__description,.work-order-inventory-consumption__row-meta,.work-order-inventory-consumption__price-row,.work-order-inventory-consumption__empty,.work-order-inventory-consumption__blocked,.work-order-inventory-consumption__field{font-size:var(--text-sm)}.work-order-inventory-consumption__row{display:grid;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle)}.work-order-inventory-consumption__row-heading,.work-order-inventory-consumption__row-meta{display:flex;justify-content:space-between;gap:var(--space-2)}.work-order-inventory-consumption__row-heading{align-items:baseline}.work-order-inventory-consumption__row-badge,.work-order-inventory-consumption__price-row,.work-order-inventory-consumption__empty,.work-order-inventory-consumption__blocked,.work-order-inventory-consumption__selected-unit{color:var(--fo-text-muted)}.work-order-inventory-consumption__row-badge,.work-order-inventory-consumption__selected-unit{font-size:var(--text-xs)}.work-order-inventory-consumption__description{color:var(--fo-text)}.work-order-inventory-consumption__price-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.work-order-inventory-consumption__price-input{width:6.25rem;padding:var(--space-1) var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-xs)}.work-order-inventory-consumption__remove-button{justify-self:start}.work-order-inventory-consumption__field{display:grid;gap:var(--space-1);color:var(--fo-text)}.work-order-inventory-consumption__control{padding:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm)}.work-order-inventory-consumption__submit{justify-self:start}.work-order-edit-section-heading{justify-content:space-between;align-items:flex-start}.work-order-edit-inline-note,.work-order-edit-section-note{margin:0}.work-order-edit-readonly-field{min-height:3rem;padding:var(--space-3);background:var(--fo-surface-subtle)}.work-order-edit-dialog-actions{justify-content:flex-end}.admin-work-order-photo-card{overflow:hidden;padding:0;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer}.admin-work-order-photo-image,.admin-work-order-photo-lightbox-image{display:block;width:100%;background:var(--fo-surface-subtle)}.admin-work-order-photo-image,.admin-work-order-photo-placeholder{aspect-ratio:4 / 3}.admin-work-order-photo-image{object-fit:cover}.admin-work-order-photo-placeholder{display:grid;place-items:center;background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-sm)}.admin-work-order-photo-metadata{display:grid;gap:var(--space-1);padding:var(--space-2)}.admin-work-order-photo-caption{color:var(--fo-text);font-size:var(--text-sm)}.admin-work-order-photo-timestamp{color:var(--fo-text-muted);font-size:var(--text-2xs)}.admin-work-order-photo-lightbox{width:min(92vw,56rem);max-width:56rem}.admin-work-order-photo-lightbox-eyebrow{margin:0}.admin-work-order-photo-lightbox-image{max-height:70vh;object-fit:contain;border-radius:var(--radius-md)}.admin-work-order-photos__error{color:var(--fo-text-danger)}.admin-work-order-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--space-2)}.fo-customer-detail__contact-link{color:var(--fo-accent-text);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.fo-customer-detail__contact-link:hover{text-decoration:underline}.fo-customer-detail__contact-link:focus-visible{outline:2px solid var(--fo-accent);outline-offset:var(--space-1);border-radius:var(--radius-sm)}.fo-customer-detail__access-card{display:flex;align-items:center;gap:var(--space-3);min-width:0;margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg)}.fo-customer-detail__access-card--available{color:var(--fo-status-in-progress-text);background:var(--fo-status-in-progress-bg);border-color:var(--fo-status-in-progress-border)}.fo-customer-detail__access-card--empty{color:var(--fo-text-muted);background:var(--fo-surface-subtle)}.fo-customer-detail__access-copy,.fo-customer-detail__work-order-copy{min-width:0}.fo-customer-detail__access-label{margin:0 0 var(--space-1);color:currentColor;font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.fo-customer-detail__access-value{color:currentColor;font-size:var(--text-2xl);line-height:1.2;letter-spacing:.08em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.fo-customer-detail__access-empty,.fo-customer-detail__notes-copy,.fo-customer-detail__empty-copy,.fo-customer-detail__work-order-title,.fo-customer-detail__work-order-date,.fo-customer-detail__portal-email,.fo-customer-detail__portal-status,.fo-customer-detail__feedback{margin:0}.fo-customer-detail__access-empty{color:var(--fo-text-muted);font-size:var(--text-base)}.fo-customer-detail__notes{min-width:0;padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.fo-customer-detail__notes-copy{color:var(--fo-text);font-size:var(--text-base);line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.fo-customer-detail__empty-copy{color:var(--fo-text-muted);font-size:var(--text-base);font-style:italic;line-height:1.5}.fo-customer-detail__work-order-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0;padding:var(--space-3);margin-bottom:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle);cursor:pointer;transition:background .14s ease,border-color .14s ease}.fo-customer-detail__work-order-row:hover{border-color:var(--fo-border-strong);background:var(--fo-surface)}.fo-customer-detail__work-order-title{color:var(--fo-text);font-size:var(--text-md);font-weight:600;line-height:1.4;overflow-wrap:anywhere}.fo-customer-detail__work-order-date{margin-top:var(--space-1);color:var(--fo-text-muted);font-size:var(--text-xs)}.fo-customer-detail__portal-section{overflow:hidden}.fo-customer-detail__portal-management{display:grid;gap:var(--space-3);min-width:0}.fo-customer-detail__portal-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.fo-customer-detail__portal-summary-copy{display:grid;gap:var(--space-1);min-width:0}.fo-customer-detail__portal-email{color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.45;overflow-wrap:anywhere}.fo-customer-detail__portal-actions{display:grid;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--fo-border)}.fo-customer-detail__portal-status,.fo-customer-detail__feedback{padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:700;line-height:1.4;overflow-wrap:anywhere}.fo-customer-detail__portal-status--pending{color:var(--fo-status-scheduled-text);background:var(--fo-status-scheduled-bg);border-color:var(--fo-status-scheduled-border)}.fo-customer-detail__portal-status--success{color:var(--fo-status-approved-text);background:var(--fo-status-approved-bg);border-color:var(--fo-status-approved-border)}.fo-customer-detail__feedback--error{margin-bottom:var(--space-3);color:var(--fo-status-cancelled-text);background:var(--fo-status-cancelled-bg);border-color:var(--fo-status-cancelled-border)}@media (max-width: 720px){.fo-customer-detail__access-card,.fo-customer-detail__work-order-row{align-items:flex-start}.fo-customer-detail__work-order-row{flex-wrap:wrap}.fo-customer-detail__portal-summary{align-items:flex-start}}.billing-ui-field-label{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.billing-ui-detail-cell{display:grid;gap:var(--space-1);min-width:0}.billing-ui-detail-value{min-width:0;overflow:hidden;color:var(--fo-text);font-size:var(--text-md);font-weight:500;text-overflow:ellipsis}.admin-billing-summary-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.admin-billing-status-filter-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.billing-records-status-toggle{padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface);color:var(--fo-text-muted);cursor:pointer;font:inherit;font-size:var(--text-xs);font-weight:700}.billing-records-status-toggle:hover{background:var(--fo-surface-subtle)}.billing-records-status-toggle[data-active=true]{border-color:var(--fo-accent);background:var(--fo-accent-bg);color:var(--fo-accent)}.billing-records-row-subtext{display:block;margin-top:var(--space-1)}.admin-invoices-filter-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(170px,auto);gap:var(--space-3);align-items:center}.admin-invoices-summary-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.admin-invoices-status-filter{display:grid;gap:var(--space-2)}.inventory-item-form-serial-empty{padding:var(--space-3);border:1px dashed var(--fo-border);border-radius:var(--radius-lg);color:var(--fo-text-muted);font-size:var(--text-sm)}.inventory-item-form-serialized-panel{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg)}.inventory-item-form-serialized-header{display:flex;justify-content:space-between;gap:var(--space-3);align-items:center}.inventory-item-form-serialized-header--wrap{flex-wrap:wrap}.inventory-item-form-serialized-title{color:var(--fo-text);font-size:var(--text-base)}.inventory-item-form-help-text{color:var(--fo-text-muted);font-size:var(--text-xs)}.inventory-item-form-serialized-list{display:grid;gap:var(--space-2)}.inventory-item-form-serialized-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.inventory-item-form-serialized-row--existing{align-items:center;padding-top:var(--space-2);border-top:1px solid var(--fo-border)}.inventory-item-form-serialized-row--create{align-items:end}.inventory-item-form-serial-value{color:var(--fo-text);font-size:var(--text-base);overflow-wrap:anywhere}.inventory-item-form-serial-value[data-empty=true]{color:var(--fo-text-muted)}.inventory-item-form-serial-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.inventory-item-form-barcode-field{margin-bottom:var(--space-5)}.inventory-item-form-scan-icon{display:inline-flex;align-items:center;justify-content:center}.inventory-item-form-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.inventory-item-form-field-grid--financial{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.inventory-item-detail-page{min-height:100%;display:grid;gap:var(--space-4);background:var(--fo-bg-page)}.inventory-item-detail-content{display:grid;gap:var(--space-4)}.inventory-item-detail-eyebrow,.inventory-item-detail-section-title{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.inventory-item-detail-eyebrow{letter-spacing:.1em}.inventory-item-detail-section{display:grid;gap:var(--space-3)}.inventory-item-detail-section-header{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.inventory-item-detail-section-heading-group{display:grid;gap:var(--space-1)}.inventory-item-detail-section-heading{display:flex;align-items:center;gap:var(--space-2)}.inventory-item-detail-section-icon,.inventory-item-detail-muted,.inventory-item-detail-section-subtitle,.inventory-item-detail-category,.inventory-item-detail-barcode-value{color:var(--fo-text-muted)}.inventory-item-detail-section-subtitle{margin:0;font-size:var(--text-sm)}.inventory-item-detail-hero{padding:var(--space-5);border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface)}.inventory-item-detail-hero--drawer{padding:var(--space-4)}.inventory-item-detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-5);align-items:flex-start}.inventory-item-detail-hero-copy{display:grid;gap:var(--space-2);min-width:0}.inventory-item-detail-title{margin:0;color:var(--fo-text);font-size:var(--text-2xl);line-height:1.05;overflow-wrap:anywhere}.inventory-item-detail-meta{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;color:var(--fo-text-muted);font-size:var(--text-sm)}.inventory-item-detail-low-stock{color:var(--fo-text-danger);font-weight:700}.inventory-item-detail-category{font-size:var(--text-sm);font-weight:650}.inventory-item-detail-edit-action{justify-self:start;margin-top:var(--space-1)}.inventory-item-detail-barcode{justify-self:end;display:flex;justify-content:flex-end}.inventory-item-detail-barcode-empty{min-width:180px;padding:var(--space-3) var(--space-4);border:1px dashed var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-md);font-weight:650;text-align:center}.inventory-item-detail-barcode-display{display:grid;justify-items:end;gap:var(--space-2);min-width:210px;max-width:100%}.inventory-item-detail-barcode-card{width:232px;max-width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-sizing:border-box}.inventory-item-detail-barcode-svg{display:block;width:100%;height:46px;color:var(--fo-text)}.inventory-item-detail-barcode-background{fill:var(--fo-surface)}.inventory-item-detail-barcode-bar{fill:currentColor}.inventory-item-detail-barcode-value{font-size:var(--text-2xs);font-weight:650;letter-spacing:.04em}.inventory-item-detail-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.inventory-item-detail-info-grid__item{min-width:0;padding:var(--space-3) var(--space-4);background:var(--fo-surface);border-top:1px solid var(--fo-border)}.inventory-item-detail-info-grid__item:nth-child(-n+2){border-top:0}.inventory-item-detail-info-grid__item:nth-child(2n){border-left:1px solid var(--fo-border)}.inventory-item-detail-info-grid__label{margin:0 0 var(--space-1);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:600}.inventory-item-detail-info-grid__value{margin:0;color:var(--fo-text);font-size:var(--text-md);font-weight:500;line-height:1.45;overflow-wrap:anywhere}.inventory-item-detail-empty-state{padding:var(--space-4);border:1px dashed var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-sm)}.inventory-item-detail-allocation-table,.inventory-item-detail-unit-table-scroll{overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface)}.inventory-item-detail-unit-table-scroll{overflow-x:auto}.inventory-item-detail-allocation-row{display:grid;grid-template-columns:minmax(160px,1.4fr) 120px minmax(130px,1fr) minmax(150px,1fr);align-items:center;padding:var(--space-3) var(--space-4);border-top:1px solid var(--fo-border);font-size:var(--text-md)}.inventory-item-detail-allocation-row--header{border-top:0;background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.inventory-item-detail-allocation-row strong,.inventory-item-detail-unit-serial,.inventory-item-detail-add-units__title,.inventory-item-detail-field-label,.inventory-item-detail-count-pill{color:var(--fo-text)}.inventory-item-detail-unit-status{display:inline-flex;width:fit-content;padding:var(--space-1) var(--space-2);border:1px solid var(--fo-status-unknown-border);border-radius:var(--radius-pill);background:var(--fo-status-unknown-bg);color:var(--fo-status-unknown-text);font-size:var(--text-2xs);font-weight:800}.inventory-item-detail-unit-status[data-state=IN_STOCK]{border-color:var(--fo-status-completed-border);background:var(--fo-status-completed-bg);color:var(--fo-status-completed-text)}.inventory-item-detail-unit-status[data-state=ALLOCATED]{border-color:var(--fo-status-scheduled-border);background:var(--fo-status-scheduled-bg);color:var(--fo-status-scheduled-text)}.inventory-item-detail-unit-status[data-state=ON_TRUCK]{border-color:var(--fo-status-dispatched-border);background:var(--fo-status-dispatched-bg);color:var(--fo-status-dispatched-text)}.inventory-item-detail-unit-status[data-state=INSTALLED]{border-color:var(--fo-status-approved-border);background:var(--fo-status-approved-bg);color:var(--fo-status-approved-text)}.inventory-item-detail-unit-status[data-state=RETURNED]{border-color:var(--fo-status-unknown-border);background:var(--fo-status-unknown-bg);color:var(--fo-status-unknown-text)}.inventory-item-detail-unit-status[data-state=RETIRED]{border-color:var(--fo-status-draft-border);background:var(--fo-status-draft-bg);color:var(--fo-status-draft-text);text-decoration:line-through}.inventory-item-detail-count-pill{padding:var(--space-1) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-pill);font-size:var(--text-md);font-weight:800}.inventory-item-detail-add-units{display:grid;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg)}.inventory-item-detail-add-units__header{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center}.inventory-item-detail-add-units__title,.inventory-item-detail-field-label{font-size:var(--text-md);font-weight:700}.inventory-item-detail-field-label{display:grid;gap:var(--space-1)}.inventory-item-detail-unit-table{min-width:650px}.inventory-item-detail-unit-row{display:grid;grid-template-columns:minmax(180px,1fr) 120px 150px minmax(120px,1fr) minmax(150px,auto);align-items:center;padding:var(--space-3) var(--space-4);border-top:1px solid var(--fo-border);font-size:var(--text-md)}.inventory-item-detail-unit-row--header{border-top:0;background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.inventory-item-detail-unit-empty{padding:var(--space-4);color:var(--fo-text-muted);font-size:var(--text-sm)}.inventory-item-detail-unit-empty[data-warning=true]{color:var(--fo-text-danger)}.inventory-item-detail-unit-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-start}.inventory-item-detail-purge-list{margin-top:0}.inventory-items-eyebrow{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.inventory-items-stat-card{padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:var(--fo-surface)}.inventory-items-stat-value{margin-top:var(--space-2);color:var(--fo-text);font-size:var(--text-2xl);font-weight:750;line-height:1}.inventory-items-stat-detail{margin:var(--space-2) 0 0;color:var(--fo-text-muted);font-size:var(--text-xs)}.inventory-items-row{width:100%;display:grid;grid-template-columns:minmax(130px,1fr) minmax(220px,1.6fr) minmax(140px,1fr) 100px 100px 100px;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border:0;border-top:1px solid var(--fo-border);background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer}.inventory-items-row-sku,.inventory-items-row-name,.inventory-items-row-category{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-items-row-sku,.inventory-items-row-quantity,.inventory-items-row-allocated,.inventory-items-row-total{font-size:var(--text-md)}.inventory-items-row-name{font-size:var(--text-lg)}.inventory-items-row-category{color:var(--fo-text-muted);font-size:var(--text-sm)}.inventory-items-row-quantity{color:var(--fo-text);font-weight:750}.inventory-items-row-allocated{color:var(--fo-text)}.inventory-items-row-quantity[data-low-inventory=true],.inventory-items-quantity-value[data-low-inventory=true]{color:var(--fo-text-danger)}.inventory-items-scan-icon{display:inline-flex;align-items:center;justify-content:center}.inventory-items-filter-row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.inventory-items-filter-description{color:var(--fo-text-muted);font-size:var(--text-xs)}.inventory-items-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3)}.truck-stock-item-link{min-width:0;padding:0;border:0;background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.truck-stock-item-link:disabled{cursor:default}.truck-stock-item-name,.truck-stock-item-notes{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truck-stock-item-notes{margin-top:var(--space-1);color:var(--fo-text-muted)}.truck-stock-adjustment-cell{min-width:180px}.truck-stock-adjustment-controls{gap:var(--space-2);align-items:center}.truck-stock-adjustment-input{width:84px}.truck-stock-contractor-metric{padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.truck-stock-contractor-metric-label{margin:0 0 var(--space-1);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.truck-stock-contractor-metric-value{color:var(--fo-text);font-size:var(--text-md)}.truck-stock-contractor-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.truck-stock-search-row,.fo-truck-stock-add-item-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:stretch}.truck-stock-scan-icon{display:inline-flex;align-items:center;justify-content:center}.truck-stock-employee-contact{display:block;margin-top:var(--space-1)}.truck-stock-option-list{overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface)}.truck-stock-option{width:100%;padding:var(--space-2) var(--space-3);border:0;border-top:1px solid var(--fo-border);background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer}.truck-stock-option-empty{padding:var(--space-3);color:var(--fo-text-muted);font-size:var(--text-xs)}.truck-stock-selection-note,.truck-stock-help-text{color:var(--fo-text-muted);font-size:var(--text-xs)}.truck-stock-selection-note--item{font-size:var(--text-md)}.truck-stock-lookup-message{color:var(--fo-text);font-size:var(--text-md);font-weight:650}.truck-stock-lookup-message[data-state=error],.truck-stock-validation-message{color:var(--fo-text-danger)}.truck-stock-validation-message{font-size:var(--text-md);font-weight:700}.work-orders-department-badges{display:flex;gap:var(--space-2);flex-wrap:wrap}.work-orders-eyebrow,.work-orders-info-section-title{margin:0;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase}.work-orders-eyebrow{letter-spacing:.1em}.work-orders-info-section{margin-bottom:var(--space-5)}.work-orders-info-section-heading{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.work-orders-info-section-icon{color:var(--fo-text-muted)}.work-orders-info-section-title{letter-spacing:.08em}.work-orders-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-border)}.work-orders-info-grid-item{padding:var(--space-3) var(--space-4);background:var(--fo-surface)}.work-orders-info-grid-label{margin:0 0 var(--space-1);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:600}.work-orders-info-grid-value{margin:0;color:var(--fo-text);font-size:var(--text-md);font-weight:500}.work-orders-info-grid-empty{color:var(--fo-text-muted);font-style:italic}.work-orders-success-banner{margin-bottom:var(--space-4)}.work-orders-scope-clear{padding:0;border:0;background:transparent;color:var(--fo-accent);font-size:var(--text-xs);font-weight:600;cursor:pointer}.admin-work-order-list-card{overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.admin-work-order-filter-panel{display:grid;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--fo-border)}.admin-work-order-filter-grid{display:grid;grid-template-columns:repeat(3,auto);gap:var(--space-3);align-items:center}.admin-work-order-filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text-muted);font-family:inherit;font-size:var(--text-md);cursor:pointer}.admin-work-order-date-filter-row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.admin-work-order-date-filter-label{display:flex;align-items:center;gap:var(--space-2);color:var(--fo-text-muted);font-size:var(--text-xs)}.admin-work-order-date-filter-input{padding:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text);font-family:inherit;font-size:var(--text-xs)}.booking-requests-page,.booking-request-detail-surface{--booking-type-quote: #7c3aed;--booking-type-quote-bg: rgba(124, 58, 237, .1);--booking-type-pending: #d97706;--booking-type-pending-bg: rgba(217, 119, 6, .12);--booking-type-accepted: #059669;--booking-type-accepted-bg: rgba(5, 150, 105, .1);--booking-type-declined: #dc2626;--booking-type-declined-bg: rgba(220, 38, 38, .1);--booking-success-bg: var(--fo-status-approved-bg);--booking-success-border: var(--fo-success-border);--booking-success-text: var(--fo-status-approved-text);--booking-warning-bg: var(--fo-status-in-progress-bg);--booking-warning-border: var(--fo-warning-border);--booking-warning-text: var(--fo-text-warning);min-width:0}.booking-requests-page .filter-bar{display:flex;align-items:center;gap:var(--space-2);min-width:0}.booking-requests-page .filter-pill{min-height:2rem;padding:.3rem .75rem;border:1px solid var(--fo-border);border-radius:var(--radius-pill);background:var(--fo-surface);color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:700;line-height:1;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.booking-requests-page .filter-pill:hover{border-color:var(--fo-accent);color:var(--fo-accent)}.booking-requests-page .filter-pill:focus-visible,.booking-requests-page .icon-btn:focus-visible,.booking-requests-page .request-card:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.booking-requests-page .filter-pill.active{border-color:var(--fo-accent);background:var(--fo-accent);color:#fff;box-shadow:var(--shadow-card)}.booking-requests-page .pill-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;margin-left:.25rem;padding:0 .3rem;border-radius:var(--radius-pill);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800}.booking-requests-page .filter-pill.active .pill-count{background:#ffffff38;color:#fff}.booking-requests-page .filter-spacer{flex:1 1 auto}.booking-requests-page .icon-btn{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;flex:0 0 2.25rem;padding:0;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text-muted)}.booking-requests-page .icon-btn:hover:not(:disabled){border-color:var(--fo-border-strong);background:var(--fo-surface-subtle);color:var(--fo-text)}.booking-requests-page .request-list{display:grid;align-content:start;gap:var(--space-3);min-width:0}.booking-requests-page .request-card{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.85rem;min-width:0;padding:.85rem 1rem;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card);color:var(--fo-text);text-align:left;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.booking-requests-page .request-card:hover{transform:translateY(-1px);border-color:var(--fo-border-strong);box-shadow:var(--shadow-popover)}.booking-requests-page .request-card.selected{border-color:var(--fo-accent);box-shadow:var(--shadow-focus),var(--shadow-card)}.booking-requests-page .request-avatar,.booking-request-detail-surface .panel-avatar{display:grid;place-items:center;flex:0 0 auto;border-radius:var(--radius-pill);background:var(--fo-soft-blue);color:var(--fo-accent-text);font-weight:800;letter-spacing:-.02em}.booking-requests-page .request-avatar{width:2.5rem;height:2.5rem;font-size:var(--text-sm)}.booking-requests-page .request-avatar.is-quote,.booking-request-detail-surface .panel-avatar.is-quote{background:var(--booking-type-quote-bg);color:var(--booking-type-quote)}.booking-requests-page .request-body{display:grid;gap:.25rem;min-width:0}.booking-requests-page .request-name{overflow:hidden;color:var(--fo-text);font-size:var(--text-md);font-weight:750;text-overflow:ellipsis;white-space:nowrap}.booking-requests-page .request-meta{display:flex;align-items:center;gap:.45rem;min-width:0;color:var(--fo-text-muted);font-size:var(--text-sm)}.booking-requests-page .request-meta>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-requests-page .type-badge{display:inline-flex;align-items:center;gap:.25rem;flex:0 0 auto;padding:.18rem .42rem;border:1px solid var(--fo-border);border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:800;line-height:1}.booking-requests-page .type-booking{border-color:#2155f533;background:var(--fo-accent-bg);color:var(--fo-accent-hover)}.booking-requests-page .type-quote{border-color:#7c3aed33;background:var(--booking-type-quote-bg);color:var(--booking-type-quote)}.booking-requests-page .request-state-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:700;line-height:1;white-space:nowrap}.booking-requests-page .request-state-pending{background:var(--booking-type-pending-bg);color:var(--booking-type-pending)}.booking-requests-page .request-state-accepted{background:var(--booking-type-accepted-bg);color:var(--booking-type-accepted)}.booking-requests-page .request-state-declined{background:var(--booking-type-declined-bg);color:var(--booking-type-declined)}.booking-requests-page .request-state-quoted{background:var(--booking-type-quote-bg);color:var(--booking-type-quote)}.booking-requests-page .request-state-expired{background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.booking-requests-page .request-status{justify-self:end;min-width:0}.booking-requests-page .request-time{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.booking-requests-page .content-list-only{min-width:0}.booking-request-detail-surface .panel-avatar{width:2.75rem;height:2.75rem;font-size:var(--text-md)}.booking-request-detail-surface .panel-header-info{display:grid;gap:.15rem;min-width:0;flex:1 1 auto}.booking-request-detail-surface .mobile-panel-body{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.booking-request-detail-surface .panel-contact{min-width:0;overflow-wrap:anywhere;color:var(--fo-text-muted);font-size:var(--text-sm)}.booking-request-detail-surface .mobile-panel-body{padding-bottom:var(--space-2)}.booking-request-detail-surface .panel-section{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.booking-request-detail-surface .detail-group{padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.booking-request-detail-surface .detail-outcome-group{gap:var(--space-3);background:var(--fo-bg-page-clean)}.booking-request-detail-surface .panel-section-title{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--fo-text);font-size:var(--text-xs);font-weight:750;letter-spacing:0;line-height:1.3}.booking-request-detail-surface .panel-section-title svg{width:.8125rem;height:.8125rem;flex:0 0 auto;color:var(--fo-accent)}.booking-request-detail-surface .panel-section-title.is-danger,.booking-request-detail-surface .panel-section-title.is-danger svg{color:var(--fo-text-danger)}.booking-request-detail-surface .info-grid{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.booking-request-detail-surface .info-row{display:grid;grid-template-columns:minmax(6.25rem,auto) minmax(0,1fr);align-items:start;gap:.625rem;min-width:0;font-size:var(--text-sm)}.booking-request-detail-surface .info-label{min-width:0;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:650;line-height:1.45}.booking-request-detail-surface .info-value{min-width:0;overflow-wrap:anywhere;word-break:break-word;color:var(--fo-text);font-size:var(--text-sm);line-height:1.45}.booking-request-detail-surface .info-value.is-emphasis{font-size:var(--text-lg);font-weight:800}.booking-request-detail-surface .info-value.is-muted{color:var(--fo-text-muted);font-style:italic}.booking-request-detail-surface .intake-block{display:flex;flex-direction:column;gap:0;min-width:0;overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface-subtle)}.booking-request-detail-surface .intake-item{min-width:0;padding:.7rem .8rem;border-bottom:1px solid var(--fo-border)}.booking-request-detail-surface .intake-item:last-child{border-bottom:0}.booking-request-detail-surface .intake-q{color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:750;line-height:1.35}.booking-request-detail-surface .intake-a{margin-top:.2rem;min-width:0;overflow-wrap:anywhere;word-break:break-word;color:var(--fo-text);font-size:var(--text-sm);line-height:1.4}.booking-request-detail-surface .compose-box,.booking-request-detail-surface .assign-box,.booking-request-detail-surface .decline-expand{display:flex;flex-direction:column;gap:.625rem;min-width:0;padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface-subtle)}.booking-request-detail-surface .assign-box{border-color:var(--fo-status-scheduled-border);background:var(--fo-status-scheduled-bg)}.booking-request-detail-surface .decline-expand{border-color:var(--fo-danger-border);background:var(--fo-status-cancelled-bg)}.booking-request-detail-surface .compose-label,.booking-request-detail-surface .assign-label{display:block;margin-bottom:.3rem;color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;line-height:1.35}.booking-request-detail-surface .assign-label{color:var(--fo-accent-hover)}.booking-request-detail-surface .decline-expand .compose-label{color:var(--fo-text-danger)}.booking-request-detail-surface .compose-input,.booking-request-detail-surface .assign-select{width:100%;min-width:0;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text)}.booking-request-detail-surface .compose-input:focus,.booking-request-detail-surface .assign-select:focus{outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent)}.booking-request-detail-surface .compose-input:disabled{background:var(--fo-status-draft-bg);color:var(--fo-text-muted);opacity:1}.booking-request-detail-surface .compose-textarea{min-height:4.5rem;resize:vertical;line-height:1.45}.booking-request-detail-surface .compose-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);min-width:0}.booking-request-detail-surface .compose-hint{display:block;margin-top:.3rem;color:var(--fo-text-muted);font-size:var(--text-2xs);line-height:1.35}.booking-request-detail-surface .optional-copy{color:var(--fo-text-muted);font-weight:500}.booking-request-detail-surface .accepted-banner,.booking-request-detail-surface .quoted-banner,.booking-request-detail-surface .booking-request-success{display:flex;align-items:flex-start;gap:.625rem;min-width:0;margin:0;padding:.75rem .875rem;border:1px solid var(--booking-success-border);border-radius:var(--radius-md);background:var(--booking-success-bg);color:var(--booking-success-text)}.booking-request-detail-surface .quoted-banner{border-color:var(--booking-warning-border);background:var(--booking-warning-bg);color:var(--booking-warning-text)}.booking-request-detail-surface .accepted-banner>svg,.booking-request-detail-surface .quoted-banner>svg{flex:0 0 auto;margin-top:.05rem}.booking-request-detail-surface .accepted-banner>div,.booking-request-detail-surface .quoted-banner>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}.booking-request-detail-surface .accepted-banner strong,.booking-request-detail-surface .quoted-banner strong{display:block;font-size:var(--text-sm);line-height:1.35}.booking-request-detail-surface .accepted-banner span,.booking-request-detail-surface .quoted-banner span{display:block;overflow-wrap:anywhere;color:var(--fo-text-muted);font-size:var(--text-xs);line-height:1.4}.booking-requests-page>.booking-request-success{margin:0}.booking-requests-page .booking-request-success,.booking-request-detail-surface .booking-request-success{align-items:center;font-size:var(--text-sm)}.booking-request-detail-surface .panel-copy{margin:0;overflow-wrap:anywhere;color:var(--fo-text-muted);font-size:var(--text-sm);line-height:1.5}.booking-request-detail-surface .booking-request-footer-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);min-width:0}.booking-request-detail-surface .booking-request-action-full{width:100%;min-width:0}.booking-request-detail-surface .panel-primary-action{min-height:2.65rem}.booking-request-detail-surface .detail-outcome-action{margin-top:var(--space-1)}.booking-request-detail-surface .mobile-panel-context{display:flex;align-items:center;gap:var(--space-3);min-width:0;margin-bottom:.875rem;padding-bottom:var(--space-3);border-bottom:1px solid var(--fo-border)}.booking-request-detail-surface .mobile-panel-context .panel-contact{overflow-wrap:anywhere;word-break:break-word}.booking-request-mobile-footer{width:100%;min-width:0}@media (max-width: 720px){.booking-requests-page .request-card{grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;padding:.75rem}.booking-requests-page .request-card>.request-time{grid-column:2 / 4;justify-self:start}.booking-requests-page .request-name{white-space:normal;overflow:visible}.booking-requests-page .request-meta{align-items:flex-start}.booking-requests-page .request-meta>span:last-child{white-space:normal;overflow:visible;overflow-wrap:anywhere}.booking-request-detail-surface .detail-group{padding:var(--space-3)}.booking-request-detail-surface .info-row{grid-template-columns:minmax(0,1fr);gap:.2rem}.booking-request-detail-surface .compose-row{grid-template-columns:minmax(0,1fr)}.booking-request-detail-surface,.booking-request-detail-surface *{max-width:100%}.booking-request-detail-surface .panel-contact,.booking-request-detail-surface .info-value,.booking-request-detail-surface .intake-a,.booking-request-detail-surface .panel-copy{overflow-wrap:anywhere;word-break:break-word}}@media (max-width: 420px){.booking-requests-page .filter-bar{gap:.35rem}.booking-requests-page .filter-pill{padding-inline:.6rem;font-size:var(--text-xs)}.booking-requests-page .pill-count{min-width:1rem;height:1rem;font-size:10px}.booking-requests-page .icon-btn{width:2rem;height:2rem;flex-basis:2rem}.booking-requests-page .request-avatar{width:2.25rem;height:2.25rem}.booking-requests-page .request-card{grid-template-columns:auto minmax(0,1fr)}.booking-requests-page .request-status{grid-column:2;justify-self:start}.booking-requests-page .request-card>.request-time{grid-column:2}}.dashboard-metric-card.fo-dashboard-top-card{position:relative;overflow:hidden;min-height:8.35rem;padding:18px;border:1px solid var(--fo-border);border-radius:var(--radius-xl);background:linear-gradient(135deg,#fffffffa,#f6f8fdf5),var(--fo-surface);box-shadow:var(--shadow-card);isolation:isolate}.dashboard-metric-card.fo-dashboard-top-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--fo-accent);opacity:.9}.dashboard-metric-card.fo-dashboard-top-card:after{content:"";position:absolute;right:-34px;top:-42px;width:120px;height:120px;border-radius:999px;background:var(--fo-accent-bg);z-index:-1}.dashboard-metric-card.fo-dashboard-top-card:hover{border-color:var(--fo-border-strong);box-shadow:0 16px 30px #0f172a14}.dashboard-metric-card.fo-dashboard-top-card .dashboard-metric-icon{width:36px;height:36px;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff8c}.dashboard-metric-card.fo-dashboard-top-card .dashboard-metric-title{color:var(--fo-text-muted);font-weight:700;letter-spacing:.01em}.dashboard-metric-card.fo-dashboard-top-card .dashboard-metric-value{font-weight:800;letter-spacing:-.04em}.fo-dashboard-top-card--blue:before{background:#2f57df}.fo-dashboard-top-card--blue:after{background:#2f57df1f}.fo-dashboard-top-card--green:before{background:#059669}.fo-dashboard-top-card--green:after{background:#0596691f}.fo-dashboard-top-card--amber:before{background:#d97706}.fo-dashboard-top-card--amber:after{background:#d9770624}.fo-dashboard-top-card--red:before{background:#dc2626}.fo-dashboard-top-card--red:after{background:#dc26261f}.fo-dashboard-top-card--purple:before{background:#7c3aed}.fo-dashboard-top-card--purple:after{background:#7c3aed1f}.dashboard-metric-icon--green{background:#e4f8ed;color:#059669}.fo-drawer-link-button{display:inline;padding:0;border:0;background:transparent;font:inherit;color:var(--fo-accent);font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}@media (max-width: 720px){.dashboard-metric-card.fo-dashboard-top-card{min-height:0}}.fo-dashboard-top-card--blue:before{background:#2155f5}.fo-dashboard-top-card--blue:after{background:#2155f51f}.dashboard-metric-card--sparkline{padding-right:92px;padding-bottom:36px}.dashboard-metric-card--sparkline .dashboard-metric-description{max-width:calc(100% - 6px)}.dashboard-metric-sparkline{position:absolute;right:14px;bottom:12px;width:72px;height:28px;opacity:.6;pointer-events:none}.dashboard-tab-switcher{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;align-self:flex-start;padding:3px;border:1px solid var(--fo-border);border-radius:11px;background:var(--fo-surface-subtle)}.dashboard-tab-switcher button{min-width:94px;min-height:34px;border:0;border-radius:8px;background:transparent;color:var(--fo-text-muted);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}.dashboard-tab-switcher button[aria-selected=true]{background:var(--fo-surface);color:#2155f5;box-shadow:0 1px 3px #0f172a1a}.dashboard-metrics-group-label{margin:2px 0 -4px;color:var(--fo-text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}@media (max-width:720px){.dashboard-metric-card--sparkline{min-height:8.35rem;padding-right:92px;padding-bottom:36px}.dashboard-tab-switcher{width:100%}.dashboard-tab-switcher button{min-height:44px}}.fo-payroll-tab-bar{display:flex;flex-wrap:wrap;gap:.125rem;border-bottom:1px solid var(--fo-border);margin-bottom:var(--space-5);min-width:0}.fo-payroll-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--fo-text-muted);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:800;margin-bottom:-1px;padding:.625rem 1rem;transition:color .15s ease,border-color .15s ease,background .15s ease}.fo-payroll-tab:hover{color:var(--fo-text);background:var(--fo-surface-muted)}.fo-payroll-tab.is-active{color:var(--fo-accent);border-bottom-color:var(--fo-accent)}.fo-tab-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;margin-left:var(--space-2);padding:0 .375rem;border-radius:var(--radius-pill);background:var(--fo-status-cancelled-bg);color:var(--fo-text-danger);font-size:var(--text-2xs);font-weight:900}.fo-payroll-metric-icon,.fo-clocked-in-card-icon,.fo-payroll-detail-hero-icon,.fo-per-job-session-icon,.fo-export-card-icon,.fo-payroll-export-icon{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:var(--fo-accent-bg);color:var(--fo-accent);flex:0 0 auto}.fo-clocked-in-card{position:relative;background:linear-gradient(135deg,var(--fo-surface),var(--fo-surface-muted))}.fo-clocked-in-card-icon{width:2rem;height:2rem}.fo-payroll-period-nav{padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-muted)}.fo-payroll-period-nav .btn{display:inline-flex;align-items:center;gap:var(--space-1)}.fo-payroll-period-pill{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--fo-text);min-width:12rem}.fo-payroll-detail-hero,.fo-payroll-export-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--fo-surface),var(--fo-surface-muted));box-shadow:var(--shadow-sm);flex-wrap:wrap}.fo-payroll-detail-hero>div,.fo-payroll-export-header>div{display:grid;gap:var(--space-1);min-width:0}.fo-payroll-detail-hero strong,.fo-payroll-export-header h2{margin:0;overflow-wrap:anywhere}.fo-per-job-session-card{padding:var(--space-4)}.fo-per-job-session-list{display:grid;gap:var(--space-2)}.fo-per-job-session-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.fo-per-job-session-row+.fo-per-job-session-row{border-top:1px solid var(--fo-border)}.fo-per-job-session-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.fo-per-job-session-meta>span:not(.status-badge){padding:.25rem .5rem;border-radius:999px;background:var(--fo-surface-muted);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700}.fo-export-card{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;gap:var(--space-3);padding:var(--space-4)}.fo-export-card-copy{display:grid;gap:var(--space-1);min-width:0;width:100%}.fo-export-card h2{font-size:var(--text-md)}.fo-export-card .btn{justify-self:start}.fo-payable-status-badge{display:inline-flex;align-items:center;border:1px solid var(--fo-danger-border);border-radius:var(--radius-pill);background:var(--fo-status-cancelled-bg);color:var(--fo-text-danger);font-size:var(--text-2xs);font-weight:800;letter-spacing:.01em;line-height:1;padding:.25rem .625rem;white-space:nowrap}.fo-payable-status-badge--needs-payment{box-shadow:inset 0 0 0 1px #b4231814}@media (max-width: 700px){.fo-payroll-tab-bar{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;gap:0;padding-bottom:.125rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.fo-payroll-tab-bar::-webkit-scrollbar{display:none}.fo-payroll-tab{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;padding:.55rem .75rem}.fo-tab-count-badge{min-width:1.1rem;height:1.1rem;margin-left:.35rem;padding:0 .3rem}.fo-payroll-period-nav,.fo-payroll-export-header{display:grid;grid-template-columns:minmax(0,1fr);justify-items:stretch}.fo-export-card .btn{justify-self:stretch}.fo-payroll-period-pill{min-width:0;justify-content:flex-start}.fo-per-job-session-row{grid-template-columns:minmax(0,1fr)}}.fo-outstanding-payables-list{border-color:var(--fo-danger-border)}.fo-outstanding-payables-list td .muted{display:block;margin-top:.125rem}.fo-clickable-payroll-row,.fo-per-job-session-row--clickable{cursor:pointer}.fo-clickable-payroll-row:focus-visible,.fo-clickable-payroll-row:hover,.fo-per-job-session-row--clickable:focus-visible,.fo-per-job-session-row--clickable:hover{outline:2px solid var(--fo-accent-border, var(--fo-accent));outline-offset:-2px;background:var(--fo-surface-muted)}.fo-clickable-payroll-row .btn,.fo-per-job-session-row--clickable .btn{cursor:pointer}.settings-layout-tabbar,.settings-layout-tabbar .settings-tab-link.active{border-radius:var(--radius-xl)}.settings-general-page .settings-toggle-row{display:flex;align-items:center;gap:var(--space-3)}.settings-labour-rates-page .settings-currency-input{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-2)}.settings-labour-rates-page .settings-currency-prefix{color:var(--fo-text-muted);font-weight:700}.settings-labour-rates-page .settings-labour-rate-checkbox{line-height:1.2}.settings-labour-rates-page .settings-inline-checkbox-control{width:16px;height:16px;min-height:16px;margin:0;flex:0 0 auto}.user-profile-photo-preview{width:144px;height:144px;max-width:min(144px,100%);max-height:144px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;overflow:hidden}.settings-user-purge-eyebrow{margin:0;color:var(--fo-text-danger)}.settings-user-purge-title,.settings-user-purge-copy,.settings-user-purge-list{margin:0}.settings-user-purge-actions{justify-content:flex-end}.settings-checklist-inline-checkbox{line-height:1.2}.settings-checklist-checkbox-control{width:1rem;height:1rem;min-height:1rem;margin:0;flex:0 0 auto}.settings-checklist-copy-reset{margin:0}.settings-checklist-type-field{grid-column:1 / -1}.settings-checklist-type-heading{margin:0 0 var(--space-2);color:var(--fo-text);font-size:var(--text-sm)}.settings-checklist-type-tabs{display:inline-flex;width:100%;max-width:22rem;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle)}.settings-checklist-type-tabs [data-checklist-type]{flex:1 1 0;min-width:0}.settings-checklist-customer-autocomplete,.settings-checklist-customer-input-wrap{position:relative;width:100%}.settings-checklist-customer-input[data-selected=true]{padding-right:4.5rem}.settings-checklist-customer-input[data-open=true]{border-bottom-left-radius:0;border-bottom-right-radius:0}.settings-checklist-customer-clear{position:absolute;top:50%;right:var(--space-1);min-height:1.75rem;padding-inline:var(--space-2);transform:translateY(-50%)}.settings-checklist-customer-suggestions{position:absolute;z-index:30;top:calc(100% - 1px);right:0;left:0;max-height:16rem;overflow-y:auto;border:1px solid var(--fo-border);border-top:0;border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--fo-surface);box-shadow:var(--shadow-card)}.settings-checklist-customer-suggestion-state{padding:var(--space-3)}.settings-checklist-customer-option{display:block;width:100%;padding:var(--space-3);border:0;background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer}.settings-checklist-customer-option+.settings-checklist-customer-option{border-top:1px solid var(--fo-border)}.settings-checklist-customer-option[data-highlighted=true]{background:var(--fo-surface-subtle)}.settings-checklist-customer-option-primary,.settings-checklist-customer-option-secondary{display:block}.settings-checklist-customer-option-secondary{margin-top:var(--space-1);font-size:var(--text-xs)}.booking-pricing-form{min-width:0}.booking-pricing-checkbox{justify-content:flex-start}.booking-pricing-checkbox input{width:18px;height:18px;accent-color:var(--fo-accent)}.booking-pricing-methods{display:grid;gap:var(--space-3);margin:0;padding:0;border:0;min-width:0}.booking-pricing-methods legend{color:var(--fo-text);font-size:.875rem;font-weight:700}.booking-pricing-method-card{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid #e2e6ed;border-radius:9px;background:var(--fo-bg-page);cursor:pointer}.booking-pricing-method-card.is-selected{border-color:var(--fo-accent);background:#f4f8ff}.booking-pricing-method-card input{margin-top:2px;accent-color:var(--fo-accent)}.booking-pricing-method-card span{display:grid;gap:4px;min-width:0}.booking-pricing-method-card small{color:var(--fo-text-muted);line-height:1.4;overflow-wrap:anywhere}.booking-pricing-linked-field{display:grid;gap:var(--space-2);min-width:0}.booking-pricing-warning{margin:0;padding:var(--space-2) var(--space-3);border:1px solid #e6b866;border-radius:8px;background:#fff9eb;color:#725015;font-size:.8125rem;line-height:1.4}.booking-pricing-field-error{color:var(--fo-text-danger);font-size:var(--text-xs);line-height:1.35}@media (max-width: 600px){.booking-pricing-method-card{align-items:flex-start}.booking-pricing-form .button-row{flex-wrap:wrap}.booking-pricing-form .fo-input{max-width:100%}}.portal-settings-page{width:100%;max-width:none;min-width:0;gap:var(--space-5, 1.25rem)}.portal-settings-form{width:100%;min-width:0;gap:var(--space-5, 1.25rem)}.portal-settings-card{min-width:0;padding:var(--space-5, 1.25rem);gap:var(--space-4);border:1px solid #e2e6ed!important;border-radius:12px!important;background:var(--fo-surface);box-shadow:0 1px 3px #0f172a0f,0 2px 8px #0f172a0a!important;transition:opacity .16s ease}.portal-settings-card.is-disabled{opacity:.4;pointer-events:none}.portal-settings-card-fieldset{display:grid;gap:var(--space-4);min-width:0;margin:0;padding:0;border:0}.portal-settings-card-fieldset:disabled{color:inherit}.portal-settings-heading-row.fo-section-heading-row{display:flex;flex-direction:row;align-items:flex-start;gap:var(--space-3);min-width:0}.portal-settings-section-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border:0;border-radius:8px;background:#e8effe;color:var(--fo-accent)}.portal-settings-heading-copy{display:grid;gap:2px;min-width:0}.portal-settings-heading-copy h2{margin:0;color:var(--fo-text);font-size:1rem;line-height:1.35;font-weight:700;letter-spacing:-.01em}.portal-settings-heading-copy p{margin:0;color:var(--fo-text-muted);font-size:.8125rem;line-height:1.4}.portal-settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-width:0;padding:var(--space-3) var(--space-4);border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-bg-page)}.portal-settings-toggle-row>div:first-child{min-width:0}.portal-settings-toggle-label{color:var(--fo-text);font-size:.9375rem;font-weight:500}.portal-settings-toggle-description{margin-top:2px;color:var(--fo-text-muted);font-size:.8125rem;line-height:1.4}.portal-settings-pill-toggle{position:relative;flex:0 0 44px;width:44px;height:24px;cursor:pointer}.portal-settings-pill-toggle input{position:absolute;width:1px;height:1px;margin:0;padding:0;opacity:0}.portal-settings-pill-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:var(--fo-border-strong);transition:background .18s ease}.portal-settings-pill-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .18s ease}.portal-settings-pill-toggle input:checked+.portal-settings-pill-track{background:var(--fo-accent)}.portal-settings-pill-toggle input:checked~.portal-settings-pill-thumb{transform:translate(20px)}.portal-settings-pill-toggle input:focus-visible+.portal-settings-pill-track{outline:2px solid var(--fo-accent);outline-offset:2px}.portal-settings-detail-card{padding:var(--space-5, 1.25rem)}.portal-settings-subsection{display:grid;gap:var(--space-3);min-width:0}.portal-settings-divider{height:1px;margin:var(--space-1) 0;background:#e2e6ed}.portal-settings-job-list,.portal-settings-hours-grid{display:grid;gap:var(--space-2);min-width:0}.portal-settings-job-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-bg-page);transition:border-color .15s ease,background .15s ease}.portal-settings-job-row.is-bookable,.portal-settings-hours-row.is-open{border-color:#c5d7fc;background:#f8fbff}.portal-settings-row-checkbox{flex:0 0 auto;width:18px;height:18px;margin:0;padding:0;accent-color:var(--fo-accent);cursor:pointer}.portal-settings-job-name{flex:1 1 auto;min-width:0;color:var(--fo-text);font-size:.9375rem;font-weight:500;overflow-wrap:anywhere}.portal-settings-duration-help{margin:0;color:var(--fo-text-muted);font-size:.8125rem;line-height:1.5}.portal-settings-duration{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto;color:var(--fo-text-muted);font-size:.8125rem}.portal-settings-duration label{white-space:nowrap}.portal-settings-duration>span:last-child{white-space:nowrap}.portal-settings-duration[aria-hidden=true]{visibility:hidden}.portal-settings-duration-input,.portal-settings-time-input,.portal-settings-rule-number,.portal-settings-rule-select{border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-surface);color:var(--fo-text)}.portal-settings-duration-input:focus,.portal-settings-time-input:focus,.portal-settings-rule-number:focus,.portal-settings-rule-select:focus{outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent)}.portal-settings-duration-input{width:72px;padding:var(--space-2) var(--space-3);font-size:.8125rem;text-align:center}.portal-settings-row-error{flex:1 0 100%;margin-left:30px;color:var(--fo-text-danger);font-size:var(--text-xs);line-height:1.35}.portal-settings-hours-row{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-bg-page)}.portal-settings-hours-day{display:flex;align-items:center;gap:var(--space-2);min-width:0;color:var(--fo-text);font-size:.8125rem;font-weight:600}.portal-settings-hours-day .portal-settings-row-checkbox{width:16px;height:16px}.portal-settings-hours-times{display:flex;align-items:center;gap:var(--space-2);min-width:0}.portal-settings-time-input{width:110px;min-width:0;padding:var(--space-2) var(--space-3);font-size:.8125rem}.portal-settings-hours-separator{flex:0 0 auto;color:var(--fo-text-muted);font-size:.8125rem}.portal-settings-hours-closed{color:#8a93a6;font-size:.8125rem;font-style:italic}.portal-settings-rules-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4);min-width:0}.portal-settings-rule-field{display:grid;gap:var(--space-2);min-width:0}.portal-settings-rule-label{color:var(--fo-text);font-size:.8125rem;font-weight:600}.portal-settings-rule-description{margin-top:-4px;color:var(--fo-text-muted);font-size:.75rem;line-height:1.35}.portal-settings-rule-input-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.portal-settings-rule-number{width:72px;padding:var(--space-2) var(--space-3);font-size:.9375rem;text-align:center}.portal-settings-rule-select{min-width:0;padding:var(--space-2) var(--space-3);font-size:.8125rem}.portal-settings-link-row{display:flex;align-items:stretch;gap:var(--space-2);min-width:0}.portal-settings-link-display{flex:1 1 auto;min-width:0;overflow:hidden;padding:var(--space-3) var(--space-4);border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-bg-page);color:var(--fo-text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;text-overflow:ellipsis;white-space:nowrap}.portal-settings-copy-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);flex:0 0 auto;padding:var(--space-2) var(--space-4);border:1px solid #e2e6ed;border-radius:8px;background:var(--fo-surface);color:var(--fo-text);font-size:.8125rem;font-weight:600;white-space:nowrap;transition:border-color .12s ease,background .12s ease,color .12s ease}.portal-settings-copy-button:hover:not(:disabled){border-color:var(--fo-accent);background:#e8effe;color:var(--fo-accent)}.portal-settings-copy-message{display:flex;align-items:center;gap:4px;margin-top:var(--space-1);color:var(--fo-text-muted);font-size:.75rem}.portal-settings-copy-message.is-success{color:#059669}.portal-settings-save-footer{display:flex;align-items:center;gap:var(--space-3)}@media (min-width: 1180px){.portal-settings-form{display:grid;grid-template-columns:minmax(18rem,4fr) minmax(0,8fr);align-items:stretch}.portal-settings-form>[data-portal-settings-section=booking-details],.portal-settings-save-footer{grid-column:1 / -1}.portal-settings-heading-copy p,.portal-settings-duration-help{max-width:68ch}.portal-settings-hours-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.portal-settings-hours-row{grid-template-columns:minmax(6.5rem,.8fr) minmax(0,1.6fr)}}@media (max-width: 599px){.portal-settings-page{max-width:100%}.portal-settings-card{padding:var(--space-4)}.portal-settings-rules-grid{grid-template-columns:minmax(0,1fr)}.portal-settings-hours-row{grid-template-columns:100px minmax(0,1fr)}.portal-settings-hours-times{flex-wrap:wrap}.portal-settings-job-row{padding-inline:var(--space-3)}.portal-settings-duration{gap:6px}.portal-settings-duration label{font-size:.75rem}.portal-settings-duration-input{width:64px;padding-inline:var(--space-2)}.portal-settings-link-display{padding-inline:var(--space-3)}}@media (max-width: 420px){.portal-settings-hours-row{grid-template-columns:88px minmax(0,1fr);padding-inline:var(--space-3)}.portal-settings-time-input{width:104px}.portal-settings-job-row{gap:var(--space-2)}.portal-settings-job-name{font-size:.875rem}.portal-settings-duration label{font-size:.6875rem}}.portal-settings-mode-group{display:grid;gap:var(--space-3);margin:0;padding:0;border:0}.portal-settings-mode-group legend{margin-bottom:var(--space-2);color:var(--fo-text);font-size:.8125rem;font-weight:700}.portal-settings-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.portal-settings-mode-card{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid #e2e6ed;border-radius:10px;background:var(--fo-bg-page);cursor:pointer}.portal-settings-mode-card.is-selected{border-color:var(--fo-accent);background:#f4f8ff}.portal-settings-mode-card input{margin-top:2px;accent-color:var(--fo-accent)}.portal-settings-mode-card span{display:grid;gap:4px;min-width:0}.portal-settings-mode-card small,.portal-settings-job-name small{display:block;color:var(--fo-text-muted);font-size:.75rem;font-weight:400;line-height:1.4;overflow-wrap:anywhere}.portal-settings-labelled-control{display:grid;gap:var(--space-2);color:var(--fo-text);font-size:.8125rem;font-weight:600}.portal-settings-inline-control{display:flex;align-items:center;gap:var(--space-2);color:var(--fo-text-muted);font-weight:400}.portal-settings-intake-list,.portal-settings-options-editor{display:grid;gap:var(--space-3);min-width:0}.portal-settings-intake-card{display:grid;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid #e2e6ed;border-radius:10px;background:var(--fo-bg-page)}.portal-settings-intake-toolbar,.portal-settings-options-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0}.portal-settings-intake-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.portal-settings-intake-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,1fr) auto;align-items:end;gap:var(--space-3);min-width:0}.portal-settings-intake-grid>label:not(.portal-settings-required-toggle){display:grid;gap:var(--space-2);min-width:0;color:var(--fo-text);font-size:.8125rem;font-weight:600}.portal-settings-required-toggle{display:flex;align-items:center;gap:var(--space-2);min-height:42px;color:var(--fo-text);font-size:.8125rem;font-weight:600}.portal-settings-required-toggle input{width:18px;height:18px;accent-color:var(--fo-accent)}.portal-settings-option-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);min-width:0}.portal-settings-option-row label{color:var(--fo-text-muted);font-size:.75rem;font-weight:600}.portal-settings-empty-intake{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px dashed #d3d9e4;border-radius:8px;color:var(--fo-text-muted);font-size:.8125rem;line-height:1.45}@media (max-width: 600px){.portal-settings-mode-grid,.portal-settings-intake-grid,.portal-settings-rules-grid{grid-template-columns:minmax(0,1fr)}.portal-settings-intake-toolbar,.portal-settings-options-heading,.portal-settings-link-row{align-items:stretch;flex-direction:column}.portal-settings-intake-actions,.portal-settings-options-heading .btn,.portal-settings-link-row .portal-settings-copy-button{width:100%}.portal-settings-intake-actions .btn{flex:1 1 120px}.portal-settings-option-row,.portal-settings-hours-row{grid-template-columns:minmax(0,1fr)}.portal-settings-hours-times{flex-wrap:wrap}.portal-settings-job-row{align-items:flex-start}.portal-settings-duration{display:grid;grid-template-columns:minmax(0,1fr) max-content;width:100%;padding-left:30px}.portal-settings-duration label{grid-column:1 / -1;white-space:normal}.portal-settings-link-display{white-space:normal;overflow-wrap:anywhere}}.settings-billing-catalog-page .settings-currency-input{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-2)}.settings-billing-catalog-page .settings-currency-prefix{color:var(--fo-text-muted);font-weight:700}.settings-billing-catalog-page .settings-catalog-checkbox{line-height:1.2}.settings-billing-catalog-page .settings-inline-checkbox-control{width:16px;height:16px;min-height:16px;margin:0;flex:0 0 auto}.settings-billing-catalog-page .settings-create-action-row{justify-content:flex-end;margin-bottom:var(--space-3)}.settings-department-description{display:block}.audit-log-metadata-json{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere}.settings-layout-template-card{width:100%;justify-content:flex-start;text-align:left}.settings-layout-template-card-copy{display:grid;gap:var(--space-1)}.settings-layout-access-code-card{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--fo-status-in-progress-border);border-radius:var(--radius-lg);background:var(--fo-status-in-progress-bg)}.settings-layout-access-code-label,.settings-layout-editor-placeholder-eyebrow{margin:0;color:var(--fo-status-in-progress-text);font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.settings-layout-access-code-label{margin-bottom:var(--space-1)}.settings-layout-access-code-value{color:var(--fo-status-in-progress-text);font-family:monospace;font-size:var(--text-2xl);letter-spacing:.16em}.settings-layout-field-text-block{padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.settings-layout-field-text-block[data-tone=warning]{border-color:var(--fo-status-in-progress-border);background:var(--fo-status-in-progress-bg)}.settings-layout-field-text-block p{margin:0;color:var(--fo-text);font-size:var(--text-md);line-height:1.6}.settings-layout-field-text-block[data-tone=warning] p{color:var(--fo-status-in-progress-text)}.settings-layout-work-order-preview-list,.settings-layout-parts-labour-preview{display:grid;gap:var(--space-3)}.settings-layout-work-order-preview-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle)}.settings-layout-work-order-preview-title{margin:0 0 var(--space-1);color:var(--fo-text);font-size:var(--text-md);font-weight:600}.settings-layout-preview-meta,.settings-layout-photo-requirement-card p{margin:0;color:var(--fo-text-muted);font-size:var(--text-xs)}.settings-layout-preview-status{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase}.settings-layout-access-code-slot{margin-top:var(--space-3)}.settings-layout-checklist-preview-text[data-completed=true]{text-decoration:line-through;opacity:.78}.settings-layout-photo-requirement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--space-2)}.settings-layout-photo-requirement-card{padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.settings-layout-photo-requirement-card strong{color:var(--fo-text);font-size:var(--text-md)}.settings-layout-photo-requirement-card p{margin-top:var(--space-1)}.settings-layout-editor-surface-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.settings-layout-editor-surface-content{padding-top:var(--space-3)}.settings-layout-template-workflow{margin-bottom:var(--space-3)}.settings-layout-copy-reset{margin:0}.settings-layout-editor-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13.75rem,1fr));gap:var(--space-3)}.settings-layout-editor-selection-card{display:grid;align-items:start;justify-content:start;gap:var(--space-2);padding:var(--space-5);text-align:left;cursor:pointer}.settings-layout-editor-selection-title{font-size:var(--text-xl)}.settings-layout-editor-selection-copy{color:var(--fo-text-muted);font-size:var(--text-sm)}.settings-layout-editor-drawer-footer-slot{width:100%}.settings-layout-editor-placeholder-header{display:grid;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface-subtle)}.settings-layout-editor-placeholder-eyebrow{color:var(--fo-text-muted)}.settings-layout-editor-placeholder-title,.settings-layout-editor-placeholder-copy{margin:0}.settings-layout-editor-placeholder-title{color:var(--fo-text);font-size:var(--text-xl)}.settings-layout-editor-placeholder-copy{color:var(--fo-text-muted);font-size:var(--text-sm)}.analytics-dashboard{display:grid;gap:20px;min-width:0}.analytics-week-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border-radius:16px;background:#0f2747;color:#fff;min-height:104px}.analytics-week-summary>div{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:18px 20px;border-right:1px solid rgba(255,255,255,.1)}.analytics-week-summary>div:last-child{border-right:0}.analytics-week-summary span{color:#ffffffb8;font-size:.78rem;font-weight:700}.analytics-week-summary strong{font-size:1.55rem;letter-spacing:-.035em}.analytics-week-summary small{color:#fff9}.analytics-week-summary small.trend-positive{color:#6ee7b7}.analytics-week-summary small.trend-negative{color:#fca5a5}.analytics-week-summary small.trend-neutral{color:#fff9}.analytics-period-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.analytics-period-pills{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:4px;border:1px solid var(--fo-border);background:var(--fo-surface-subtle);border-radius:12px}.analytics-period-pills button{border:0;background:transparent;color:var(--fo-text-muted);padding:7px 12px;border-radius:9px;font:inherit;font-weight:700;cursor:pointer}.analytics-period-pills button.active{background:var(--fo-surface);color:#2155f5;box-shadow:0 1px 3px #0f172a1f}.analytics-custom-dates{display:flex;gap:8px;flex-wrap:wrap}.analytics-custom-dates label{display:flex;align-items:center;gap:6px;color:var(--fo-text-muted);font-size:.8rem;font-weight:700}.analytics-custom-dates input{min-height:36px;border:1px solid var(--fo-border);border-radius:9px;padding:0 8px;background:var(--fo-surface);color:var(--fo-text)}.analytics-resolved-range{margin-left:auto;color:var(--fo-text-muted);font-size:.83rem;font-weight:700}.analytics-section-heading{display:flex;flex-direction:column;gap:2px;padding-top:2px}.analytics-section-heading>span{color:#2155f5;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.analytics-section-heading h2{margin:0;font-size:1.05rem}.analytics-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.analytics-card{min-width:0;border:1px solid var(--fo-border);border-radius:16px;background:var(--fo-surface);box-shadow:var(--shadow-card);padding:18px;overflow:hidden}.analytics-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.analytics-heading-wrap{display:flex;align-items:flex-start;gap:10px}.analytics-heading-icon,.analytics-empty-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#2155f517;color:#2155f5;flex:none}.analytics-card h3{margin:0;font-size:1rem}.analytics-card-header p{margin:3px 0 0;color:var(--fo-text-muted);font-size:.78rem;line-height:1.4}.analytics-kpi-line{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.analytics-kpi-line strong{font-size:1.6rem;letter-spacing:-.04em}.analytics-kpi-line span{color:var(--fo-text-muted);font-size:.78rem;font-weight:700}.analytics-tooltip{display:flex;flex-direction:column;gap:3px;border:1px solid var(--fo-border);border-radius:9px;padding:8px 10px;background:var(--fo-surface);box-shadow:var(--shadow-card);font-size:.75rem}.analytics-tooltip strong{margin-bottom:2px}.analytics-aging-track{display:flex;overflow:hidden;width:100%;height:16px;border-radius:999px;background:var(--fo-surface-subtle);margin:16px 0 18px}.analytics-aging-track span{display:block;min-width:0}.analytics-aging-legend{display:grid;gap:9px}.analytics-aging-legend>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:.79rem}.analytics-aging-legend i,.analytics-status-legend i{width:9px;height:9px;border-radius:3px}.analytics-aging-legend small{grid-column:2 / span 2;color:var(--fo-text-muted)}.analytics-anomaly{margin:12px 0 0;padding:9px 10px;border-radius:9px;background:#d9770614;color:var(--fo-text-muted);font-size:.75rem}.analytics-action-cue{margin:-4px 0 8px;color:var(--fo-text-muted);font-size:.72rem}.analytics-donut-wrap{position:relative}.analytics-donut-center{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.analytics-donut-center strong{font-size:1.45rem}.analytics-donut-center span{color:var(--fo-text-muted);font-size:.72rem}.analytics-status-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.analytics-status-legend button{display:grid;grid-template-columns:9px 1fr auto;gap:7px;align-items:center;border:0;padding:5px;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit;font-size:.76rem}.analytics-jobs-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin:0 0 12px;min-width:0}.analytics-jobs-legend button{display:inline-flex;align-items:center;gap:6px;min-width:0;border:0;background:transparent;color:var(--fo-text-muted);padding:2px 0;cursor:pointer;font:inherit;font-size:.72rem;font-weight:700}.analytics-jobs-legend button:hover span,.analytics-jobs-legend button:focus-visible span{color:var(--fo-text)}.analytics-jobs-legend i{width:9px;height:9px;border-radius:3px;flex:none}.analytics-jobs-mobile-weeks{display:none;gap:10px;min-width:0}.analytics-jobs-mobile-week{min-width:0;border:1px solid var(--fo-border);border-radius:11px;padding:10px;background:var(--fo-surface-subtle)}.analytics-jobs-mobile-week-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:.76rem}.analytics-jobs-mobile-week-header span{color:var(--fo-text-muted);font-weight:700;white-space:nowrap}.analytics-jobs-mobile-stack{display:flex;width:100%;min-width:0;height:10px;overflow:hidden;border-radius:999px;background:var(--fo-border)}.analytics-jobs-mobile-stack>span:not(.analytics-jobs-mobile-stack-empty){display:block;height:100%;min-width:0}.analytics-jobs-mobile-stack-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--fo-text-muted);font-size:.58rem;font-weight:700}.analytics-jobs-mobile-counts{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:8px;min-width:0}.analytics-jobs-mobile-counts button{display:inline-grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:5px;max-width:100%;border:0;background:transparent;color:var(--fo-text-muted);padding:2px 0;cursor:pointer;font:inherit;font-size:.68rem;text-align:left}.analytics-jobs-mobile-counts button i{width:8px;height:8px;border-radius:3px}.analytics-jobs-mobile-counts button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-jobs-mobile-counts button strong{color:var(--fo-text);font-size:.68rem}.analytics-productivity-list{display:grid;gap:8px}.analytics-productivity-row{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--fo-border)}.analytics-productivity-row:last-child{border-bottom:0}.analytics-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#2155f517;color:#2155f5;font-weight:800;font-size:.72rem}.analytics-productivity-main{min-width:0}.analytics-productivity-main>div{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:.8rem}.analytics-productivity-main>div span{color:var(--fo-text-muted)}.analytics-productivity-main i{display:block;margin-top:7px;height:6px;border-radius:999px;overflow:hidden;background:var(--fo-border)}.analytics-productivity-main em{display:block;height:100%;border-radius:inherit;background:#2155f5}.trend-positive{color:#059669;font-weight:800}.trend-negative{color:#dc2626;font-weight:800}.trend-neutral{color:var(--fo-text-muted);font-weight:800}.analytics-productivity-trend{display:flex;flex-direction:column;align-items:flex-end;gap:1px;white-space:nowrap;font-size:.78rem}.analytics-productivity-trend small{color:var(--fo-text-muted);font-size:.65rem;font-weight:700}.analytics-customer-table-scroll{width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.analytics-customer-table{width:100%;min-width:760px;border-collapse:collapse}.analytics-customer-table th,.analytics-customer-table td{padding:11px 10px;border-bottom:1px solid var(--fo-border);text-align:left;white-space:nowrap;font-size:.79rem}.analytics-customer-table th{color:var(--fo-text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.analytics-customer-table tbody tr{cursor:pointer}.analytics-customer-table tbody tr:hover{background:var(--fo-surface-subtle)}.analytics-customer-trend{width:86px;height:30px}.analytics-empty-state{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;padding:20px}.analytics-empty-state strong{margin-top:4px}.analytics-empty-state p{max-width:390px;margin:0;color:var(--fo-text-muted);font-size:.8rem;line-height:1.5}.analytics-failure-state{min-height:140px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--fo-text-muted);font-size:.82rem}.analytics-skeleton{min-height:230px;display:flex;flex-direction:column;gap:10px;animation:analytics-pulse 1.4s ease-in-out infinite}.analytics-skeleton-line,.analytics-skeleton-body{display:block;border-radius:8px;background:linear-gradient(90deg,var(--fo-surface-subtle),rgba(148,163,184,.16),var(--fo-surface-subtle));background-size:200% 100%}.analytics-skeleton-line{height:13px;width:62%}.analytics-skeleton-line--value{height:30px;width:32%}.analytics-skeleton-body{flex:1;width:100%}.analytics-week-summary>.analytics-skeleton{grid-column:1/-1;margin:14px;min-height:76px}@keyframes analytics-pulse{50%{opacity:.58}}@media (max-width:960px){.analytics-two-column{grid-template-columns:1fr}}@media (max-width:600px){.analytics-week-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-week-summary>div:nth-child(2){border-right:0}.analytics-week-summary>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}.analytics-jobs-chart{display:none}.analytics-jobs-mobile-weeks{display:grid}.analytics-card{padding:15px}.analytics-resolved-range{width:100%;margin-left:0}.analytics-custom-dates{width:100%}.analytics-custom-dates label{flex:1;min-width:150px}.analytics-custom-dates input{width:100%}}@media (max-width:480px){.analytics-revenue-scroll{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.analytics-revenue-chart{min-width:680px}.analytics-week-summary strong{font-size:1.25rem}.analytics-week-summary>div{padding:14px 12px}.analytics-card-header{flex-wrap:wrap}.analytics-period-row{align-items:flex-start}}.contractor-dashboard-screen,.contractor-dashboard-panel{background:var(--fo-bg-page)}.contractor-dashboard-header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--fo-border);background:var(--fo-surface)}.contractor-dashboard-header-eyebrow,.contractor-dashboard-header-title{margin:0}.contractor-dashboard-header-eyebrow{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contractor-dashboard-header-title{margin-top:var(--space-1);color:var(--fo-text);font-size:var(--text-2xl);line-height:1.15}.contractor-dashboard-content{padding:0;background:var(--fo-bg-page)}.contractor-dashboard-state{align-content:start;gap:var(--space-4);padding:var(--space-4)}.contractor-dashboard-state-start{min-height:100%;align-content:center;padding-block:var(--space-6)}.contractor-dashboard-clock-in-card{min-height:17.5rem;place-items:center;padding:var(--space-8) var(--space-5);text-align:center}.contractor-dashboard-icon-well{display:grid;width:3.625rem;height:3.625rem;place-items:center;border-radius:var(--radius-xl);background:var(--fo-accent-bg);color:var(--fo-accent)}.contractor-dashboard-clock-in-title{margin:0;color:var(--fo-text);font-size:clamp(2rem,9vw,3rem);line-height:1.04}.contractor-dashboard-clock-in-copy{max-width:20rem}.contractor-dashboard-primary-action.fo-action-button{width:min(100%,22.5rem);min-height:4rem;font-size:var(--text-xl);font-weight:900}.contractor-dashboard-inline-action.fo-action-button{width:auto;min-height:2.75rem;padding-inline:var(--space-3);color:var(--fo-accent-text)}.contractor-dashboard-section-copy,.contractor-dashboard-clock-copy,.contractor-dashboard-section-header,.contractor-dashboard-jobs-heading,.contractor-dashboard-clock-summary{min-width:0}.contractor-dashboard-section-header,.contractor-dashboard-jobs-heading{align-items:center}.contractor-dashboard-jobs-heading{display:flex;gap:var(--space-3);justify-content:space-between}.contractor-dashboard-jobs-heading h2{margin:0;color:var(--fo-text);font-size:var(--text-xl);line-height:1.25}.contractor-dashboard-jobs-section{display:grid;min-width:0;gap:var(--space-3)}.contractor-dashboard-job-list{width:100%}.fo-contractor-job-card.contractor-dashboard-job-card{display:block;width:100%;max-width:100%;min-width:0;padding:var(--space-4);color:inherit;text-align:left;cursor:pointer}.fo-contractor-job-card.contractor-dashboard-job-card:hover{border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.fo-contractor-job-card.contractor-dashboard-job-card:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.contractor-dashboard-job-card-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:start;min-width:0}.contractor-dashboard-job-card-copy,.contractor-dashboard-job-card-status,.contractor-dashboard-job-card-address,.contractor-dashboard-job-card-address span{min-width:0}.contractor-dashboard-job-card-meta{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;overflow-wrap:anywhere}.contractor-dashboard-job-card-customer{margin-top:var(--space-1);color:var(--fo-text);font-size:var(--text-lg);font-weight:800;line-height:1.25;overflow-wrap:anywhere}.contractor-dashboard-job-card-status{display:inline-flex;max-width:100%;justify-self:end}.contractor-dashboard-job-card-address{display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);color:var(--fo-accent-text);font-size:var(--text-sm);line-height:1.4}.contractor-dashboard-job-card-address svg{flex:0 0 auto;margin-top:var(--space-1)}.contractor-dashboard-job-card-address span{overflow-wrap:anywhere}.contractor-dashboard-empty-state{min-height:9rem}.contractor-dashboard-attendance-card{padding:var(--space-4)}.contractor-dashboard-clock-summary{align-items:center}.contractor-dashboard-elapsed{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);color:var(--fo-text);font-size:var(--text-3xl);font-weight:900;line-height:1.1}.contractor-dashboard-clock-start{margin-top:var(--space-1)}.contractor-dashboard-clock-out-action.fo-action-button{flex:0 0 auto}.contractor-dashboard-offline-copy{width:min(100%,61.25rem);margin:0 auto;padding:var(--space-2) var(--space-4) 0;color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:700}.contractor-dashboard-feedback{width:min(100%,61.25rem);margin:0 auto;padding:var(--space-4)}@media (max-width: 420px){.contractor-dashboard-state,.contractor-dashboard-header{padding-inline:var(--space-3)}.contractor-dashboard-job-card-heading{grid-template-columns:minmax(0,1fr)}.contractor-dashboard-job-card-status{justify-self:start}.contractor-dashboard-jobs-heading{align-items:flex-start}}@media (max-width: 700px){.contractor-dashboard-clock-summary{align-items:stretch}.contractor-dashboard-clock-out-action.fo-action-button{width:100%}}@media (max-width: 700px) and (max-height: 680px){.contractor-dashboard-state-start{align-content:start;padding-block:var(--space-3)}.contractor-dashboard-clock-in-card{min-height:0;gap:var(--space-3);padding:var(--space-4)}.contractor-dashboard-primary-action.fo-action-button{min-height:3.25rem;font-size:var(--text-lg)}}.contractor-jobs-screen,.contractor-jobs-panel{background:var(--fo-bg-page)}.contractor-jobs-panel{flex:1 1 auto}.contractor-jobs-header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--fo-border);background:var(--fo-surface)}.contractor-jobs-eyebrow,.contractor-jobs-title{margin:0}.contractor-jobs-eyebrow{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contractor-jobs-title{margin-top:var(--space-1);color:var(--fo-text);font-size:var(--text-2xl);line-height:1.15}.contractor-jobs-filters{display:grid;gap:var(--space-2);margin-top:var(--space-3);min-width:0}.contractor-jobs-filters .fo-search-input,.contractor-jobs-status-filter,.contractor-jobs-status-filter .fo-input{min-width:0;max-width:100%}.contractor-jobs-filters .fo-input{min-height:2.5rem;background:var(--fo-surface-subtle)}.contractor-jobs-content{padding:var(--space-3) var(--space-4);background:var(--fo-bg-page);box-sizing:border-box}.contractor-jobs-offline-copy{margin-bottom:var(--space-2);color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:700}.contractor-jobs-group{min-width:0;margin-bottom:var(--space-4)}.contractor-jobs-group-label{margin-bottom:var(--space-2);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}.contractor-jobs-group-label.is-today{color:var(--fo-accent-text)}.fo-contractor-job-card.contractor-jobs-card{display:block;width:100%;max-width:100%;min-width:0;padding:var(--space-3) var(--space-4);overflow:hidden;color:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.fo-contractor-job-card.contractor-jobs-card:hover{border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.fo-contractor-job-card.contractor-jobs-card:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.contractor-jobs-card-meta{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;line-height:1.35;letter-spacing:.06em;text-transform:uppercase;overflow-wrap:anywhere}.contractor-jobs-card-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:start;min-width:0;margin-top:var(--space-1)}.contractor-jobs-card-customer,.contractor-jobs-card-status,.contractor-jobs-card-location,.contractor-jobs-card-address,.contractor-jobs-card-gate-code{min-width:0}.contractor-jobs-card-customer{color:var(--fo-text);font-size:var(--text-base);font-weight:750;line-height:1.3;overflow-wrap:anywhere}.contractor-jobs-card-status{display:inline-flex;max-width:min(48%,14rem);justify-self:end}.contractor-jobs-card-location{display:flex;align-items:flex-start;gap:var(--space-1);margin-top:var(--space-2);max-width:100%;color:var(--fo-accent-text);font-size:var(--text-sm);line-height:1.4}.contractor-jobs-card-location-icon,.contractor-jobs-card-gate-code svg{flex:0 0 auto}.contractor-jobs-card-location-icon{margin-top:var(--space-1)}.contractor-jobs-card-address{flex:1 1 auto;overflow-wrap:anywhere}.contractor-jobs-card-separator{flex:0 0 auto;color:var(--fo-border-strong)}.contractor-jobs-card-gate-code{display:inline-flex;flex:0 1 auto;align-items:center;gap:var(--space-1);max-width:44%;padding:var(--space-1) var(--space-2);overflow:hidden;border:1px solid var(--fo-status-in-progress-border);border-radius:var(--radius-xs);background:var(--fo-status-in-progress-bg);color:var(--fo-status-in-progress-text);font-family:monospace;font-size:var(--text-2xs);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.contractor-jobs-content .fo-empty{min-height:10rem}.contractor-jobs-content .fo-empty-body:empty{display:none}@media (max-width: 420px){.contractor-jobs-header,.contractor-jobs-content{padding-left:var(--space-3);padding-right:var(--space-3)}.fo-contractor-job-card.contractor-jobs-card{padding:var(--space-3)}.contractor-jobs-card-heading{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.contractor-jobs-card-status{max-width:100%;justify-self:start}.contractor-jobs-card-location{flex-wrap:wrap}.contractor-jobs-card-address{flex-basis:calc(100% - var(--space-4))}.contractor-jobs-card-separator{display:none}.contractor-jobs-card-gate-code{max-width:100%;margin-left:calc(var(--space-3) + var(--space-1))}}.contractor-job-detail-eyebrow{margin:0;font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--fo-text-muted)}.contractor-job-icon-muted{color:var(--fo-text-muted)}.contractor-job-icon-inherit{color:inherit}.contractor-job-hours-stepper{display:flex;align-items:center;border:1px solid var(--fo-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--fo-surface)}.contractor-job-hours-stepper__button{padding:var(--space-2) var(--space-3);border:0;border-radius:0;background:transparent;cursor:pointer}.contractor-job-hours-stepper__button--decrement{border-right:1px solid var(--fo-border)}.contractor-job-hours-stepper__button--increment{border-left:1px solid var(--fo-border)}.contractor-job-hours-stepper__button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:-2px}.contractor-job-hours-stepper__value{min-width:52px;padding:var(--space-2) var(--space-3);text-align:center;color:var(--fo-text);font-size:var(--text-base);font-weight:600}.fo-contractor-job-detail-screen .fo-contractor-submenu-row{width:100%;max-width:100%;min-width:0;box-sizing:border-box;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);overflow:hidden;text-align:left;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text);transition:background .1s ease,border-color .1s ease}.fo-contractor-job-detail-screen .fo-contractor-submenu-row[data-disabled=false]:hover{background:var(--fo-surface-subtle);border-color:var(--fo-border-strong)}.fo-contractor-job-detail-screen .fo-contractor-submenu-row[data-disabled=true]{cursor:not-allowed;opacity:.45}.fo-contractor-job-detail-screen .fo-contractor-submenu-row:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.contractor-job-submenu-row__icon{width:30px;height:30px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.fo-contractor-job-detail-screen .fo-contractor-submenu-row[data-done=true] .contractor-job-submenu-row__icon{border-color:var(--fo-status-completed-border);background:var(--fo-status-completed-bg);color:var(--fo-status-completed-text)}.contractor-job-submenu-row__content{flex:1 1 auto;min-width:0}.contractor-job-submenu-row__label{color:var(--fo-text);font-size:var(--text-sm);font-weight:600}.contractor-job-submenu-row__sublabel{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fo-text-muted);font-size:var(--text-2xs)}.contractor-job-submenu-row__status{display:flex;align-items:center;gap:var(--space-2);flex:1 1 auto;min-width:0;max-width:48%}.contractor-job-submenu-row__done{padding:var(--space-1) var(--space-2);border:1px solid var(--fo-status-completed-border);border-radius:var(--radius-pill);background:var(--fo-status-completed-bg);color:var(--fo-status-completed-text);font-size:var(--text-2xs);font-weight:700}.contractor-job-submenu-row__required{padding:var(--space-1) var(--space-2);border-color:var(--fo-danger-border);background:var(--fo-status-cancelled-bg);color:var(--fo-text-danger);font-size:var(--text-2xs);font-weight:800}.contractor-job-custom-panel-form{display:grid;gap:var(--space-3)}.contractor-job-field-label{display:grid;gap:var(--space-2);color:var(--fo-text-muted);font-size:var(--text-base)}.contractor-job-field-control,.contractor-job-textarea{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text);font-size:var(--text-base)}.contractor-job-field-control:disabled,.contractor-job-textarea:disabled{background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.contractor-job-field-control:focus,.contractor-job-textarea:focus{outline:2px solid var(--fo-accent);outline-offset:1px;border-color:var(--fo-accent)}.contractor-job-field-control--textarea{resize:vertical}.contractor-job-field-control--multiselect{min-height:96px}.contractor-job-textarea{resize:none}.contractor-job-full-action{width:100%;font-size:var(--text-lg)}.contractor-job-full-action:disabled{border-color:var(--fo-border);background:var(--fo-surface-subtle);color:var(--fo-text-muted);cursor:not-allowed}.contractor-job-history-detail-row{display:grid;grid-template-columns:1fr 1.4fr;padding:var(--space-2) var(--space-3);background:var(--fo-surface)}.contractor-job-history-detail-row--divided{border-bottom:1px solid var(--fo-border)}.contractor-job-history-line{color:var(--fo-text)}.contractor-job-history-line--parts{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm)}.contractor-job-history-line--labour{display:grid;gap:var(--space-1)}.contractor-job-history-line--addon{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2)}.contractor-job-history-line--divided{border-top:1px solid var(--fo-border);padding-top:var(--space-2)}.contractor-job-history-line--parts.contractor-job-history-line--divided{padding-top:var(--space-2)}.contractor-job-session-icon{width:28px;height:28px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text-muted)}.contractor-job-session-icon[data-active=true]{border-color:var(--fo-accent);background:var(--fo-accent-bg);color:var(--fo-accent)}.fo-contractor-session-inline-action:disabled{cursor:not-allowed}.contractor-job-photo-remove{padding:var(--space-1) var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700}.contractor-job-photo-remove:disabled{cursor:wait}.contractor-photo-slot[data-required-missing]{display:grid;gap:var(--space-2);max-width:100%;min-width:0;box-sizing:border-box;padding:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface)}.contractor-photo-slot[data-required-missing=true]{border-color:var(--fo-warning-border)}.contractor-job-photo-add{display:inline-flex;align-items:center;gap:var(--space-2);max-width:100%;min-width:0;box-sizing:border-box;padding:var(--space-2) var(--space-2);border:0;border-radius:var(--radius-sm);background:var(--fo-accent);color:var(--fo-surface);font-size:var(--text-sm);font-weight:700;cursor:pointer}.contractor-job-photo-add[data-disabled=true]{background:var(--fo-border);color:var(--fo-text-muted);cursor:not-allowed}.contractor-job-timeline-dot{width:7px;height:7px;z-index:1;box-sizing:content-box;border-radius:var(--radius-pill);background:var(--fo-border)}.contractor-job-timeline-dot[data-done=true]{background:var(--fo-accent)}.contractor-job-timeline-dot[data-active=true]{border:2px solid var(--fo-accent)}.contractor-job-timeline-connector{position:absolute;top:4px;left:calc(50% + 8px);right:calc(-50% + 8px);height:1px;background:var(--fo-border);opacity:.5}.contractor-job-timeline-connector[data-done=true]{background:var(--fo-accent)}.contractor-job-timeline-label{max-width:100%;min-width:0;overflow:hidden;overflow-wrap:normal;white-space:normal;word-break:keep-all;-webkit-hyphens:none;hyphens:none;color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:500;line-height:1.05;text-transform:uppercase;letter-spacing:.01em}.contractor-job-timeline-label[data-done=true]{color:var(--fo-accent)}.contractor-job-timeline-label[data-active=true]{font-weight:700}.contractor-job-sync-status{color:var(--fo-text-muted);font-size:var(--text-sm);font-weight:700}.contractor-job-sync-status--attention{color:var(--fo-text-danger)}.contractor-job-start-action,.contractor-job-finish-action{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-lg);font-weight:600}.contractor-job-start-action{border:1px solid var(--fo-accent);background:var(--fo-accent-bg);color:var(--fo-accent)}.contractor-job-start-action:disabled{border-color:var(--fo-border);background:var(--fo-surface-subtle);color:var(--fo-text-muted);cursor:not-allowed}.contractor-job-finish-action:disabled{border-color:var(--fo-border);background:var(--fo-border);color:var(--fo-text-muted);cursor:not-allowed}.contractor-checklist-row[data-readonly=true]{opacity:.7;cursor:default}.contractor-checklist-text[data-completed=true]{text-decoration:line-through}.contractor-job-detail-panel-section{margin-bottom:var(--space-5)}.contractor-job-detail-panel-heading{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);border-bottom:1px solid var(--fo-border);padding-bottom:var(--space-2)}.contractor-job-detail-section-heading{margin:0;font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fo-text-muted)}.contractor-job-detail-error-notice{font-size:var(--text-base);color:var(--fo-text-danger);background:var(--fo-status-cancelled-bg);border:1px solid var(--fo-danger-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2)}.contractor-job-history-detail-block{border:1px solid var(--fo-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);background:var(--fo-surface);display:grid;gap:var(--space-2)}.contractor-job-detail-content-stack,.contractor-work-history-photos{display:grid;gap:var(--space-2)}.contractor-job-history-back-button{justify-self:start;border:1px solid var(--fo-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2);background:var(--fo-surface);color:var(--fo-text);font-size:var(--text-base);font-weight:600;display:inline-flex;align-items:center;gap:var(--space-2)}.contractor-job-history-warning{font-size:var(--text-xs);color:var(--fo-text-warning);background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2)}.contractor-job-history-meta-table{border:1px solid var(--fo-border);border-radius:var(--radius-md);overflow:hidden}.contractor-job-detail-meta-caption{font-size:var(--text-2xs);color:var(--fo-text-muted);font-weight:600}.contractor-job-history-meta-value{font-size:var(--text-sm);color:var(--fo-text);font-weight:500;white-space:pre-wrap}.contractor-job-history-narrative{font-size:var(--text-base);color:var(--fo-text);line-height:1.5;white-space:pre-wrap}.contractor-job-history-compact-list{display:grid;gap:var(--space-1)}.contractor-job-detail-muted-fixed{color:var(--fo-text-muted);flex-shrink:0}.contractor-job-history-labour-list{display:grid;gap:var(--space-2)}.contractor-job-history-line-title{font-size:var(--text-sm);color:var(--fo-text);font-weight:600}.contractor-job-detail-muted-body{font-size:var(--text-base);color:var(--fo-text-muted)}.contractor-job-detail-body-text{font-size:var(--text-base);color:var(--fo-text)}.contractor-job-detail-compact-stack,.fo-contractor-job-detail-screen .fo-contractor-submenu-row-stack{display:grid;gap:var(--space-2)}.contractor-job-history-checklist-item{font-size:var(--text-sm);color:var(--fo-text)}.contractor-job-detail-muted-foreground{color:var(--fo-text-muted)}.contractor-job-detail-supporting-text{font-size:var(--text-sm);color:var(--fo-text-muted)}.fo-contractor-job-detail-screen .fo-contractor-time-session-card{display:grid;gap:var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-md);background:var(--fo-surface);padding:var(--space-2)}.fo-contractor-job-detail-screen .fo-contractor-session-summary-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:nowrap}.fo-contractor-job-detail-screen .fo-contractor-session-label-group{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1 1 0}.contractor-job-time-session-label-copy{min-width:0}.contractor-job-time-session-eyebrow{font-size:var(--text-2xs);color:var(--fo-text-muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.contractor-job-time-session-state{font-size:var(--text-base);color:var(--fo-text);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fo-contractor-job-detail-screen .fo-contractor-session-control-group{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-left:auto;min-width:0;flex:0 0 auto}.fo-contractor-job-detail-screen .fo-contractor-session-total{text-align:right;flex-shrink:0}.contractor-job-time-session-total-value{font-size:var(--text-lg);color:var(--fo-text);font-weight:800;line-height:1}.contractor-job-time-session-note{font-size:var(--text-xs);color:var(--fo-text-muted)}.contractor-job-time-session-warning{font-size:var(--text-xs);color:var(--fo-text-warning);background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2)}.contractor-work-history-photo-card{border:1px solid var(--fo-border);border-radius:var(--radius-md);padding:0;overflow:hidden;background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer;min-width:0}.contractor-job-photo-image{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:var(--fo-surface-subtle)}.contractor-job-photo-placeholder{aspect-ratio:4 / 3;display:grid;place-items:center;color:var(--fo-text-muted);background:var(--fo-surface-subtle);font-size:var(--text-sm)}.contractor-job-history-photo-meta{display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-2)}.contractor-job-history-photo-caption{font-size:var(--text-sm);color:var(--fo-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contractor-job-detail-microcopy{font-size:var(--text-2xs);color:var(--fo-text-muted)}.contractor-work-history-photo-lightbox{width:min(92vw,56rem);max-width:56rem}.contractor-work-history-photo-lightbox .eyebrow{margin:0}.contractor-job-history-photo-lightbox-image{display:block;width:100%;max-height:70vh;object-fit:contain;background:var(--fo-surface-subtle);border-radius:var(--radius-md)}.contractor-job-detail-section-split-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.contractor-work-history-photo-group{display:grid;gap:var(--space-2)}.contractor-job-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-2)}.contractor-photo-thumb{border:1px solid var(--fo-border);border-radius:var(--radius-md);overflow:hidden;background:var(--fo-surface);box-sizing:border-box;max-width:100%;min-width:0}.contractor-job-photo-thumb-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-2)}.contractor-job-photo-label{font-size:var(--text-2xs);color:var(--fo-text-muted);font-weight:700}.contractor-job-photo-slot-title{font-size:var(--text-base);font-weight:800;color:var(--fo-text)}.contractor-job-photo-required-label{font-size:var(--text-2xs);color:var(--fo-text-warning);font-weight:700}.contractor-job-photo-input{display:none}.contractor-photo-capture-panel{display:grid;gap:var(--space-3)}.contractor-job-photo-connectivity-note{font-size:var(--text-sm);color:var(--fo-text-muted);line-height:1.45}.contractor-job-additional-photo-section{border:1px solid var(--fo-border);border-radius:var(--radius-md);padding:var(--space-2);background:var(--fo-surface);display:grid;gap:var(--space-2)}.fo-contractor-job-detail-screen{background:var(--fo-bg-page)}.fo-contractor-job-detail-header{background:var(--fo-surface);border-bottom:1px solid var(--fo-border);padding:var(--space-3) var(--space-4) 0;flex-shrink:0}.contractor-job-detail-header-back-row{display:flex;justify-content:flex-start;align-items:center;margin-bottom:var(--space-2)}.contractor-job-detail-back-button{color:var(--fo-accent);font-size:var(--text-md);font-weight:500;background:none;border:none;padding:var(--space-1) 0;cursor:pointer}.contractor-job-detail-header-eyebrow{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fo-text-muted);margin-bottom:var(--space-1)}.fo-contractor-detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.contractor-job-detail-title{margin:0;min-width:0;overflow-wrap:anywhere;font-size:var(--text-xl);font-weight:700;color:var(--fo-text);line-height:1.2}.fo-contractor-job-detail-address-link{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;min-width:0;box-sizing:border-box;font-size:var(--text-md);color:var(--fo-accent);text-decoration:none;margin-bottom:var(--space-3)}.fo-contractor-status-timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;width:100%;max-width:100%;min-width:0;padding-bottom:var(--space-3);overflow:hidden}.contractor-job-detail-timeline-step{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);text-align:center}.fo-contractor-job-detail-body{padding:var(--space-3) var(--space-4);display:grid;gap:var(--space-2)}.contractor-job-detail-offline-copy{font-size:var(--text-sm);color:var(--fo-text-muted);font-weight:700}.fo-contractor-job-detail-card[data-sync-attention-reason]{display:grid;gap:var(--space-2);font-size:var(--text-sm);color:var(--fo-text-danger);background:var(--fo-status-cancelled-bg);border:1px solid var(--fo-danger-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.contractor-job-detail-sync-attention-detail{color:var(--fo-text-danger)}.contractor-job-detail-sync-attention-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.fo-contractor-job-detail-card[data-note-domain]{background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.contractor-job-detail-notes-label{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fo-text-warning);margin-bottom:var(--space-1)}.contractor-job-detail-notes-copy{font-size:var(--text-base);color:var(--fo-text-warning);line-height:1.5}.contractor-job-detail-access-code-card{display:flex;align-items:center;gap:var(--space-3);background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.contractor-job-detail-access-code-icon{color:var(--fo-text-warning);flex-shrink:0}.contractor-job-detail-access-code-label{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fo-text-warning);margin-bottom:var(--space-1)}.contractor-job-detail-access-code-value{font-size:var(--text-xl);font-weight:700;font-family:monospace;letter-spacing:.14em;color:var(--fo-text-warning)}.contractor-job-detail-scope-card{background:var(--fo-surface);border:1px solid var(--fo-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.contractor-job-detail-scope-heading{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.contractor-job-detail-scope-label{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fo-text-muted)}.contractor-job-detail-scope-copy{font-size:var(--text-base);color:var(--fo-text);line-height:1.55}.fo-contractor-primary-action-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.contractor-job-detail-action-warning{font-size:var(--text-sm);color:var(--fo-text-warning);background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2)}.contractor-job-detail-section-divider{height:1px;background:var(--fo-border)}.contractor-job-detail-read-only-notice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-1)}.contractor-job-detail-panel-load-warning{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-2);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle)}.contractor-job-detail-panel-load-message{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-sm);color:var(--fo-text-muted)}.contractor-job-detail-panel-load-icon{flex-shrink:0}.contractor-job-work-order-number,.contractor-job-created-by{margin:var(--space-1) 0 0;font-size:var(--text-2xs);color:var(--fo-text-muted);line-height:1.4}.contractor-job-detail-drawer-warning{font-size:var(--text-base);color:var(--fo-text-warning);background:var(--fo-status-in-progress-bg);border:1px solid var(--fo-warning-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2)}.contractor-job-history-card{width:100%;text-align:left;border:1px solid var(--fo-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);background:var(--fo-surface);cursor:pointer;display:grid;gap:var(--space-1)}.contractor-job-history-card-topline{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center}.contractor-job-history-card-date{font-size:var(--text-base);font-weight:700;color:var(--fo-text)}.contractor-job-history-card-status{font-size:var(--text-2xs);color:var(--fo-text-muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.contractor-job-history-card-mainline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.contractor-job-history-card-job-type{font-size:var(--text-base);color:var(--fo-text);font-weight:600}.contractor-job-history-card-summary{font-size:var(--text-base);color:var(--fo-text-muted);line-height:1.4}.contractor-job-history-card-address{font-size:var(--text-2xs);color:var(--fo-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contractor-job-checklist-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.contractor-job-detail-drawer-field{display:grid;gap:var(--space-2);font-size:var(--text-base);color:var(--fo-text-muted)}.contractor-job-detail-drawer-primary-action{width:100%;padding:var(--space-3);border-radius:var(--radius-md);border:none;background:var(--fo-accent);color:var(--fo-surface);font-size:var(--text-lg);font-weight:600}.contractor-job-detail-status-form{display:grid;gap:var(--space-3)}.contractor-job-detail-status-select{width:100%;padding:var(--space-2) var(--space-7) var(--space-2) var(--space-3);font-size:var(--text-base);background:var(--fo-surface);color:var(--fo-text);-webkit-appearance:none;-moz-appearance:none;appearance:none}.contractor-job-detail-status-textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);font-size:var(--text-base);resize:none;box-sizing:border-box}.contractor-sales-order{display:grid;gap:var(--space-5);min-width:0;color:var(--fo-text)}.contractor-sales-order-notice{padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle);color:var(--fo-text-muted);font-size:var(--text-sm)}.contractor-sales-order-notice--warning{border-color:var(--fo-warning-border);background:var(--fo-status-in-progress-bg);color:var(--fo-text-warning)}.contractor-sales-order-selected-card{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface)}.contractor-sales-order-subheading{margin-bottom:var(--space-2);color:var(--fo-text);font-size:var(--text-sm);font-weight:700}.contractor-sales-order-section-label{margin-bottom:var(--space-2);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contractor-sales-order-line-list{display:grid;gap:var(--space-2)}.contractor-sales-order-line{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface-subtle)}.contractor-sales-order-line--actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.contractor-sales-order-line--addon-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.contractor-sales-order-line--readonly{display:flex;justify-content:space-between;gap:var(--space-2)}.contractor-sales-order-line--readonly-labour{display:grid;gap:var(--space-1)}.contractor-sales-order-line--wrap{flex-wrap:wrap}.contractor-sales-order-line__copy,.contractor-sales-order-result-copy{display:grid;gap:var(--space-1);min-width:0}.contractor-sales-order-line__copy{flex:1 1 auto}.contractor-sales-order-line__name,.contractor-sales-order-result-name,.contractor-sales-order-selected-part__name{min-width:0;color:var(--fo-text);font-size:var(--text-md);font-weight:600;overflow-wrap:anywhere}.contractor-sales-order-line__name--flex{flex:1 1 10rem}.contractor-sales-order-line__meta,.contractor-sales-order-empty,.contractor-sales-order-result-quantity,.contractor-sales-order-field-label{color:var(--fo-text-muted);font-size:var(--text-2xs)}.contractor-sales-order-line__meta--right,.contractor-sales-order-result-quantity{text-align:right}.contractor-sales-order-line__note{color:var(--fo-text);font-size:var(--text-md)}.contractor-sales-order-remove{flex:0 0 auto;padding:var(--space-1);border:0;background:transparent;color:var(--fo-text-muted);cursor:pointer}.contractor-sales-order-remove:focus-visible,.contractor-sales-order-search-result:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.contractor-sales-order-search-row,.contractor-sales-order-add-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:var(--space-2);align-items:stretch;min-width:0}.contractor-sales-order-search-row{margin-bottom:var(--space-2)}.contractor-sales-order-search-row .fo-search-input,.contractor-sales-order-search-row .fo-input,.contractor-sales-order-select-wrap,.contractor-sales-order-select-wrap .fo-input,.contractor-sales-order-labour-rate,.contractor-sales-order-labour-rate .fo-input{min-width:0;max-width:100%}.contractor-sales-order-search-row .fo-input,.contractor-sales-order-select-wrap .fo-input,.contractor-sales-order-labour-rate .fo-input,.contractor-sales-order-note-input{min-height:2.5rem}.contractor-sales-order-scan-control,.contractor-sales-order-scan-control .fo-barcode-input-control,.contractor-sales-order-scan-control .fo-barcode-input-control__entry-row{width:auto;min-width:0;height:100%}.contractor-sales-order-scan-label{display:inline-flex;align-items:center;justify-content:center}.contractor-sales-order-search-results{margin-bottom:var(--space-2);overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface)}.contractor-sales-order-search-result{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-3);border:0;background:var(--fo-surface);color:var(--fo-text);text-align:left;cursor:pointer}.contractor-sales-order-search-result+.contractor-sales-order-search-result{border-top:1px solid var(--fo-border)}.contractor-sales-order-search-result.is-selected{background:var(--fo-accent-bg)}.contractor-sales-order-result-copy{flex:1 1 auto}.contractor-sales-order-result-quantity{flex:0 0 auto;font-size:var(--text-md)}.contractor-sales-order-selected-part{display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--fo-status-scheduled-border);border-radius:var(--radius-sm);background:var(--fo-soft-blue)}.contractor-sales-order-selected-part__name{flex:1 1 auto}.contractor-sales-order-quantity-stepper{flex:0 0 auto;width:7.5rem;grid-template-columns:2rem minmax(2.5rem,1fr) 2rem}.contractor-sales-order-quantity-stepper .fo-numeric-stepper__button,.contractor-sales-order-quantity-stepper .fo-numeric-stepper__input{min-height:2rem}.contractor-sales-order-quantity-stepper .fo-numeric-stepper__button{min-width:2rem}.contractor-sales-order-quantity-stepper .fo-numeric-stepper__input{padding:var(--space-1);font-size:var(--text-sm);font-weight:600}.contractor-sales-order-stepper{display:flex;align-items:stretch;flex:0 0 auto;overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-sm);background:var(--fo-surface)}.contractor-sales-order-stepper__button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-3);border:0;background:transparent;color:var(--fo-text-muted);cursor:pointer}.contractor-sales-order-stepper--addon .contractor-sales-order-stepper__button{padding:.375rem .5625rem}.contractor-sales-order-stepper__button+.contractor-sales-order-stepper__value,.contractor-sales-order-stepper__value+.contractor-sales-order-stepper__button{border-left:1px solid var(--fo-border)}.contractor-sales-order-stepper__button:disabled{cursor:not-allowed;opacity:.64}.contractor-sales-order-stepper__button:focus-visible{outline:2px solid var(--fo-accent);outline-offset:-2px}.contractor-sales-order-stepper__value{min-width:2.75rem;padding:.375rem var(--space-2);color:var(--fo-text);font-size:var(--text-sm);font-weight:600;text-align:center}.contractor-sales-order-stepper__value--hours{min-width:3.25rem;padding:var(--space-2) var(--space-3);font-size:var(--text-md)}.contractor-sales-order-stepper__icon{color:var(--fo-text-muted)}.contractor-sales-order-action-button{margin-top:var(--space-2)}.contractor-sales-order-labour-rate{margin-bottom:var(--space-3)}.contractor-sales-order-hours-field,.contractor-sales-order-note-input{margin-bottom:var(--space-2)}.contractor-sales-order-field-label{margin-bottom:var(--space-1)}.contractor-sales-order-note-input{box-sizing:border-box;padding:var(--space-2) var(--space-3);font-size:var(--text-md)}@media (max-width: 420px){.contractor-sales-order-line--actions,.contractor-sales-order-selected-part{flex-wrap:wrap}.contractor-sales-order-line--actions .contractor-sales-order-line__copy,.contractor-sales-order-selected-part__name{flex-basis:100%}}@media (max-width: 360px){.contractor-sales-order-search-row,.contractor-sales-order-add-row{grid-template-columns:minmax(0,1fr)}.contractor-sales-order-scan-control,.contractor-sales-order-scan-control .fo-barcode-input-control,.contractor-sales-order-scan-control .fo-barcode-input-control__entry-row,.contractor-sales-order-scan-control .fo-barcode-input-control__button,.contractor-sales-order-add-row .contractor-sales-order-stepper{width:100%}}.contractor-sales-order-stepper--pending-part .contractor-sales-order-stepper__button{width:1.625rem;padding:var(--space-1)}.contractor-sales-order-stepper--pending-part .contractor-sales-order-stepper__value{width:1.5rem;min-width:1.5rem;padding:var(--space-1);font-size:var(--text-md)}.contractor-inventory-screen,.contractor-inventory-panel{background:var(--fo-bg-page)}.contractor-inventory-panel{flex:1 1 auto}.contractor-inventory-header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--fo-border);background:var(--fo-surface)}.contractor-inventory-eyebrow,.contractor-inventory-title{margin:0}.contractor-inventory-eyebrow{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contractor-inventory-title{margin-top:var(--space-1);color:var(--fo-text);font-size:var(--text-2xl);line-height:1.15}.contractor-inventory-search-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:var(--space-2);align-items:stretch;min-width:0;margin-top:var(--space-3)}.contractor-inventory-search-row .fo-search-input,.contractor-inventory-search-row .fo-input,.contractor-inventory-category-filter,.contractor-inventory-category-filter .fo-input{min-width:0;max-width:100%}.contractor-inventory-search-row .fo-input,.contractor-inventory-category-filter .fo-input{min-height:2.75rem;background:var(--fo-surface-subtle)}.contractor-inventory-scan-control,.contractor-inventory-scan-control .fo-barcode-input-control,.contractor-inventory-scan-control .fo-barcode-input-control__entry-row{width:auto;min-width:0;height:100%}.contractor-inventory-scan-control .fo-barcode-input-control__button{min-height:2.75rem}.contractor-inventory-scan-label{display:inline-flex;align-items:center;justify-content:center}.contractor-inventory-category-filter{margin-top:var(--space-2)}.contractor-inventory-content{padding:var(--space-3) var(--space-4);background:var(--fo-bg-page);box-sizing:border-box}.contractor-inventory-list-surface{min-width:0}.contractor-inventory-list-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);padding:0 var(--space-3) var(--space-2);color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:800;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}.contractor-inventory-list-heading>:last-child{text-align:right}.contractor-inventory-list{width:100%}.contractor-inventory-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;width:100%;max-width:100%;padding:var(--space-3) var(--space-4);color:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.contractor-inventory-row:hover{border-color:var(--fo-border-strong);background:var(--fo-surface-subtle)}.contractor-inventory-row:focus-visible{outline:2px solid var(--fo-accent);outline-offset:2px}.contractor-inventory-item-copy,.contractor-inventory-item-name,.contractor-inventory-item-sku,.contractor-inventory-item-quantity{min-width:0}.contractor-inventory-item-copy{display:grid;gap:var(--space-1)}.contractor-inventory-item-name{color:var(--fo-text);font-size:var(--text-base);font-weight:750;line-height:1.3;overflow-wrap:anywhere}.contractor-inventory-item-sku{color:var(--fo-text-muted);font-size:var(--text-2xs);line-height:1.35;overflow-wrap:anywhere}.contractor-inventory-item-quantity{justify-self:end;color:var(--fo-text);font-size:var(--text-base);font-weight:650;line-height:1.3;text-align:right;white-space:nowrap}.contractor-inventory-empty-state{margin-top:var(--space-3)}.contractor-inventory-empty-state .fo-empty{min-height:10rem}.contractor-inventory-empty-state .fo-empty-body:empty{display:none}.contractor-inventory-detail-card{overflow:hidden;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface);box-shadow:var(--shadow-card)}.contractor-inventory-detail-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--fo-border)}.contractor-inventory-detail-row:last-child{border-bottom:0}.contractor-inventory-detail-label{color:var(--fo-text-muted);font-size:var(--text-2xs);font-weight:700;line-height:1.4}.contractor-inventory-detail-value{min-width:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:500;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}@media (max-width: 420px){.contractor-inventory-header,.contractor-inventory-content{padding-left:var(--space-3);padding-right:var(--space-3)}.contractor-inventory-row{gap:var(--space-2);padding:var(--space-3)}.contractor-inventory-detail-row{grid-template-columns:minmax(0,1fr);gap:var(--space-1);padding:var(--space-3)}}@media (max-width: 360px){.contractor-inventory-search-row{grid-template-columns:minmax(0,1fr)}.contractor-inventory-scan-control,.contractor-inventory-scan-control .fo-barcode-input-control,.contractor-inventory-scan-control .fo-barcode-input-control__entry-row,.contractor-inventory-scan-control .fo-barcode-input-control__button{width:100%}}.driver-active.driver-no-scroll,body[data-vantis-product-tour-active=true]{overflow:hidden}.driver-active .driver-overlay{pointer-events:none}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}@keyframes fo-product-tour-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay,.driver-fade .driver-popover,.fo-product-tour-dialog{animation:fo-product-tour-fade-in var(--driver-animation-duration, .22s) ease-out}.fo-product-tour-interaction-shield{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999998;display:block;width:100vw;width:100dvw;height:100vh;height:100dvh;padding:0;border:0;background:transparent;pointer-events:auto;touch-action:none}.fo-product-tour-interaction-shield.fo-product-tour-dialog-backdrop{background:#0f121c38;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.driver-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999999;width:100%;height:100%;pointer-events:none;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.driver-popover.fo-product-tour-popover,.fo-product-tour-dialog{box-sizing:border-box;z-index:1000000002;display:block;visibility:visible;opacity:1;width:min(22rem,calc(100vw - 2rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-width:22rem;max-height:calc(100dvh - 2rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:0;padding:var(--space-4);overflow:auto;border:1px solid var(--fo-border);border-radius:var(--radius-lg);background:var(--fo-surface, #fff);color:var(--fo-text);box-shadow:var(--shadow-lg, var(--shadow-drawer));font-family:var(--font-body, Figtree, "DM Sans", system-ui, sans-serif);line-height:1.4;pointer-events:auto}.driver-popover.fo-product-tour-popover{position:fixed;top:0;right:0;transform-origin:center}.fo-product-tour-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.fo-product-tour-popover [hidden],.fo-product-tour-popover .driver-popover-close-btn{display:none!important}.fo-product-tour-popover .driver-popover-title,.fo-product-tour-dialog-title{margin:0 0 var(--space-2);color:var(--fo-text);font-size:var(--text-lg);font-weight:800;line-height:1.25}.fo-product-tour-popover .driver-popover-description,.fo-product-tour-dialog-description{margin:0 0 var(--space-3);color:var(--fo-text);font-size:var(--text-md);line-height:1.5}.fo-product-tour-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-1)}.fo-product-tour-progress{margin:0 0 var(--space-2);color:var(--fo-text-muted);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.fo-product-tour-actions,.fo-product-tour-confirm-actions,.fo-product-tour-dialog-actions{display:flex;flex-grow:1;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.fo-product-tour-dialog-actions{margin-top:var(--space-3)}.fo-product-tour-skip-confirmation{display:grid;align-items:stretch;gap:var(--space-3)}.fo-product-tour-skip-copy{margin:0;color:var(--fo-text);font-size:var(--text-sm);font-weight:700;line-height:1.45}.driver-popover-arrow{position:absolute;width:0;height:0;border:7px solid var(--fo-surface, #fff);pointer-events:none}.driver-popover-arrow-side-over,.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-popover-arrow-side-left{left:100%;border-top-color:transparent;border-bottom-color:transparent;border-right-color:transparent}.driver-popover-arrow-side-right{right:100%;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.driver-popover-arrow-side-top{top:100%;border-bottom-color:transparent;border-left-color:transparent;border-right-color:transparent}.driver-popover-arrow-side-bottom{bottom:100%;border-top-color:transparent;border-left-color:transparent;border-right-color:transparent}.fo-product-tour-target-surface-active{position:relative;z-index:1000000000!important;pointer-events:none!important}.fo-product-tour-target-active{position:relative;z-index:1000000001!important;border-radius:inherit;box-shadow:0 0 0 3px #2155f566!important}[data-vantis-tour-isolation=self].fo-product-tour-target-active{isolation:isolate}.fo-product-tour-target-interactive{pointer-events:auto!important;cursor:pointer;touch-action:manipulation}.fo-mobile-bottom-nav-zone.fo-product-tour-shell-control-active{position:relative;z-index:1000000000!important;pointer-events:none!important;isolation:isolate}.fo-mobile-bottom-nav-zone .fo-product-tour-target-interactive.fo-product-tour-shell-control-active{position:relative;z-index:1000000001!important;pointer-events:auto!important;touch-action:manipulation}.fo-product-tour-restart-section{display:flex;justify-content:flex-start;padding-top:var(--space-2)}@media (max-width: 768px){.driver-popover.fo-product-tour-popover,.fo-product-tour-dialog{width:min(21rem,calc(100vw - 1.5rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));min-width:0;max-height:calc(100dvh - 1.5rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--fo-mobile-bottom-nav-height, 0px));padding:var(--space-3)}.fo-product-tour-footer{align-items:flex-start;flex-direction:column}.fo-product-tour-actions,.fo-product-tour-confirm-actions,.fo-product-tour-dialog-actions{width:100%}.fo-product-tour-dialog-actions .btn{flex:1 1 100%}}@media (prefers-reduced-motion: reduce){.driver-fade .driver-overlay,.driver-fade .driver-popover,.fo-product-tour-dialog{animation:none}}.vantis-notification-center{position:relative;z-index:80}.vantis-notification-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f121c4d;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);pointer-events:auto}.vantis-notification-panel{position:fixed;z-index:81;top:max(.75rem,env(safe-area-inset-top));right:max(.85rem,env(safe-area-inset-right));width:min(26rem,calc(100vw - 1.5rem));max-height:min(80dvh,42rem);padding:0;overflow:hidden;box-shadow:0 18px 48px #141c2d38}.vantis-notification-header,.vantis-notification-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem}.vantis-notification-header{border-bottom:1px solid var(--border-color,#e3e7ef)}.vantis-notification-header h2,.vantis-notification-header p{margin:0}.vantis-notification-actions{padding:.55rem 1rem;border-bottom:1px solid var(--border-color,#e3e7ef)}.vantis-notification-error{margin:.7rem 1rem}.vantis-notification-list{overflow:auto;max-height:calc(min(80dvh,42rem) - 8rem);overscroll-behavior:contain}.vantis-notification-row-shell{position:relative;overflow:hidden;border-bottom:1px solid var(--border-color,#eef0f4);background:#b42318}.vantis-notification-swipe-reveal{position:absolute;inset:0 0 0 auto;width:6rem;display:flex;align-items:center;justify-content:center;gap:.3rem;color:#fff;font-size:.78rem;font-weight:800}.vantis-notification-row{position:relative;width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:.75rem;text-align:left;border:0;background:var(--surface,#fff);padding:.85rem 1rem;cursor:pointer;touch-action:pan-y;transition:transform .18s ease,opacity .18s ease,background-color .18s ease}.vantis-notification-row:hover{background:#f7f9ff}.vantis-notification-row.is-unread{background:#f2f5ff}.vantis-notification-row.is-clearing{opacity:.62}.vantis-notification-row:focus-visible,.vantis-notification-clear:focus-visible{outline:3px solid rgba(33,85,245,.28);outline-offset:-3px}.vantis-notification-icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.65rem;background:#2155f51a}.vantis-notification-copy{display:grid;gap:.18rem;min-width:0}.vantis-notification-copy span{font-size:.88rem;line-height:1.35}.vantis-notification-copy time{font-size:.74rem;color:var(--muted-color,#667085)}.vantis-notification-row-actions{display:flex;align-items:center;gap:.4rem}.vantis-notification-unread-dot{width:.55rem;height:.55rem;margin-top:.35rem;border-radius:999px;background:#2155f5;flex:0 0 auto}.vantis-notification-clear{display:grid;place-items:center;width:1.85rem;height:1.85rem;border:0;border-radius:.5rem;background:transparent;color:var(--muted-color,#667085);cursor:pointer}.vantis-notification-clear:hover{background:#b4231814;color:#b42318}.vantis-notification-empty{padding:1.25rem;text-align:center}@media (max-width:640px){.vantis-notification-panel{top:max(.5rem,env(safe-area-inset-top));right:.5rem;left:.5rem;width:auto;max-height:calc(100dvh - 5.5rem)}.vantis-notification-list{max-height:calc(100dvh - 13.5rem)}}@media (min-width:1024px){.vantis-notification-panel{top:auto;right:auto;bottom:max(.85rem,env(safe-area-inset-bottom));left:calc(var(--fo-shell-sidebar-width,18rem) + max(.85rem,env(safe-area-inset-left)))}}
