.content .h-64{height:4rem}.settings-page{height:100%;min-height:calc(100dvh - 56px);overflow-y:auto;padding-right:3px;padding-bottom:28px}.settings-page .mb-5{margin-bottom:16px}.settings-subnav{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:12px}.settings-subnav a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid transparent;border-radius:8px;color:var(--muted)}.settings-subnav a[aria-current=page]{color:#0ba7f5;border-color:#0ba7f5;background:rgb(11 167 245/.1)}.billing-settings,.referral-settings{display:grid;gap:20px}.referral-settings{max-width:1040px;width:100%;margin-inline:auto}.referral-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.referral-stat-value{display:block;font-size:34px;line-height:1.2;margin-bottom:10px;color:var(--text)}.referral-stat-detail{margin-top:8px}@media (max-width:700px){.referral-stats{grid-template-columns:1fr}}.referral-main-card{padding:clamp(24px,4vw,40px)}.referral-gift{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:rgb(11 167 245/.12);color:#0ba7f5;margin-bottom:20px}.referral-main-card h2{font-size:clamp(24px,3vw,32px);margin-bottom:12px}.referral-code-label{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;font-weight:700;margin-top:28px;margin-bottom:10px}.referral-code-field{display:flex;gap:10px;max-width:500px}.referral-code-field input{min-width:0;width:100%;background:var(--panel);color:var(--text);border:1px solid var(--line);padding:14px 16px;border-radius:10px;font-size:18px;font-weight:700;letter-spacing:1px}.referral-code-field button{flex:0 0 50px;justify-content:center;padding:0;color:#0ba7f5}.referral-copy-status{min-height:24px;margin-top:10px}.referral-how-it-works ol{display:grid;gap:22px;list-style:none;padding:0}.referral-how-it-works li{display:flex;gap:14px}.referral-how-it-works li>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:rgb(11 167 245/.12);color:#0ba7f5;font-weight:700}.referral-how-it-works h3{font-size:14px;font-weight:700;margin-bottom:4px}.referral-unlimited{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:24px;font-size:13px}.referral-unlimited svg{color:#0ba7f5;flex-shrink:0}.billing-plans-heading{width:100%;max-width:760px;margin-inline:auto}.billing-user-seats{width:100%;max-width:1040px;margin-inline:auto}.billing-seat-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.billing-seat-stats>div{display:grid;gap:4px}.billing-seat-stats strong{font-size:26px;line-height:1.2}.billing-seat-stats span{font-size:12px;color:var(--muted)}.billing-seat-progress{display:block;width:100%;height:7px;margin:18px 0 12px;appearance:none;border:0;border-radius:999px;overflow:hidden;background:var(--line)}.billing-seat-progress::-webkit-progress-bar{background:var(--line)}.billing-seat-progress::-webkit-progress-value{background:#0ba7f5}.billing-seat-progress::-moz-progress-bar{background:#0ba7f5}.billing-card p.billing-seat-limit{color:var(--text);margin-top:8px}.billing-seat-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.billing-seat-actions button{white-space:nowrap}.billing-overview{display:grid;width:100%;max-width:1040px;margin-inline:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.billing-overview>.billing-card{display:flex;flex-direction:column;min-width:0;padding:clamp(24px,2.5vw,32px)}.billing-card{padding:22px}.billing-card h2{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;margin-bottom:18px}.billing-card p,.billing-footnote,.billing-plans-heading p{color:var(--muted);line-height:1.6;font-size:13px}.billing-current{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:10px}.billing-current strong{font-size:23px}.billing-preview-badge{border-radius:20px;padding:4px 10px;background:rgb(11 167 245/.15);color:#0ba7f5;font-size:11px}.billing-facts{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:12px}.billing-facts>div{display:flex;justify-content:space-between;gap:12px}.billing-facts dt{color:var(--muted)}.billing-form-footer{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.billing-form-footer small{color:var(--muted)}.billing-form-footer button{flex:none}.billing-notice{border-radius:8px;background:rgb(11 167 245/.08);border:1px solid rgb(11 167 245/.3);color:var(--text);padding:12px 16px;line-height:1.5;font-size:12px}.billing-plans-heading h2{font-size:22px;font-weight:700}.billing-plans{display:grid;width:100%;max-width:760px;margin-inline:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:12px}.pricing-card{position:relative;padding:20px;border:1px solid #383e47;border-radius:16px}.pricing-card.pricing-pro{border-color:#0ba7f5}.pricing-recommended{position:absolute;top:-15px;right:20px;border:1px solid #0ba7f5;border-radius:18px;padding:6px 16px;background:#0e151e;font-size:12px;font-weight:700}.pricing-card h3{display:flex;gap:10px;align-items:center;font-size:24px;font-weight:750}.pricing-icon{width:30px;height:30px;display:grid;place-items:center;background:#373b43;border-radius:8px}.pricing-icon svg{width:20px;height:20px}.pricing-pro .pricing-icon{background:#0b3b51}.pricing-description{margin-top:12px;min-height:59px;font-size:13px;line-height:1.5}.pricing-price{display:flex;align-items:baseline;margin:12px 0}.pricing-price strong{font-size:36px;font-weight:750;line-height:1.1}.pricing-price>span{font-size:13px;color:var(--muted)}.pricing-action{display:block;width:100%;border-radius:999px;padding:10px;background:#373b43;color:#fff;font-size:12px;font-weight:700}.pricing-pro .pricing-action{background:#0ba7f5;color:#03101a}.pricing-action:hover:not(:disabled){filter:brightness(1.12)}.pricing-action:disabled{cursor:default;opacity:1}.pricing-users{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin:14px 0;padding:10px;background:#171e27;border-radius:8px;font-size:11px}.pricing-users>span:first-child{display:flex;align-items:center;gap:8px}.pricing-users svg{width:18px;height:18px}.pricing-pro .pricing-users{background:#0b3b51}.pricing-card h4{font-size:13px;font-weight:700;margin-bottom:10px}.pricing-card ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pricing-card li{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}.pricing-card li svg{flex:none;width:16px;height:16px;margin-top:2px}.billing-payment-summary{display:flex;flex:1;align-items:center;gap:16px;padding:8px 0 24px;min-width:0}.billing-payment-summary>svg{flex:none;width:30px;height:auto;color:#0ba7f5}.billing-payment-summary>div{flex:1;min-width:0;overflow-wrap:anywhere}.billing-payment-summary strong{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;font-size:14px}.billing-payment-summary strong span{letter-spacing:1px}.billing-payment-summary p{margin-top:6px;font-size:12px}.billing-modal-actions,.billing-payment-actions{display:flex;gap:12px;flex-wrap:wrap}.billing-payment-actions{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.billing-payment-actions button{flex:1 1 160px;min-height:44px;justify-content:center;white-space:nowrap;font-size:13px}.billing-modal{width:min(600px,100%);max-height:85dvh;overflow-y:auto;padding:28px;background:var(--panel);color:var(--text)}.billing-modal-note{color:var(--muted);font-size:13px;line-height:1.6;margin:20px 0}.billing-modal-actions{margin-top:24px}.billing-add-payment{width:100%;margin-top:14px;justify-content:center;border-style:dashed}.billing-modal-actions button{flex:1;min-height:44px;justify-content:center}.billing-demo-options{display:grid;gap:12px}.billing-demo-options label{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.billing-demo-options label:has(input:checked){border-color:#0ba7f5;background:rgb(11 167 245/.08)}.billing-demo-options input{accent-color:#0ba7f5}.billing-demo-options small,.billing-demo-options strong{display:block}.billing-demo-options small{color:var(--muted);margin-top:4px}html[data-theme=light] .billing-facts,html[data-theme=light] .settings-subnav{border-color:#dbe3eb}html[data-theme=light] .pricing-card.pricing-pro{border-color:#0ba7f5!important}html[data-theme=light] .pricing-recommended{background:#fff}html[data-theme=light] .pricing-icon,html[data-theme=light] .pricing-users{background:#edf1f5}html[data-theme=light] .pricing-pro .pricing-icon,html[data-theme=light] .pricing-pro .pricing-users{background:#e0f2fc}html[data-theme=light] .pricing-action{background:#e3e8ee;color:#263446}html[data-theme=light] .pricing-pro .pricing-action{background:#0ba7f5;color:#03101a}html[data-theme=light] .billing-settings .settings-field{color:#647286}@media (max-width:1000px){.billing-overview{grid-template-columns:1fr}}@media (max-width:700px){.billing-plans{grid-template-columns:1fr}.pricing-description{min-height:0}.billing-form-footer{align-items:flex-start;flex-direction:column}}.settings-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:14px;align-items:start}.settings-main-column,.settings-side-column{display:flex;min-width:0;flex-direction:column;gap:14px}.settings-card{overflow:visible}.settings-card>header{display:flex;align-items:flex-start;gap:11px;border-bottom:1px solid #1b2938;padding:14px 16px}.settings-card>header h2{color:#eef4fb;font-size:15px;font-weight:700}.settings-card>header p{margin-top:3px;color:#8995a5;font-size:11px}.settings-card-body{padding:16px}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-field{display:flex;min-width:0;flex-direction:column;gap:7px;color:#aeb8c5;font-size:11px;font-weight:600}.settings-field-wide{grid-column:1/-1}.settings-field input,.settings-field select,.settings-field textarea,.settings-select-button{width:100%;border:1px solid #273646;border-radius:8px;outline:0;background:#0a1119;padding:10px 12px;color:#eef4fb;font-size:12px;font-weight:400;transition:border-color .18s,box-shadow .18s}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus,.settings-select-button:focus{border-color:#0ba7f5;box-shadow:0 0 0 3px rgb(11 167 245/.12)}.settings-field textarea{resize:vertical;line-height:1.55}.theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-picker button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid #263546;border-radius:9px;background:#0a1119;padding:12px;color:#aeb8c5;text-align:left}.theme-picker button.active{border-color:#0ba7f5;background:#0a2132;color:#20aefc}.theme-picker button span{display:flex;flex-direction:column;gap:3px}.theme-picker button b{color:#edf4fb;font-size:12px}.theme-picker button small{color:#8995a5;font-size:10px}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;border-top:1px solid #1b2938;padding-top:14px}.notification-list span,.settings-toggle-row div{display:flex;flex-direction:column;gap:3px}.notification-list b,.settings-toggle-row b{color:#dfe8f2;font-size:12px}.notification-list small,.settings-toggle-row small{color:#8995a5;font-size:10px}.settings-switch{position:relative;width:34px!important;height:19px;flex:none;appearance:none;border:0!important;border-radius:999px!important;background:#354151!important;padding:0!important;cursor:pointer}.settings-switch:after{position:absolute;top:3px;left:3px;width:13px;height:13px;border-radius:50%;background:#fff;content:"";transition:transform .18s}.settings-switch:checked{background:#0ba7f5!important}.settings-switch:checked:after{transform:translateX(15px)}.service-selector{position:relative;z-index:5}.settings-select-button{display:flex;align-items:center;justify-content:space-between;text-align:left}.service-menu{position:absolute;top:calc(100% + 6px);right:0;left:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;border:1px solid #273646;border-radius:9px;background:#111923;padding:7px;box-shadow:0 14px 35px rgb(0 0 0/.38)}.service-menu label{display:flex;align-items:center;gap:9px;border-radius:6px;padding:8px;color:#dce5ee;font-size:12px;cursor:pointer}.service-menu label:hover{background:#182431}.service-menu input{accent-color:#0ba7f5}.service-chips{display:flex;flex-wrap:wrap;gap:7px;min-height:30px;margin-top:12px}.service-chips button{display:inline-flex;align-items:center;gap:7px;border:1px solid #164f70;border-radius:999px;background:#0b2c40;padding:6px 10px;color:#31b5fa;font-size:11px}.service-chips button span{font-size:15px;line-height:10px}.service-chips p{color:#8995a5;font-size:11px}.settings-stack{display:flex;flex-direction:column;gap:14px}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:#8e9aaa}.input-with-icon input{padding-right:36px}.settings-time-grid{gap:12px}.logo-upload{display:flex;width:100%;flex-direction:column;align-items:center;border:1px dashed #34475a;border-radius:9px;background:#0a1119;padding:18px 12px;color:#dfe8f2}.logo-upload>span{display:grid;width:48px;height:48px;margin-bottom:9px;place-items:center;border-radius:10px;background:#082d44;color:#19affb}.logo-upload>span.has-preview{background-position:50%;background-repeat:no-repeat;background-size:contain}.logo-upload b{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.logo-upload small{margin-top:4px;color:#8491a1;font-size:10px}.logo-upload em{margin-top:11px;border:1px solid #245170;border-radius:6px;padding:6px 10px;color:#22adf6;font-size:10px;font-style:normal}.notification-list{display:flex;flex-direction:column}.notification-list label{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #1b2938;padding:12px 0}.notification-list label:first-child{padding-top:0}.notification-list label:last-child{border:0;padding-bottom:0}.settings-toast{position:fixed;right:24px;bottom:24px;z-index:50;display:flex;align-items:center;gap:9px;transform:translateY(20px);border:1px solid #17623d;border-radius:9px;background:#0b3021;padding:12px 16px;color:#55e49e;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.settings-toast.show{transform:translateY(0);opacity:1}html[data-theme=light]{color-scheme:light;--bg:#edf2f7;--panel:#fff;--line:#d8e0e8;--muted:#647184;--text:#17202b}html[data-theme=light] body{background:#edf2f7;color:#17202b}html[data-theme=light] .content,html[data-theme=light] .content-frame{background:#f4f7fa}html[data-theme=light] .panel{border-color:#d7e0e9;background:#fff}html[data-theme=light] .settings-card>header{border-color:#e1e7ed}html[data-theme=light] .notification-list b,html[data-theme=light] .settings-card>header h2,html[data-theme=light] .settings-toggle-row b,html[data-theme=light] .theme-picker button b{color:#17202b}html[data-theme=light] .logo-upload,html[data-theme=light] .settings-field input,html[data-theme=light] .settings-field select,html[data-theme=light] .settings-field textarea,html[data-theme=light] .settings-select-button,html[data-theme=light] .theme-picker button{border-color:#ccd6e0;background:#f8fafc;color:#17202b}html[data-theme=light] .theme-picker button.active{border-color:#0ba7f5;background:#e5f5fd}html[data-theme=light] .service-menu{border-color:#ccd6e0;background:#fff}html[data-theme=light] .service-menu label{color:#273444}html[data-theme=light] .notification-list label,html[data-theme=light] .settings-toggle-row{border-color:#e1e7ed}html[data-theme=light] .sidebar{border-color:#d7e0e9;background:#fff;color:#273444}html[data-theme=light] .sidebar nav a{color:#4b5b6d}html[data-theme=light] .sidebar nav a.active{color:#168dd0}html[data-navigation=compact] .app-grid{grid-template-columns:76px minmax(0,1fr)}html[data-navigation=compact] .sidebar nav a{justify-content:center;padding-right:0;padding-left:0}html[data-navigation=compact] .sidebar nav a span{display:none}html[data-navigation=compact] .bluefox-main-logo{width:40px;height:44px}@media (max-width:1000px){.settings-layout{grid-template-columns:1fr}.settings-side-column{display:grid;grid-template-columns:1fr 1fr}.settings-side-column .settings-card:last-child{grid-column:1/-1}}@media (max-width:650px){.settings-save-top{padding:10px 12px;font-size:0}.settings-save-top svg{margin:0}.settings-form-grid,.settings-side-column,.theme-picker{grid-template-columns:1fr}.settings-side-column .settings-card:last-child{grid-column:auto}.service-menu{grid-template-columns:1fr}}body,html{height:100%;overflow:hidden}.app-grid{min-height:0}.app-grid,.sidebar{height:100dvh;overflow:hidden}.content{height:100dvh;min-height:0;overflow-x:hidden;overflow-y:auto;background:#02060a}.content-frame{width:100%;max-width:1500px;height:100%;min-height:0;margin-inline:auto;background:radial-gradient(circle at 70% -20%,#0c1724 0,transparent 38%),var(--bg)}.viewport-page{height:100%;min-height:0;min-width:0;overflow:hidden}.viewport-scroll{height:100%;min-height:0;overflow-y:auto;padding-right:3px}.sidebar{background:#050a10!important}.sidebar nav{padding-bottom:8px}.sidebar nav a[href="/settings"]{height:38px}.bluefox-main-logo{display:block;width:132px;height:44px;overflow:hidden}.bluefox-main-logo img{width:100%;height:100%;object-fit:contain}.dashboard-viewport{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:0}.dashboard-viewport,.jobs-viewport{display:flex;flex-direction:column}.jobs-page-header{display:grid;grid-template-columns:minmax(140px,1fr) minmax(220px,520px) minmax(140px,1fr);align-items:start;gap:clamp(12px,2vw,28px);margin-bottom:12px}.jobs-page-header>.btn-primary{justify-self:end}.jobs-search{display:flex;width:100%;min-width:0;align-self:center;justify-self:center;align-items:center;gap:8px;padding:9px 14px}.jobs-viewport>.jobs-body{display:flex;min-height:0;flex:1;flex-direction:column}.grouped-jobs-table{min-height:0;flex:1;overflow:auto}.grouped-jobs-table .data-table thead{position:sticky;top:0;z-index:5}.jobs-table-surface{display:flex;min-height:0;flex:1;flex-direction:column;overflow:hidden}.jobs-column-header{table-layout:fixed;flex:none}.jobs-column-header th:last-child{text-align:right}.jobs-section-grid{display:grid;grid-template-rows:minmax(0,3fr) minmax(0,4fr) minmax(0,4fr) 106px 106px;min-height:0;flex:1}.jobs-table-group{display:flex;min-height:0;flex-direction:column;border-top:1px solid #1b2938}.jobs-table-group h2{flex:none;padding:5px 13px;background:#0a1119;font-size:12px}.jobs-group-scroll{min-height:0;flex:1;overflow-y:scroll;padding-bottom:9px;scrollbar-color:#344254 transparent;scrollbar-width:thin}.jobs-group-scroll::-webkit-scrollbar{width:6px}.jobs-group-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#344254}.jobs-group-scroll .data-table td{height:34px;overflow:hidden;padding-top:6px;padding-bottom:6px;text-overflow:ellipsis}.jobs-filter-scroll{min-height:0;flex:1;overflow-y:auto;padding-bottom:9px;scrollbar-color:#344254 transparent;scrollbar-width:thin}.jobs-filter-scroll::-webkit-scrollbar{width:6px}.jobs-filter-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#344254}.jobs-filter-scroll .data-table td{overflow:hidden;text-overflow:ellipsis}.jobs-clickable-row{cursor:pointer;transition:background .15s ease}.jobs-clickable-row:focus,.jobs-clickable-row:hover{background:#111d2a;outline:0;box-shadow:inset 3px 0 #0ba7f5}.jobs-technician-link{position:relative;z-index:3;display:inline-flex;align-items:center;gap:7px;color:#0ba7f5;font-weight:400}.jobs-technician-link:hover{text-decoration:underline}.jobs-technician-avatar{display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;border:1px solid #3a4b60;border-radius:50%;background:#263241;color:#e9f3fb;font-size:8px;font-weight:750;text-decoration:none}.job-detail-viewport{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden}.job-detail-header{display:flex;min-height:70px;flex:none;align-items:flex-start;justify-content:space-between;padding:0 0 12px}.job-detail-screen{display:grid;grid-template-rows:220px minmax(0,1fr);min-height:0;flex:1;gap:12px}.job-detail-bottom,.job-detail-top{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(350px,1fr);min-height:0;gap:12px}.job-detail-right-bottom>section,.job-detail-top>section{min-height:0;overflow:hidden}.job-detail-left-bottom{display:grid;height:calc(100% + 60px);min-height:0;grid-template-rows:210px minmax(0,1fr);gap:12px;margin-top:-60px}.job-detail-right-bottom{display:grid;min-height:0;grid-template-rows:200px 210px 179px;padding-top:12px;align-content:start;gap:12px}.job-info-row{display:grid;grid-template-columns:minmax(220px,.82fr) minmax(340px,1.18fr);min-height:0;gap:12px}.job-info-row>section{min-height:0;overflow:hidden}.job-detail-viewport .panel>header{min-height:43px;padding:8px 12px}.job-detail-top .job-progress-card{height:160px;align-self:start}.job-detail-top .job-invoice-card{height:228px}.card-title-icon{display:grid;width:27px;height:27px;flex:none;place-items:center;border-radius:999px;background:#073761;color:#0ba7f5}.job-progress-steps{display:flex;height:calc(100% - 43px);align-items:center;padding:8px 22px 5px}.job-progress-step{position:relative;display:flex;min-width:0;flex:1;flex-direction:column;align-items:center;text-align:center}.job-progress-dot{position:relative;z-index:2;display:grid;width:26px;height:26px;place-items:center;border-radius:999px;color:#06100a}.job-progress-dot.complete,.job-progress-line.complete{background:#07b72e}.job-progress-dot.pending,.job-progress-line.pending{background:#888d92}.job-progress-line{position:absolute;top:12px;left:50%;z-index:1;width:100%;height:3px}.job-progress-step b{margin-top:8px;font-size:12px;white-space:nowrap}.job-progress-step small{margin-top:5px;color:#8d99aa;font-size:11px;white-space:nowrap}.job-invoice-content{display:flex;height:calc(100% - 43px);flex-direction:column;padding:9px 14px;font-size:11px}.panel .card-action-link,.panel>header a.blue,.panel>header button.blue{font-size:13px;font-weight:700}.job-invoice-content dl{display:grid;grid-template-columns:1fr auto;gap:5px 12px;margin-top:6px}.job-invoice-content dt{color:#8d99aa}.job-invoice-content dd{text-align:right}.job-total{display:flex;align-items:end;justify-content:space-between;margin-top:8px;border-top:1px solid #1b2938;padding-top:11px;padding-bottom:5px}.job-total strong{font-size:20px}.job-customer-content{padding:10px 14px;font-size:11px}.job-customer-content p{display:grid;grid-template-columns:16px 1fr;gap:7px;margin-top:7px}.job-customer-content svg{color:#0ba7f5}.job-information-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 24px;padding:9px 16px;font-size:11px}.job-information-grid dt{color:#8d99aa}.job-information-grid dd{margin-top:2px;overflow:hidden;color:#eef3f8;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.job-information-grid .pill{padding:2px 8px;font-size:9px}.job-information-grid>:nth-child(2),.job-information-grid>:nth-child(5){display:none}.service-card{display:flex;min-height:0;flex-direction:column}.service-list{min-height:0;flex:1;overflow-y:auto}.job-service-row{display:grid;height:60px;min-height:60px;grid-template-columns:38px 34px 1fr auto;align-items:center;gap:10px;border-top:1px solid #1b2938;padding:3px 12px;font-size:11px}.job-service-row:first-child{border-top:0}.job-service-photo{display:grid;width:34px;aspect-ratio:3/4;place-items:center;overflow:hidden;border-radius:3px;background:linear-gradient(145deg,#9d754b,#253c50 58%,#0b1118);color:#d9e5ef}.job-quantity{display:grid;width:29px;height:29px;place-items:center;border-radius:999px;background:#29313e;color:#bbc4d0}.job-service-row b{font-size:13px}.job-service-row small{display:block;margin-top:2px;color:#aab4c2;font-size:12px;line-height:1.35}.job-service-footer{display:grid;flex:none;grid-template-columns:1fr 210px;align-items:end;border-top:1px solid #1b2938;padding:8px 12px}.job-service-footer .btn-secondary{width:142px}.job-service-footer dl{display:grid;grid-template-columns:1fr auto;gap:3px 12px;font-size:11px}.job-service-footer dt{color:#8d99aa}.job-service-footer dd{text-align:right}.job-service-footer .total{margin-top:2px;border-top:1px solid #263546;padding-top:4px;color:#f4f7fb;font-size:15px;font-weight:700}.job-description-copy{padding:12px 14px;font-size:14px;line-height:1.5}.job-description-total{display:flex;align-items:end;justify-content:space-between;margin:auto 14px 12px;border-top:1px solid #1b2938;padding-top:12px}.job-description-total strong{font-size:21px}.job-description-total{display:none}.job-detail-right-bottom>section:first-child{display:flex;flex-direction:column}.job-photo-grid{display:flex;height:calc(100% - 43px);align-items:flex-start;gap:12px;overflow-x:auto;overflow-y:hidden;padding:10px 14px 14px;scrollbar-color:#344254 transparent;scrollbar-width:thin}.job-phone-photo{display:grid;width:auto;height:calc(100% - 4px);min-width:0;flex:0 0 auto;aspect-ratio:3/4;place-items:center;overflow:hidden;border-radius:3px;background:linear-gradient(155deg,#b78b5f,#2a4052 55%,#0c121a);color:#dce7f0}.job-phone-photo.photo-2{background:linear-gradient(25deg,#162431,#b77d4a 60%,#303e4b)}.job-phone-photo.photo-3{background:linear-gradient(145deg,#a17952,#293f52 55%,#111820)}.job-phone-photo.photo-4{background:linear-gradient(35deg,#16212c,#9b7049 65%,#35485a)}.job-notes-copy{padding:10px 14px;font-size:14px;line-height:1.5}.job-edit-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:rgb(0 0 0/.62);padding:22px}.job-edit-modal{width:min(925px,calc(100vw - 44px));max-height:calc(100dvh - 44px);overflow-y:auto;border:1px solid #243244;border-radius:10px;background:#0e151e;box-shadow:0 24px 70px rgb(0 0 0/.55);padding:20px 16px 28px}.job-edit-heading{display:flex;align-items:center;gap:24px;padding:0 12px 14px}.job-edit-heading button{display:grid;place-items:center;border:0;background:transparent;color:#0ba7f5}.job-edit-heading h2{font-size:28px;font-weight:750;letter-spacing:-.02em}.job-edit-modal form{display:flex;flex-direction:column}.job-edit-section-title{display:flex;align-items:center;gap:12px;padding:4px 12px 14px}.job-edit-section-title>span{display:grid;width:30px;height:30px;place-items:center;border-radius:999px;background:#073761;color:#0ba7f5}.job-edit-section-title h3{font-size:17px;font-weight:700}.job-edit-section-title.job-section{margin-top:20px}.job-edit-grid{display:grid;gap:12px 14px}.job-edit-grid.customer-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.job-edit-grid.customer-grid>*{grid-column:span 2}.job-edit-grid.customer-grid>:first-child,.job-edit-grid.customer-grid>:nth-child(2){grid-column:span 3}.job-edit-grid.customer-grid .address-field{grid-column:span 4}.job-edit-grid.customer-grid>.customer-contact-field{grid-column:span 3}.job-edit-field.customer-contact-field input{padding-left:24%}.job-edit-grid.job-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.job-edit-description,.job-edit-field{position:relative;display:block;min-width:0;border-radius:10px;background:#171e29;color:#aeb7c4;font-weight:650}.job-edit-field{height:47px}.job-edit-field>span{position:absolute;top:50%;left:17px;z-index:1;transform:translateY(-50%);pointer-events:none}.job-edit-field input,.job-edit-field select{width:100%;height:100%;border:0;outline:0;border-radius:inherit;background:transparent;color:#f4f7fb;padding:0 16px 0 48%;text-align:right}.job-edit-field select{-webkit-appearance:none;appearance:none;color-scheme:dark}.job-edit-field.job-select-field{display:flex;align-items:center;gap:8px;padding-left:17px}.job-edit-field.job-select-field>span{position:static;flex:none;transform:none}.job-edit-field.job-select-field select{width:0;min-width:0;flex:1;padding:0 34px 0 0;background-image:none;text-align:right;text-align-last:right}.job-select-field>svg{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none}.job-tax-field input{padding-right:64px}.job-tax-field>i{position:absolute;top:50%;right:38px;display:grid;transform:translateY(-50%);place-items:center;color:#9ca8b8;pointer-events:none}.tax-stepper-actions{position:absolute;top:50%;right:8px;display:flex;flex-direction:column;transform:translateY(-50%)}.tax-stepper-actions button{display:grid;width:24px;height:20px;place-items:center;color:inherit;cursor:pointer}.tax-stepper-actions button:disabled{opacity:.35;cursor:default}.tax-stepper-actions button:focus-visible{outline:2px solid #0ba7f5;border-radius:4px}.job-autocomplete,.job-popover-field{position:relative;overflow:visible}.job-edit-options{position:absolute;top:calc(100% + 5px);right:0;left:0;z-index:120;max-height:210px;overflow-y:auto;border:1px solid #2a3a4e;border-radius:8px;background:#101923;padding:5px;box-shadow:0 14px 30px rgb(0 0 0/.5)}.job-edit-options>button{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:2px;border:0;border-radius:6px;background:transparent;color:#eef3f8;padding:8px 10px;text-align:left}.job-edit-options>button.selected,.job-edit-options>button:hover{background:#17324b}.job-edit-options small{color:#8d99aa;font-size:10px;font-weight:500}.job-popover-field>button{display:flex;width:100%;height:100%;align-items:center;justify-content:flex-end;gap:8px;overflow:hidden;border:0;background:transparent;color:#f4f7fb;padding:0 14px 0 45%;text-align:right;white-space:nowrap}.job-popover-field .technician-options{max-height:220px}.job-popover-field .technician-options>button{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:8px}.job-date-picker{right:auto;width:560px;max-width:min(560px,calc(100vw - 80px));overflow:visible;padding:8px}.job-date-picker .dispatch-date-days{margin-top:7px}.job-date-picker .dispatch-date-days>button{flex-direction:column;align-items:center;padding:6px}.time-options{display:grid;width:210px;max-height:230px;grid-template-columns:1fr 1fr}.time-options>button{align-items:center;padding:7px}.duration-field{display:grid;grid-template-columns:1fr auto 25px;align-items:center;padding:0 8px 0 17px}.duration-field>span{position:static;transform:none}.duration-field>strong{color:#f4f7fb;white-space:nowrap}.duration-field>div{display:flex;flex-direction:column}.duration-field button{display:grid;height:20px;place-items:center;border:0;background:transparent;color:#9fb0c2}.job-edit-description{height:108px;margin-top:14px;padding:11px 17px}.job-edit-description>span{display:block}.job-edit-description textarea{width:100%;height:66px;resize:none;border:0;outline:0;background:transparent;color:#f4f7fb;padding-top:6px;font-weight:400}.job-edit-actions{display:grid;width:min(560px,82%);grid-template-columns:1fr 1fr;gap:12px;margin:23px auto 0}.job-edit-cancel,.job-edit-save{width:100%;border-radius:999px;padding:14px 18px;font-size:16px;font-weight:750}.job-edit-save{border:0;background:#0ba7f5;color:#03101a}.job-edit-cancel{border:1px solid #34455a;background:#101923;color:#dce6f2}.item-edit-modal{width:min(585px,calc(100vw - 44px));border:1px solid #243244;border-radius:10px;background:#0e151e;box-shadow:0 24px 70px rgb(0 0 0/.55);padding:20px 16px 28px}.item-edit-modal form{display:flex;flex-direction:column;gap:14px;padding-top:32px}.item-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.item-edit-field{display:flex;min-height:94px;flex-direction:column;border-radius:10px;background:#171e29;padding:15px 18px;color:#aeb7c4;font-size:16px;font-weight:700}.item-edit-field.description{min-height:94px}.item-edit-label{display:flex;align-items:center;gap:10px}.item-edit-label i{display:grid;width:29px;height:29px;place-items:center;border-radius:999px;background:#073761;color:#0ba7f5;font-style:normal}.item-edit-field input{flex:1;border:0;outline:0;background:transparent;color:#f4f7fb;padding-top:8px;font-size:16px;font-weight:700}.item-edit-modal .job-edit-actions{margin-top:46px}.calendar-page{display:flex;min-height:0;height:100%;flex-direction:column;gap:12px;overflow:hidden}.calendar-header{display:flex;min-height:55px;align-items:flex-start;justify-content:space-between;flex:0 0 auto;margin-bottom:8px}.calendar-header-actions{display:flex;align-items:center;gap:10px}.new-job-action{width:144px;min-width:144px;min-height:40px;justify-self:end;white-space:nowrap}.calendar-summary{display:grid;grid-template-columns:repeat(4,1fr);height:78px;min-height:78px;flex:0 0 78px;padding:0}.calendar-summary>div{position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:8px 18px;border-right:0}.calendar-summary>div:last-child{border-right:0}.calendar-summary-icon{display:grid;place-items:center;width:39px;height:39px;flex:none;border-radius:9px;color:#10aaf7}.calendar-summary-icon.blue-bg,.calendar-summary-icon.cyan-bg{background:#0a3d5b}.calendar-summary-icon.amber-bg{color:#f3a51f;background:#4b2d10}.calendar-summary-icon.green-bg{color:#16c875;background:#063d26}.calendar-summary p{display:flex;flex-direction:column}.calendar-summary b{font-size:20px;line-height:28px}.calendar-summary small{color:#8f9bad;margin-top:0;font-size:12px;line-height:16px}.calendar-shell{display:flex;min-height:0;flex:1;flex-direction:column;overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:center;gap:22px;height:58px;flex:0 0 auto;border-bottom:1px solid #1b2938}.calendar-toolbar h2{min-width:180px;text-align:center;font-size:18px;font-weight:750}.calendar-toolbar button{display:grid;place-items:center;width:34px;height:34px;border:1px solid #263546;border-radius:8px;background:#0b121b}.calendar-toolbar button:hover{border-color:#159ef2;color:#10aaf7}.calendar-weekdays{flex:0 0 34px;align-items:center;border-bottom:1px solid #1b2938;background:#151d28;color:#9ba7b8;text-align:center;font-size:11px}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-grid{min-height:0;flex:1;grid-template-rows:repeat(5,minmax(0,1fr))}.calendar-day{min-width:0;padding:9px 10px;border-right:1px solid #1b2938;border-bottom:1px solid #1b2938;background:#0b121b;transition:background .15s,border-color .15s}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover{position:relative;background:#101c29;box-shadow:inset 0 0 0 1px #159ef2}.calendar-day.muted-day{background:#080e15}.calendar-day.today{background:#0c1b2a;box-shadow:inset 0 0 0 1px #159ef2}.calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.calendar-day-head>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-weight:700}.calendar-day.today .calendar-day-head>span{background:#159ef2;color:white}.calendar-day-head>b{color:#8f9bad;font-size:10px;white-space:nowrap}.calendar-day-jobs{display:flex;flex-direction:column;gap:4px;margin-top:7px;overflow:hidden}.calendar-day-jobs>span{display:flex;align-items:center;gap:6px;min-width:0;padding:3px 6px;border-radius:5px;background:#111c28;color:#b8c3d1;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-day-jobs i{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#8d99a8}.calendar-day-jobs .upcoming i{background:#f1aa25}.calendar-day-jobs .progress i{background:#159ef2}.calendar-day-jobs .completed i{background:#16b96f}.calendar-day-jobs .canceled i{background:#ef5268}.calendar-day-jobs small{color:#10aaf7;font-size:10px;padding-left:6px}@media (max-width:900px){.calendar-summary{grid-template-columns:repeat(2,1fr)}.calendar-summary>div:nth-child(2){border-right:0}.calendar-shell{min-width:760px}.calendar-page{overflow:auto}}.photo-gallery-modal{width:min(1080px,calc(100vw - 44px));border:1px solid #243244;border-radius:10px;background:#0e151e;box-shadow:0 24px 70px rgb(0 0 0/.55);padding:20px 16px 24px}.photo-gallery-scroll{display:flex;gap:18px;overflow-x:auto;padding:10px 12px 18px;scrollbar-color:#415268 transparent;scrollbar-width:thin}.photo-gallery-scroll::-webkit-scrollbar{height:8px}.photo-gallery-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#415268}.photo-gallery-image{display:grid;width:290px;min-width:290px;aspect-ratio:3/4;place-items:center;align-content:center;gap:12px;border-radius:7px;background:linear-gradient(155deg,#b78b5f,#2a4052 55%,#0c121a);color:#dce7f0}.photo-gallery-image.photo-2,.photo-gallery-image.photo-5{background:linear-gradient(25deg,#162431,#b77d4a 60%,#303e4b)}.photo-gallery-image.photo-3,.photo-gallery-image.photo-6{background:linear-gradient(145deg,#a17952,#293f52 55%,#111820)}.photo-gallery-image span{font-weight:700}@media (max-width:760px){.job-edit-grid.customer-grid,.job-edit-grid.job-grid{grid-template-columns:1fr}.job-edit-grid.customer-grid>*{grid-column:auto!important}.job-edit-field input,.job-edit-field select{padding-left:42%}}.chart{height:clamp(150px,21dvh,230px);border:0;background-color:transparent;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#263442 20%),repeating-linear-gradient(180deg,transparent 0,transparent 39px,#263442 40px)}.chart-line{background:#2fa8f4}.pie-chart{width:clamp(145px,15vw,210px);height:clamp(145px,15vw,210px);background:radial-gradient(circle,#0e151e 0 55%,transparent 56%),conic-gradient(#0ba7f5 0 66%,#00ad2e 66% 72%,#718096 72% 94%,#8c48e8 94% 98%,#e94459 98%);position:relative}.pie-chart:before{content:"102";inset:34% 0 auto;color:#f4f7fb;font-size:28px;font-weight:800;line-height:1}.pie-chart:after,.pie-chart:before{position:absolute;z-index:1;text-align:center}.pie-chart:after{content:"Total Jobs";inset:55% 0 auto;color:var(--muted);font-size:11px;font-weight:600}.dashboard-viewport .pie-chart+.ml-5{display:flex;flex-direction:column}.dashboard-viewport .pie-chart+.ml-5>:first-child{order:3}.dashboard-viewport .pie-chart+.ml-5>:nth-child(2){order:2}.dashboard-viewport .pie-chart+.ml-5>:nth-child(3){order:1}.dashboard-viewport .pie-chart+.ml-5>:nth-child(3) i{background:#718096!important}.dashboard-viewport .pie-chart+.ml-5>:nth-child(4){order:4}.dashboard-viewport .pie-chart+.ml-5>:nth-child(5){order:5;font-size:0}.dashboard-viewport .pie-chart+.ml-5>:nth-child(5):after{content:"Cancelled";font-size:14px}.content .text-zinc-700{color:#aeb8c5!important}.pill-gray{color:#b0bac7;background:#29313d}.dashboard-viewport .bg-white,.reports-viewport .bg-white{background:transparent!important}.dashboard-viewport .min-h-\[292px\]{min-height:clamp(180px,25dvh,292px)}.reports-viewport{display:flex;flex-direction:column}.reports-viewport>.metric-grid,.reports-viewport>header{flex:none}.reports-viewport>.mt-3.grid{min-height:0;flex:1}.reports-viewport>.mt-3.grid>section{display:flex;min-height:0;flex-direction:column;overflow:hidden}.reports-viewport>.mt-3.grid>section>div{min-height:0}.reports-viewport>.mt-3.grid>section>div:last-child{flex:1;overflow:auto}.reports-viewport .h-\[264px\],.reports-viewport .h-\[285px\]{height:auto}.reports-viewport .chart{height:100%;min-height:140px}.jobs-viewport .panel.grid-cols-6{min-height:42px}.jobs-viewport .panel.grid-cols-6 button{padding-top:9px;padding-bottom:9px}.jobs-filter-tabs>button{position:relative}.calendar-summary>div:not(:last-child):after,.jobs-filter-tabs>button:not(:last-child):after,.technician-metric:not(:last-child):after{content:"";position:absolute;top:8px;bottom:8px;right:0;width:1px;background:#1b2938;pointer-events:none}html[data-theme=light] .calendar-summary>div:after,html[data-theme=light] .jobs-filter-tabs>button:after,html[data-theme=light] .technician-metric:after{background:#d5dee8}.jobs-filter-tabs>button:has(+button[aria-pressed=true]):after,.jobs-filter-tabs>button[aria-pressed=true]:after{display:none}@media (max-width:900px){.calendar-summary>div:nth-child(2):after{display:none}}.dashboard-viewport .metric,.reports-viewport .metric{min-height:clamp(78px,9dvh,96px)}.reports-viewport .metric .text-xs.font-semibold{white-space:nowrap}.dashboard-viewport section{min-height:0}.dispatch-viewport{position:relative;display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden}.dispatch-page-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:16px;margin-bottom:20px}.dispatch-date-button{position:relative;min-width:240px;justify-self:center;justify-content:space-between;gap:12px;padding-right:18px;padding-left:18px}.dispatch-date-menu{position:absolute;top:72px;left:50%;z-index:70;display:flex;width:min(760px,calc(100% - 40px));transform:translateX(-50%);flex-direction:column;gap:8px;padding:10px;box-shadow:0 18px 44px rgb(0 0 0/.5)}.dispatch-month-controls{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;text-align:center}.dispatch-month-controls button{display:grid;height:30px;place-items:center;border:1px solid #263546;border-radius:7px;color:#aab7c7}.dispatch-date-days{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.dispatch-date-days>button{display:grid;min-width:48px;place-items:center;gap:3px;border:1px solid #263546;border-radius:8px;padding:7px 5px;color:#aab7c7}.dispatch-date-days>button.selected,.dispatch-date-days>button:hover{border-color:#0ba7f5;background:#0d3d64;color:#fff}.dispatch-date-menu small{font-size:9px;text-transform:uppercase}.dispatch-date-menu b{font-size:14px}.dispatch-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 265px;min-height:0;flex:1;gap:12px;overflow:hidden}.dispatch-side{min-height:0;overflow-y:auto}.dispatch-layout>aside:last-child{display:flex;flex-direction:column;padding:12px}.dispatch-board-shell{height:100%;min-width:0;min-height:0;overflow:hidden}.dispatch-board{display:flex;width:100%;height:100%;min-height:0;flex-direction:column}.dispatch-schedule-body{display:flex;min-width:0;min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;scrollbar-color:#344254 transparent;scrollbar-width:thin}.dispatch-schedule-body::-webkit-scrollbar{width:7px}.dispatch-schedule-body::-webkit-scrollbar-thumb{border-radius:999px;background:#344254}.dispatch-time-rail{display:flex;width:64px;height:var(--timeline-height,calc(100% - 7px));min-height:0;flex:none;flex-direction:column;border-right:1px solid #1b2938}.dispatch-time-header-spacer{height:57px;flex:none;border-bottom:1px solid #1b2938}.dispatch-time-grid{position:relative;min-height:0;flex:1;background-image:linear-gradient(180deg,#1b2938 0,#1b2938 1px,transparent 0);background-size:100% calc(100% / 10)}.dispatch-tech-scroll{display:flex;width:calc(100% - 64px);height:var(--timeline-height,calc(100% - 7px));min-width:0;min-height:0;flex:1 1 auto;flex-direction:column;overflow-x:auto;overflow-y:hidden}.dispatch-technician-columns{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr))}.dispatch-technician-header{width:max(100%,900px);flex:none;border-bottom:1px solid #1b2938}.dispatch-calendar{position:relative;width:max(100%,900px);min-height:0;flex:1;background-image:linear-gradient(180deg,#1b2938 0,#1b2938 1px,transparent 0);background-size:100% calc(100% / 10)}.dispatch-calendar-columns{position:absolute;inset:0}.dispatch-calendar-column{position:relative;min-width:0;border-right:1px solid #1b2938}.dispatch-technician-target{position:relative;z-index:4;background:rgb(11 167 245/.08);box-shadow:inset 0 0 0 2px #0ba7f5}.dispatch-time-label{position:absolute;left:8px;z-index:2;width:52px;transform:translateY(-50%);background:#0e151e;font-size:10px;line-height:1}.dispatch-job-card{position:absolute;left:6px;right:6px;overflow:hidden;border-width:1px;border-radius:8px;padding:7px 8px;font-size:11px;line-height:1.25;box-shadow:0 8px 18px rgb(0 0 0/.25)}.dispatch-job-card b,.dispatch-job-card span{display:block;max-width:100%;overflow-wrap:anywhere}.dispatch-job-card b{margin-top:3px}.dispatch-job-placeholder{border-style:dashed;background:rgb(111 124 142/.12)!important;box-shadow:none;opacity:.75}.dispatch-job-dragging{z-index:30;cursor:grabbing;opacity:0;box-shadow:none}.dispatch-description{min-height:185px;max-height:207px;overflow-y:auto}.dispatch-description+label{margin-top:20px!important}.dispatch-description+label+div{margin-top:16px!important}.dispatch-technician-picker{position:relative}.dispatch-technician-options{position:absolute;right:0;bottom:calc(100% + 6px);left:0;z-index:65;padding:6px;box-shadow:0 12px 30px rgb(0 0 0/.45)}.dispatch-technician-options>button{display:grid;width:100%;grid-template-columns:20px 1fr auto;align-items:center;gap:8px;border-radius:6px;padding:8px;text-align:left}.dispatch-technician-options>button:hover:not(:disabled){background:#142334}.dispatch-technician-options>button:disabled{cursor:not-allowed;opacity:.45}.dispatch-technician-options small{color:#ff7c8d}.dispatch-tech-checkbox{display:grid;width:16px;height:16px;place-items:center;border:1px solid #536278;border-radius:4px}.dispatch-tech-checkbox.checked{border-color:#0ba7f5;background:#0ba7f5;color:#06111c}.dispatch-map{position:relative;width:100%;height:190px;max-height:190px;margin-top:auto;aspect-ratio:auto;background:#10253b}.dispatch-map iframe{width:100%;height:100%;border:0;filter:grayscale(.25) invert(.9) hue-rotate(175deg) saturate(.8)}.dispatch-conflict-toast{position:fixed;right:24px;bottom:24px;z-index:80;max-width:320px;border:1px solid #7f2e38;border-radius:9px;background:#32151b;padding:10px 14px;color:#ff8796;font-size:12px;box-shadow:0 12px 30px rgb(0 0 0/.45);animation:dispatch-toast-life 5s both}@keyframes dispatch-toast-life{0%{opacity:0;transform:translateY(8px)}8%,88%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.technicians-viewport{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:hidden}.technicians-page-header{margin-bottom:20px}.technician-metrics{display:grid;height:78px;min-height:78px;grid-template-columns:repeat(4,minmax(0,1fr))}.technician-metric{position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:8px 18px;border-right:0}.technician-metric:last-child{border-right:0}.technician-table{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden}.technician-table .data-table{height:100%;table-layout:fixed}.technician-table tbody{height:calc(100% - 40px)}.technician-table tbody tr{height:10%}.technician-table .data-table td{height:auto;min-height:48px}.technician-table thead{position:sticky;top:0;z-index:5}.technician-clickable-row{position:relative;cursor:pointer;transition:background .15s ease}.technician-clickable-row:hover{background:#111d2a}.technician-clickable-row:focus-within{background:#111d2a;box-shadow:inset 3px 0 #0ba7f5}.technician-clickable-row>td:first-child{position:static}.technician-row-link{position:absolute;z-index:3;inset:0;width:100%}.technician-job-links{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0;padding:0;list-style:none;white-space:normal}.technician-job-links a{position:relative;z-index:4;display:inline-block;white-space:nowrap}.technician-job-links a:hover{text-decoration:underline}.technician-job-links a:focus-visible{outline:2px solid #0ba7f5;outline-offset:3px;border-radius:2px}.technician-detail-viewport{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding-right:3px}.technician-detail-header{display:flex;min-height:70px;flex:0 0 auto;align-items:flex-start;justify-content:space-between;padding:0 0 12px}.technician-back{display:grid;width:30px;height:34px;place-items:center;color:#0ba7f5}.technician-edit-profile{width:132px;padding:10px 16px}.technician-detail-grid{display:grid;min-height:0;flex:1;grid-template-columns:minmax(360px,1.4fr) minmax(280px,1.15fr) minmax(250px,.95fr);grid-template-rows:minmax(190px,.84fr) minmax(275px,1.2fr) minmax(190px,.82fr);gap:12px}.technician-detail-grid>.panel{min-width:0;min-height:0;overflow:hidden}.technician-detail-grid>.panel>header{min-height:43px;padding:8px 12px}.technician-profile-card{position:relative;display:grid;grid-column:1/3;grid-template-columns:135px 1fr;grid-template-rows:1fr 62px;align-items:center;padding:14px}.technician-avatar{display:grid;width:116px;height:116px;place-items:center;border:8px solid #25282b;border-radius:50%;background:linear-gradient(145deg,#26394d,#0a1017);color:#eef5fb;font-size:35px;font-weight:800}.technician-avatar-wrap{position:relative;width:116px;height:116px}.technician-photo-edit{position:absolute;right:2px;bottom:5px;display:grid;width:32px;height:32px;place-items:center;border:2px solid #0e151e;border-radius:50%;background:#0ba7f5;color:#04111b;cursor:pointer;box-shadow:0 4px 12px rgb(0 0 0/.4)}.technician-photo-edit:hover{background:#38b8fa}.technician-photo-edit input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.technician-profile-copy{align-self:center}.technician-profile-copy h2{font-size:22px;font-weight:750}.technician-profile-copy>p:not(.muted){display:flex;align-items:center;gap:10px;margin-top:9px;color:#c1c9d3;font-size:12px}.technician-profile-copy svg{color:#0ba7f5}.technician-profile-meta{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));align-self:end;border-top:1px solid #1b2938;padding:12px 2px 0}.technician-profile-meta dt{color:#8d99aa;font-size:11px}.technician-profile-meta dd{margin-top:6px;color:#e9eff6;font-size:12px}.technician-profile-meta select{-webkit-appearance:none;appearance:none;width:125px;border:1px solid #263546;border-radius:8px;outline:0;background:#0b121b;padding:6px 30px 6px 10px;color:#e9eff6}.technician-status-select{position:relative;width:125px}.technician-status-select>svg{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none}.technician-location-card{grid-column:3}.technician-map-placeholder{height:calc(100% - 43px);background:#10253b}.technician-map-placeholder iframe{width:100%;height:100%;border:0;filter:grayscale(.28) invert(.9) hue-rotate(175deg) saturate(.85)}.technician-clock-card,.technician-jobs-card,.technician-revenue-card,.technician-timesheet-card{display:flex;flex-direction:column}.technician-jobs-list{display:flex;min-height:0;flex:1;flex-direction:column;overflow-y:auto;padding:0 12px 10px}.technician-job-row{position:relative;display:grid;min-height:0;flex:1;grid-template-columns:92px 1fr 110px;align-items:center;border-bottom:1px solid #1b2938;font-size:11px}.technician-job-row:last-child{border-bottom:0}.technician-job-row:before{position:absolute;top:0;bottom:0;left:8px;width:2px;background:#263546;content:""}.technician-job-marker{position:absolute;top:50%;left:8px;z-index:2;width:10px;height:10px;transform:translate(-4px,-50%);border:2px solid #101923;border-radius:50%;background:#0ba7f5;box-shadow:0 0 0 2px #263546}.technician-job-copy i.completed,.technician-job-marker.completed{background:#15c978}.technician-job-copy i.in-progress,.technician-job-marker.in-progress{background:#0ba7f5}.technician-job-copy i.upcoming,.technician-job-marker.upcoming{background:#f2b01e}.technician-job-time{z-index:1;display:flex;flex-direction:column;gap:5px;padding-left:30px}.technician-job-time b{color:#0ba7f5}.technician-job-copy span,.technician-job-location,.technician-job-time span{color:#9ba6b4}.technician-job-copy{display:flex;flex-direction:column;gap:4px}.technician-job-copy strong{font-size:12px}.technician-job-copy small{color:#8d99aa;font-size:11px}.technician-job-copy i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#0ba7f5}.technician-job-location{display:flex;flex-direction:column;gap:4px;text-align:right}.tech-range{width:120px;border:1px solid #263546;border-radius:6px;outline:0;background:#0b121b;padding:6px 9px;color:#dbe5f0}.period-select-wrap{position:relative;display:inline-flex;align-items:center}.period-select-wrap>svg{position:absolute;right:11px;pointer-events:none;color:#b7c1ce}.period-select{width:118px;appearance:none;border:1px solid #263546;border-radius:6px;outline:0;background:#0b121b;padding:6px 34px 6px 9px;color:#dbe5f0;font-size:11px}.performance-line-chart{position:relative;border:0;background-color:transparent;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#2b3948 20%),repeating-linear-gradient(180deg,transparent 0,transparent calc(20% - 1px),#2b3948 20%);color:#fff}.performance-chart-points,.performance-line-chart svg{position:absolute;inset:8px 8px 25px 38px;width:calc(100% - 46px);height:calc(100% - 33px);overflow:visible}.performance-line-chart polyline{fill:none;stroke:#25a8ff;stroke-width:2;vector-effect:non-scaling-stroke}.performance-chart-points i{position:absolute;width:9px;height:9px;transform:translate(-50%,-50%);border:2px solid #25a8ff;border-radius:50%;background:#fff}.performance-chart-y{top:5px;bottom:24px;left:2px;flex-direction:column}.performance-chart-x,.performance-chart-y{position:absolute;display:flex;justify-content:space-between;color:#fff;font-size:10px}.performance-chart-x{right:2px;bottom:2px;left:39px}.technician-revenue-chart{position:relative;min-height:0;flex:1;margin:12px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#2b3948 20%),repeating-linear-gradient(180deg,transparent 0,transparent calc(20% - 1px),#2b3948 20%);color:#fff}.technician-chart-points,.technician-revenue-chart svg{position:absolute;inset:8px 8px 25px 38px;width:calc(100% - 46px);height:calc(100% - 33px);overflow:visible}.technician-revenue-chart polyline{fill:none;stroke:#25a8ff;stroke-width:2;vector-effect:non-scaling-stroke}.technician-chart-points i{position:absolute;width:9px;height:9px;transform:translate(-50%,-50%);border:2px solid #25a8ff;border-radius:50%;background:#fff}.tech-chart-y{top:5px;bottom:24px;left:2px;flex-direction:column}.tech-chart-x,.tech-chart-y{position:absolute;display:flex;justify-content:space-between;color:#fff;font-size:10px}.tech-chart-x{right:2px;bottom:2px;left:39px}.technician-clock-table{min-height:0;flex:1;padding:0 0 10px}.technician-clock-table .data-table{height:100%;table-layout:fixed}.technician-clock-table .data-table td,.technician-clock-table .data-table th{height:auto;padding:6px 9px}.technician-timesheet-card{grid-column:1/3}.technician-timesheet-card .table-wrap{min-height:0;flex:1;padding:0 0 10px}.technician-timesheet-card .data-table{height:100%;table-layout:fixed}.technician-timesheet-card .data-table td,.technician-timesheet-card .data-table th{height:auto;padding:6px 9px}.technician-actions-card{grid-column:3}.technician-actions-card>div{display:flex;flex-direction:column;gap:8px;padding:14px}.technician-actions-card button{width:100%;justify-content:flex-start}.technician-actions-card .danger{border-color:#402330;color:#ff5f70}@media (max-width:1100px){.technician-detail-viewport{overflow:auto}.technician-detail-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.technician-profile-card{grid-column:1/-1;min-height:260px}.technician-location-card{grid-column:auto;min-height:280px}.technician-clock-card,.technician-jobs-card,.technician-revenue-card{min-height:310px}.technician-timesheet-card{grid-column:1/-1;min-height:240px}.technician-actions-card{grid-column:1/-1}}.dashboard-viewport .section-grid>section:nth-child(2){display:flex;min-height:0;flex-direction:column;overflow:hidden}.dashboard-viewport .section-grid>section:nth-child(2)>div{min-height:0;flex:1;overflow-y:auto}.dashboard-viewport .section-grid>section:nth-child(2)>a{flex:none}.dashboard-viewport>.mt-3.grid{min-height:0;flex:1;padding-bottom:2px}.dashboard-viewport>.mt-3.grid>section{display:flex;min-height:0;flex-direction:column;overflow:hidden;border-radius:10px}.dashboard-viewport>.mt-3.grid>section>header{flex:none}.dashboard-viewport>.mt-3.grid>section>div{min-height:0;overflow-y:auto}.dashboard-viewport>.mt-3.grid>section:nth-child(2)>div:first-of-type{flex:none;overflow:visible;padding-bottom:14px}.dashboard-viewport>.mt-3.grid>section:nth-child(2)>div:nth-of-type(2){min-height:0;flex:1;overflow-y:auto}.dashboard-viewport .metric-grid>:nth-child(4) .metric-icon{background:rgb(113 128 150/.14)!important;color:#718096!important}@media (max-width:1280px) and (min-width:651px){.app-grid{grid-template-columns:76px minmax(0,1fr)}.content{padding:20px 16px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section-grid{grid-template-columns:1fr}.sidebar nav a{justify-content:center;padding-left:0;padding-right:0}.sidebar nav a span{display:none}.bluefox-main-logo{width:40px;height:44px}.bluefox-main-logo img{width:138px;max-width:none;object-fit:contain;object-position:left center}}@media (max-height:820px) and (min-width:651px){.content-frame{height:790px;min-height:790px}}@media (max-height:820px) and (min-width:1001px){.content{padding-top:15px;padding-bottom:15px}.dashboard-viewport{font-size:12px}.dashboard-viewport .metric,.reports-viewport .metric{min-height:70px;padding:9px}.dashboard-viewport .metric-icon{width:32px;height:32px}.dashboard-viewport .metric-value{margin-top:2px;font-size:19px}.dashboard-viewport .chart{height:150px}.dashboard-viewport .pie-chart{width:135px;height:135px}}.calendar-header-actions>.btn-primary,.dashboard-viewport>header .btn-primary,.dispatch-page-header>.btn-primary,.jobs-page-header>.btn-primary,.new-job-action,.technicians-page-header>.btn-primary{width:144px;min-width:144px;min-height:40px;justify-content:center;white-space:nowrap;flex-wrap:nowrap}.technician-edit-modal{width:min(925px,calc(100vw - 44px));max-height:calc(100dvh - 44px);overflow-y:auto;border:1px solid #243244;border-radius:10px;background:#0e151e;box-shadow:0 24px 70px rgb(0 0 0/.55);padding:20px 16px 34px}.technician-edit-modal form{display:flex;flex-direction:column;padding-top:8px}.technician-edit-section-title{display:flex;align-items:center;gap:12px;padding:0 12px 15px}.technician-edit-section-title.job{margin-top:26px}.technician-edit-section-title>span{display:grid;width:30px;height:30px;place-items:center;border-radius:999px;background:#073761;color:#0ba7f5}.technician-edit-section-title h3{font-size:17px;font-weight:700}.technician-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.technician-edit-grid.contact{grid-template-columns:1fr 1fr;margin-top:14px}.technician-edit-grid.job{grid-template-columns:repeat(2,minmax(0,1fr))}.technician-edit-field.role select,.technician-edit-grid.contact input{padding-left:24%}.technician-edit-field{position:relative;display:block;height:47px;min-width:0;border-radius:10px;background:#171e29;color:#aeb7c4;font-weight:650}.technician-edit-field>span{position:absolute;top:50%;left:17px;z-index:1;transform:translateY(-50%);pointer-events:none}.technician-edit-field input,.technician-edit-field select{width:100%;height:100%;border:0;outline:0;border-radius:inherit;background:transparent;color:#f4f7fb;padding:0 16px 0 48%;text-align:right}.technician-edit-field input::placeholder{color:#f4f7fb;opacity:1}.technician-edit-field input[type=date]{color-scheme:dark}.technician-edit-field select{appearance:none;padding-right:42px;color-scheme:dark}.technician-edit-field.select>svg{position:absolute;top:50%;right:16px;transform:translateY(-50%);color:#e6edf5;pointer-events:none}.technician-edit-actions{display:grid;width:min(560px,82%);grid-template-columns:1fr 1fr;gap:12px;margin:58px auto 0}.technician-edit-cancel,.technician-edit-save{width:100%;min-height:50px;border-radius:999px;font-size:16px;font-weight:750}.technician-edit-save{border:0;background:#0ba7f5;color:#03101a}.technician-edit-cancel{border:1px solid #34455a;background:#101923;color:#dce6f2}@media (max-width:760px){.technician-edit-grid,.technician-edit-grid.job{grid-template-columns:1fr}.technician-edit-actions{width:100%;margin-top:32px}}.dispatch-pool-column{display:flex;flex-direction:column;gap:14px}.dispatch-pool-section{border:1px solid transparent;border-radius:10px;padding:4px;transition:border-color .15s ease,background .15s ease}.dispatch-pool-section.is-over{border-color:#0ba7f5;background:rgb(11 167 245/8%)}.dispatch-pool-section h2{margin:0 0 9px;font-size:13px;font-weight:750}.dispatch-pool-job{display:flex;width:100%;min-height:92px;flex-direction:column;align-items:flex-start;gap:3px;margin-bottom:8px;border:1px solid;border-radius:9px;padding:8px 9px;color:var(--foreground);text-align:left;touch-action:none}.dispatch-pool-job small{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.dispatch-pool-job small i{width:7px;height:7px;border-radius:999px}.dispatch-pool-job b{font-size:11px}.dispatch-pool-job strong{font-size:12px}.dispatch-pool-job>span{color:var(--muted);font-size:10px;line-height:1.35}.dispatch-drag-preview{position:relative;z-index:9999;display:flex;width:100%;min-height:92px;flex-direction:column;align-items:flex-start;gap:3px;overflow:hidden;border:1px solid;border-radius:9px;padding:8px 9px;color:var(--foreground);text-align:left;box-shadow:0 18px 42px rgb(0 0 0/.65);pointer-events:none}.dispatch-drag-preview small{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.dispatch-drag-preview small i{width:7px;height:7px;border-radius:999px}.dispatch-drag-preview b{font-size:11px}.dispatch-drag-preview strong{font-size:12px}.dispatch-drag-preview>span{color:var(--muted);font-size:10px;line-height:1.35}.invoice-detail-page{display:flex;min-height:0;height:100%;flex-direction:column;overflow:auto}.invoice-detail-header{display:flex;min-height:70px;flex:0 0 auto;align-items:flex-start;justify-content:space-between;padding:0 0 18px}.invoice-share{width:144px;min-height:40px;justify-content:center;white-space:nowrap}.invoice-detail-layout{display:grid;grid-template-columns:620px minmax(360px,500px);align-items:start;justify-content:center;gap:66px;width:100%;padding:0 0 30px}.invoice-paper{box-sizing:border-box;width:620px;height:800px;overflow:hidden;background:#fff;color:#111827;padding:30px 20px 24px;box-shadow:0 1px 0 rgb(255 255 255/.15)}.invoice-paper-brand{display:flex;justify-content:space-between}.invoice-paper-brand h2{font-size:13px;font-weight:800}.invoice-paper-brand small{color:#111827;font-size:7px;line-height:1.45}.invoice-paper-logo{display:grid;width:92px;height:76px;place-items:center;border:6px solid #252525;border-radius:4px;color:#252525;font-size:25px;font-weight:900}.invoice-paper>h3{margin-top:22px;color:#11aee7;font-size:15px;font-weight:800;letter-spacing:.04em}.invoice-paper-meta{display:grid;grid-template-columns:1fr 1fr;margin-top:10px;font-size:8px;font-weight:700}.invoice-paper-meta b,.invoice-paper-meta dt{color:#a3a8b2;text-transform:uppercase}.invoice-paper-meta p{margin-top:3px;line-height:1.3}.invoice-paper-meta dl{display:grid;grid-template-columns:78px 1fr;align-content:start}.invoice-paper table{width:100%;margin-top:24px;border-collapse:collapse;table-layout:fixed;font-size:8px}.invoice-paper th{background:#c9f2fb;color:#9ca3af;padding:6px 5px;text-transform:uppercase;text-align:right}.invoice-paper th:first-child{width:58%;text-align:left}.invoice-paper td{height:29px;border-bottom:1px solid #3d4651;padding:5px;text-align:right}.invoice-paper td:first-child{text-align:left}.invoice-paper-footer{display:grid;grid-template-columns:1fr 245px;gap:20px;padding:12px 5px 0;color:#9ca3af;font-size:8px;text-transform:uppercase}.invoice-paper-footer dl{display:grid;grid-template-columns:1fr auto;gap:7px 20px}.invoice-paper-footer dd{color:#111827;font-weight:800;text-align:right}.invoice-paper-footer .balance{margin-top:3px;border-top:1px solid #111827;padding-top:8px;font-size:13px}.invoice-summary-card{width:100%;max-width:500px;height:auto;min-height:0;align-self:start;overflow:hidden}.invoice-summary-card>header{min-height:43px}.invoice-summary-card>dl{display:grid;grid-template-columns:1fr 1.2fr;gap:14px 20px;padding:10px 16px 16px;font-size:13px}.invoice-summary-card dt{color:#8f9bad}.invoice-summary-card dd{text-align:right}.invoice-summary-total{display:flex;align-items:center;justify-content:space-between;margin:0 16px 16px;border-top:1px solid #1b2938;padding-top:18px}.invoice-summary-total strong{font-size:22px}@media (max-width:1050px){.invoice-detail-layout{grid-template-columns:620px;justify-content:center;padding-inline:0}.invoice-summary-card{max-width:620px}.invoice-detail-page{overflow:auto}}html[data-theme=light] .content,html[data-theme=light] .content-frame,html[data-theme=light] .viewport-page,html[data-theme=light] body{background:#eef3f8!important;color:#182433}html[data-theme=light] .sidebar{border-color:#1d2a39!important;background:#050a10!important;color:#f2f6fb!important}html[data-theme=light] .sidebar .muted,html[data-theme=light] .sidebar nav a{color:#d6dee8!important}html[data-theme=light] .sidebar nav a:hover{background:#10263a!important;color:#fff!important}html[data-theme=light] .sidebar nav a.active{background:#164574!important;color:#fff!important}html[data-theme=light] .dispatch-date-menu,html[data-theme=light] .dispatch-technician-options,html[data-theme=light] .panel{border-color:#d5dee8!important;background:#fff!important;color:#182433;box-shadow:0 4px 14px rgb(37 55 75/.06)}html[data-theme=light] .card-title,html[data-theme=light] .content b,html[data-theme=light] .content h1,html[data-theme=light] .content h2,html[data-theme=light] .content h3,html[data-theme=light] .content strong,html[data-theme=light] .metric-value,html[data-theme=light] .page-title{color:#172333}html[data-theme=light] .content .text-zinc-700,html[data-theme=light] .muted{color:#647286!important}html[data-theme=light] .btn-secondary,html[data-theme=light] .content input:not(.settings-switch),html[data-theme=light] .content select,html[data-theme=light] .content textarea,html[data-theme=light] .dispatch-date-button,html[data-theme=light] .dispatch-date-days>button,html[data-theme=light] .dispatch-month-controls button,html[data-theme=light] .dispatch-technician-options>button,html[data-theme=light] .period-select,html[data-theme=light] .settings-select-button,html[data-theme=light] .tech-range{border-color:#cbd6e1!important;background:#f8fafc!important;color:#263446!important}html[data-theme=light] .period-select-wrap>svg{color:#526174}html[data-theme=light] .dispatch-technician-picker>button{border-color:#cbd6e1!important;background:#f8fafc!important;color:#263446!important}html[data-theme=light] .content .jobs-search input:not(.settings-switch){background:transparent!important}html[data-theme=light] .dispatch-viewport .border-r{border-color:#d5dee8!important}html[data-theme=light] .dispatch-date-days>button.selected,html[data-theme=light] .dispatch-date-days>button:hover{border-color:#0ba7f5!important;background:#dff2fd!important;color:#08689d!important}html[data-theme=light] .card-title-icon{background:#dff2fd;color:#078ed3}html[data-theme=light] .data-table th{background:#edf2f7;color:#3a495b}html[data-theme=light] .data-table td{border-color:#dbe3eb;color:#344255}html[data-theme=light] .border-b,html[data-theme=light] .border-t,html[data-theme=light] .divide-y>:not([hidden])~:not([hidden]){border-color:#dbe3eb!important}html[data-theme=light] .hover\:bg-\[\#111c28\]:hover{background:#eef5fb!important}html[data-theme=light] .pie-chart{background:radial-gradient(circle,#fff 0 55%,transparent 56%),conic-gradient(#0ba7f5 0 66%,#00ad2e 66% 72%,#718096 72% 94%,#8c48e8 94% 98%,#e94459 98%)}html[data-theme=light] .pie-chart:before{color:#172333}html[data-theme=light] .performance-line-chart,html[data-theme=light] .technician-revenue-chart{background-color:#fff;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#d8e1ea 20%),repeating-linear-gradient(180deg,transparent 0,transparent calc(20% - 1px),#d8e1ea 20%)}html[data-theme=light] .performance-chart-x,html[data-theme=light] .performance-chart-y,html[data-theme=light] .tech-chart-x,html[data-theme=light] .tech-chart-y{color:#536174}html[data-theme=light] .dispatch-calendar-column,html[data-theme=light] .dispatch-technician-header,html[data-theme=light] .dispatch-time-header-spacer,html[data-theme=light] .dispatch-time-rail{border-color:#d4dee8}html[data-theme=light] .dispatch-calendar,html[data-theme=light] .dispatch-time-grid{background-color:#fbfcfe;background-image:linear-gradient(180deg,#d8e1ea 0,#d8e1ea 1px,transparent 0)}html[data-theme=light] .dispatch-time-label{background:#fbfcfe;color:#667487}html[data-theme=light] .dispatch-technician-header{background:#f7f9fc}html[data-theme=light] .dispatch-job-card{box-shadow:0 5px 14px rgb(45 62 80/.14)}html[data-theme=light] .dispatch-job-card[data-job-tone=progress]{background:linear-gradient(145deg,#e6f5fe,#f7fbfe)!important;color:#17384b}html[data-theme=light] .dispatch-job-card[data-job-tone=completed]{background:linear-gradient(145deg,#e4f8ee,#f8fcfa)!important;color:#174330}html[data-theme=light] .dispatch-job-card[data-job-tone=upcoming]{background:linear-gradient(145deg,#fff4dc,#fffaf0)!important;color:#4d3715}html[data-theme=light] .dispatch-job-card[data-job-tone=scheduled]{background:linear-gradient(145deg,#eef1f5,#fbfcfd)!important;color:#38485a}html[data-theme=light] .dispatch-pool-job[data-pool=draft]{background:linear-gradient(145deg,#f2eafe,#fbf9ff)!important;color:#3f285d}html[data-theme=light] .dispatch-pool-job[data-pool=unassigned]{background:linear-gradient(145deg,#fff4dc,#fffaf0)!important;color:#4d3715}html[data-theme=light] .dispatch-description,html[data-theme=light] .dispatch-map,html[data-theme=light] .technician-map-placeholder{border-color:#d5dee8!important;background:#e5edf5!important}html[data-theme=light] .pill-gray{background:#e3e9ef}html[data-theme=light] .dispatch-map iframe,html[data-theme=light] .technician-map-placeholder iframe{filter:none}html[data-theme=light] option{background:#fff;color:#263446}html[data-theme=light] .sidebar .border-b,html[data-theme=light] .sidebar .border-t,html[data-theme=light] .sidebar.border-r{border-color:#20354a!important}html[data-theme=light] .calendar-day,html[data-theme=light] .calendar-summary>div,html[data-theme=light] .calendar-toolbar,html[data-theme=light] .calendar-weekdays,html[data-theme=light] .jobs-table-group{border-color:#d7e0e9!important}html[data-theme=light] .calendar-weekdays{background:#edf2f7;color:#59687a}html[data-theme=light] .calendar-day{background:#fff}html[data-theme=light] .calendar-day:hover{background:#edf7fd;box-shadow:inset 0 0 0 1px #159ef2}html[data-theme=light] .calendar-day.muted-day{background:#f3f6f9;color:#93a0af}html[data-theme=light] .calendar-day.today{background:#eef8fe}html[data-theme=light] .calendar-day-jobs>span{background:rgb(236 242 247/.84);color:#405064}html[data-theme=light] .calendar-toolbar button{border-color:#cbd6e1;background:#f8fafc;color:#425267}html[data-theme=light] .calendar-summary-icon.blue-bg,html[data-theme=light] .calendar-summary-icon.cyan-bg{background:rgb(11 167 245/.13)}html[data-theme=light] .calendar-summary-icon.amber-bg{background:rgb(243 165 31/.15)}html[data-theme=light] .calendar-summary-icon.green-bg{background:rgb(22 200 117/.13)}html[data-theme=light] .jobs-table-group h2{background:#edf2f7;color:#2a394b}html[data-theme=light] .jobs-clickable-row:focus,html[data-theme=light] .jobs-clickable-row:hover,html[data-theme=light] .technician-clickable-row:focus-within,html[data-theme=light] .technician-clickable-row:hover{background:#eaf5fc}html[data-theme=light] .dispatch-technician-header .rounded-full,html[data-theme=light] .jobs-technician-avatar,html[data-theme=light] .technician-avatar,html[data-theme=light] .technician-table .rounded-full{border-color:#c6d5e2!important;background:#e7f0f7!important;color:#34546c!important}html[data-theme=light] .pill-blue{background:rgb(11 167 245/.14);color:#0784c3}html[data-theme=light] .pill-green{background:rgb(19 202 105/.14);color:#078143}html[data-theme=light] .pill-orange{background:rgb(244 161 24/.16);color:#a45d00}html[data-theme=light] .pill-purple{background:rgb(142 66 238/.13);color:#7131c3}html[data-theme=light] .pill-red{background:rgb(233 66 85/.13);color:#be2f43}html[data-theme=light] .pill-gray{background:rgb(100 116 139/.13);color:#526174}html[data-theme=light] .job-edit-overlay{background:rgb(34 48 66/.34)}html[data-theme=light] .item-edit-modal,html[data-theme=light] .job-edit-modal,html[data-theme=light] .photo-gallery-modal,html[data-theme=light] .technician-edit-modal{border-color:#cbd6e1;background:#fff;color:#172333;box-shadow:0 24px 70px rgb(43 60 78/.24)}html[data-theme=light] .item-edit-field,html[data-theme=light] .job-edit-description,html[data-theme=light] .job-edit-field,html[data-theme=light] .technician-edit-field{background:#f0f4f8;color:#68778a}html[data-theme=light] .duration-field>strong,html[data-theme=light] .item-edit-field input,html[data-theme=light] .job-edit-description textarea,html[data-theme=light] .job-edit-field input,html[data-theme=light] .job-edit-field select,html[data-theme=light] .job-popover-field>button,html[data-theme=light] .technician-edit-field input,html[data-theme=light] .technician-edit-field select{color:#1f2d3d!important;color-scheme:light}html[data-theme=light] .content .item-edit-field input,html[data-theme=light] .content .job-edit-description textarea,html[data-theme=light] .content .job-edit-field input,html[data-theme=light] .content .job-edit-field select,html[data-theme=light] .content .job-popover-field>button,html[data-theme=light] .content .technician-edit-field input,html[data-theme=light] .content .technician-edit-field select,html[data-theme=light] .item-edit-field input,html[data-theme=light] .job-edit-description textarea,html[data-theme=light] .job-edit-field input,html[data-theme=light] .job-edit-field select,html[data-theme=light] .job-popover-field>button,html[data-theme=light] .technician-edit-field input,html[data-theme=light] .technician-edit-field select{background:transparent!important}html[data-theme=light] .technician-edit-field input::placeholder{color:#768497}html[data-theme=light] .technician-edit-field.select>svg{color:#647286}html[data-theme=light] .job-edit-options{border-color:#cbd6e1;background:#fff;box-shadow:0 14px 30px rgb(43 60 78/.18)}html[data-theme=light] .job-edit-options>button{color:#263446}html[data-theme=light] .job-edit-options>button.selected,html[data-theme=light] .job-edit-options>button:hover{background:#e4f3fc}html[data-theme=light] .item-edit-label i,html[data-theme=light] .job-edit-section-title>span,html[data-theme=light] .technician-edit-section-title>span{background:rgb(11 167 245/.14);color:#078ed3}html[data-theme=light] .job-edit-cancel,html[data-theme=light] .technician-edit-cancel{border-color:#cbd6e1;background:#f4f7fa;color:#344255}.job-edit-overlay{left:216px}html[data-navigation=compact] .job-edit-overlay{left:76px}html[data-theme=light] .technician-profile-copy>p:not(.muted),html[data-theme=light] .technician-profile-meta dd{color:#344255}html[data-theme=light] .technician-job-copy small,html[data-theme=light] .technician-job-copy span,html[data-theme=light] .technician-job-location,html[data-theme=light] .technician-job-time span,html[data-theme=light] .technician-profile-meta dt,html[data-theme=light] .technician-status-select>svg{color:#647286}html[data-theme=light] .technician-job-row,html[data-theme=light] .technician-profile-meta{border-color:#dbe3eb}html[data-theme=light] .technician-job-row:before{background:#dbe3eb}html[data-theme=light] .technician-job-marker{border-color:#fff;box-shadow:0 0 0 2px #dbe3eb}html[data-theme=light] .job-description-total,html[data-theme=light] .job-service-footer,html[data-theme=light] .job-service-row,html[data-theme=light] .job-total,html[data-theme=light] .jobs-table-group td,html[data-theme=light] .technician-detail-card .data-table td{border-color:#d7e0e9!important}html[data-theme=light] .job-service-footer,html[data-theme=light] .job-service-footer .total,html[data-theme=light] .job-service-footer dd,html[data-theme=light] .job-service-footer dt,html[data-theme=light] .job-service-row,html[data-theme=light] .job-service-row b,html[data-theme=light] .job-service-row small,html[data-theme=light] .service-card{color:#263446!important}html[data-theme=light] .job-service-footer .total{border-color:#c7d2de!important;color:#172333!important}html[data-theme=light] .job-information-grid dt{color:#657487!important}html[data-theme=light] .job-information-grid dd{color:#263446!important}html[data-theme=light] .job-quantity{background:#e4ebf2;color:#435266}html[data-theme=light] .panel .divide-y>*{border-color:#dbe3eb!important}html[data-theme=light] .photo-gallery-scroll{scrollbar-color:#aab8c7 transparent}html[data-theme=light] .photo-gallery-scroll::-webkit-scrollbar-thumb{background:#aab8c7}html[data-theme=light] .dispatch-drag-preview{box-shadow:0 18px 42px rgb(45 62 80/.24)}html[data-theme=light] .dispatch-drag-preview[data-job-tone=progress]{background:linear-gradient(145deg,#e6f5fe,#f7fbfe)!important;color:#17384b}html[data-theme=light] .dispatch-drag-preview[data-job-tone=completed]{background:linear-gradient(145deg,#e4f8ee,#f8fcfa)!important;color:#174330}html[data-theme=light] .dispatch-drag-preview[data-job-tone=upcoming],html[data-theme=light] .dispatch-drag-preview[data-pool=unassigned]{background:linear-gradient(145deg,#fff4dc,#fffaf0)!important;color:#4d3715}html[data-theme=light] .dispatch-drag-preview[data-job-tone=scheduled]{background:linear-gradient(145deg,#eef1f5,#fbfcfd)!important;color:#38485a}html[data-theme=light] .dispatch-drag-preview[data-pool=draft]{background:linear-gradient(145deg,#f2eafe,#fbf9ff)!important;color:#3f285d}@media (max-width:1000px){.job-edit-overlay{left:76px}}@media (max-width:650px){.job-edit-overlay,html[data-navigation=compact] .job-edit-overlay{top:64px;left:0}}.dashboard-operations-grid{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));grid-template-rows:minmax(250px,.8fr) minmax(360px,1.2fr);gap:12px;min-height:0;flex:1;padding-bottom:2px}.dashboard-operations-left{grid-column:1/span 13;min-height:0}.dashboard-operations-left .dashboard-schedule-card{height:100%}.dashboard-activity-card{grid-column:14/span 7;grid-row:1}.dashboard-map-card{grid-column:1/span 15;grid-row:2}.dashboard-job-panel{grid-column:16/span 5;grid-row:2}.dashboard-activity-card,.dashboard-job-panel,.dashboard-map-card,.dashboard-schedule-card{min-height:0;overflow:hidden}.dashboard-activity-list,.dashboard-schedule-list{min-height:0;height:100%;overflow-y:auto}.dashboard-activity-list>div{display:flex;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);font-size:12px}.dashboard-activity-list a{color:#0ba7f5;font-weight:700}.dashboard-activity-list small{flex:none;color:var(--muted)}.dashboard-activity-empty{padding:20px 16px;color:var(--muted);font-size:11px}.dashboard-schedule-card{display:flex;flex-direction:column}.dashboard-schedule-card>header{flex:none}.dashboard-schedule-list button{display:grid;width:100%;grid-template-columns:62px minmax(0,1fr) auto 16px;align-items:center;gap:9px;min-height:72px;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.dashboard-schedule-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px;border-bottom:1px solid var(--line)}.dashboard-schedule-list .dashboard-schedule-select{grid-template-columns:62px minmax(0,1fr);min-height:71px;border-bottom:0}.dashboard-schedule-arrow{display:grid;place-items:center;color:var(--text)}.dashboard-schedule-arrow:hover{color:#0ba7f5;background:rgb(11 167 245/.08)}.dashboard-schedule-row.selected{background:rgb(11 167 245/.08);box-shadow:inset 3px 0 #0ba7f5}.dashboard-schedule-job-copy>span{display:flex;align-items:center;justify-content:flex-start;gap:9px}.dashboard-schedule-job-copy>span>strong{max-width:min(66%,260px)}.dashboard-schedule-list button.selected,.dashboard-schedule-list button:hover{background:rgb(11 167 245/.08)}.dashboard-schedule-list button.selected{box-shadow:inset 3px 0 #0ba7f5}.dashboard-schedule-list button>span{min-width:0}.dashboard-schedule-list b,.dashboard-schedule-list small,.dashboard-schedule-list strong{display:block;font-size:11px}.dashboard-schedule-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.dashboard-schedule-list small{margin-top:5px;color:var(--muted)}.dashboard-schedule-list span:nth-child(2) small{display:flex;align-items:center;gap:5px}.dashboard-schedule-list .pill{padding-inline:8px;white-space:nowrap}.dashboard-map-card{display:flex;flex-direction:column}.dashboard-map-card>header{display:flex;flex:none;align-items:center;justify-content:space-between;min-height:49px;padding:10px 14px;border-bottom:1px solid var(--line)}.dashboard-map-card>header h2{display:flex;align-items:center;gap:8px}.dashboard-map-card>header>span{font-size:11px}.dashboard-map-stage{position:relative;min-height:0;flex:1;overflow:hidden}.dashboard-map-stage iframe{width:100%;height:100%;border:0;pointer-events:none;filter:saturate(.72) brightness(.72)}.dashboard-map-overlay{position:absolute;inset:0;pointer-events:none}.dashboard-job-pin,.dashboard-tech-marker{position:absolute;z-index:2;transform:translate(-50%,-50%);pointer-events:auto}.dashboard-job-pin{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#0c1b27;color:#0ba7f5;box-shadow:0 3px 12px rgb(0 0 0/.55)}.dashboard-job-pin.selected,.dashboard-job-pin:hover{color:#fff;background:#0ba7f5;transform:translate(-50%,-50%) scale(1.15)}.dashboard-job-pin>span{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);padding:4px 7px;border:1px solid rgb(11 167 245/.55);border-radius:6px;background:rgb(5 10 16/.9);color:#fff;font-size:10px;font-weight:800;white-space:nowrap}.dashboard-tech-marker{display:grid;place-items:center;width:37px;height:37px;border:3px solid #fff;border-radius:50%;background:#243347;color:#fff;font-size:10px;font-weight:800;box-shadow:0 3px 12px rgb(0 0 0/.6)}.dashboard-tech-marker.selected,.dashboard-tech-marker:hover{outline:3px solid #0ba7f5;outline-offset:2px}.dashboard-map-legend{position:absolute;left:12px;bottom:12px;display:flex;gap:14px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:rgb(5 10 16/.88);font-size:10px}.dashboard-map-legend span{display:flex;align-items:center;gap:6px}.dashboard-map-legend i{display:block;width:9px;height:9px;border-radius:50%}.dashboard-map-legend .job-dot{background:#0ba7f5}.dashboard-map-legend .tech-dot{background:#fff;border:2px solid #52647a}.dashboard-job-panel{display:flex;flex-direction:column;padding:16px}.dashboard-job-panel>h2{font-size:18px;font-weight:750}.dashboard-job-panel dl{display:grid;grid-template-columns:70px 1fr;gap:10px 8px;margin-top:14px;font-size:12px}.dashboard-job-panel dt{color:var(--muted)}.dashboard-job-description{margin-top:14px;padding:12px;font-size:12px}.dashboard-job-description p{margin-top:8px;color:var(--muted);line-height:1.55}.dashboard-job-technician{display:grid;gap:9px;margin-top:14px;font-size:12px}.dashboard-job-technician>span{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:8px}.dashboard-job-technician i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#253448;color:#fff;font-size:9px;font-style:normal}.dashboard-job-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:14px}.dashboard-tech-profile{display:flex;align-items:center;gap:12px}.dashboard-tech-profile>span{display:grid;width:58px;height:58px;flex:none;place-items:center;border:4px solid #293847;border-radius:50%;background:#172538;font-size:20px;font-weight:800}.dashboard-tech-profile h2{font-size:17px;font-weight:750}.dashboard-tech-profile p{margin:3px 0 7px;color:var(--muted);font-size:11px}.dashboard-tech-contact{display:grid;gap:8px;margin:15px 0;padding-bottom:14px;border-bottom:1px solid var(--line)}.dashboard-tech-contact p{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.dashboard-tech-contact svg{color:#0ba7f5}.dashboard-technician-panel>h3{font-size:13px;font-weight:750}.dashboard-tech-jobs{margin-top:8px;padding:0}.dashboard-tech-jobs .technician-job-row{width:100%;min-height:78px;grid-template-columns:72px minmax(0,1fr);border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.dashboard-tech-jobs .technician-job-time{padding-left:23px}.dashboard-tech-jobs .technician-job-row:hover{background:rgb(11 167 245/.07)}.dashboard-view-profile{margin-top:auto}.reports-viewport{height:100%;min-height:0;overflow:hidden;padding-bottom:0}.content-frame:has(.reports-viewport){height:100%;min-height:0}.reports-card-grid{display:grid;min-height:0;flex:1;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.reports-card-grid>section{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.reports-card-grid>section>header{flex:none}.reports-chart-total,.reports-outstanding-total{display:grid;gap:3px;padding:13px 15px 0}.reports-chart-total b,.reports-outstanding-total b{color:#0ba7f5;font-size:21px}.reports-chart-total small,.reports-outstanding-total small{color:var(--muted);font-size:11px}.reports-chart-wrap{min-height:0;flex:1;padding:9px 12px 12px}.reports-card-grid .chart{height:100%;min-height:0}.reports-donut-wrap{display:flex;flex:1;align-items:center;justify-content:center;gap:clamp(14px,2vw,28px);padding:18px}.reports-donut-wrap .pie-chart,.service-donut{width:clamp(96px,16dvh,170px);height:clamp(96px,16dvh,170px);flex:none;border-radius:50%}.service-donut{background:radial-gradient(circle,#0e151e 0 55%,transparent 56%),conic-gradient(#0ba7f5 0 48%,#00ad2e 48% 72%,#f0a92f 72% 90%,#8e42ee 90%)}.reports-chart-legend{display:grid;gap:11px;font-size:12px}.reports-chart-legend span{display:flex;align-items:center;gap:7px;white-space:nowrap}.reports-chart-legend i{width:18px;height:7px;border-radius:2px}.reports-invoice-list{display:grid;padding:8px 10px 14px}.reports-invoice-list>div{display:grid;grid-template-columns:minmax(74px,.85fr) minmax(82px,1.15fr) auto;align-items:center;gap:4px;padding:10px 0;border-bottom:1px solid var(--line);font-size:10px}.reports-invoice-list a{color:#0ba7f5;font-weight:700}.reports-invoice-list small{color:var(--muted)}.reports-invoice-list em{color:#ff6d7c;font-style:normal}.reports-invoice-balance,.reports-invoice-identity{display:grid;gap:4px}.reports-invoice-identity small{font-size:10px}.reports-invoice-balance{justify-self:start}.reports-invoice-balance b{font-size:11px}.reports-invoice-list button{justify-self:end;border:0;background:transparent;font-size:9px!important;white-space:nowrap}.reports-top-jobs{grid-column:span 2}.reports-top-jobs .table-wrap{flex:1}.reports-top-jobs .data-table td,.reports-top-jobs .data-table th{padding-inline:11px}.reports-top-jobs .data-table th:nth-child(5),.reports-top-jobs .reports-amount{text-align:right}.reports-city-chart{display:grid;min-height:0;flex:1;grid-template-columns:30px minmax(0,1fr);gap:4px;padding:14px 8px 14px 4px}.reports-city-y-axis{display:flex;height:calc(100% - 19px);flex-direction:column;justify-content:space-between;color:var(--muted);font-size:10px;text-align:right}.reports-city-bars{display:flex;min-width:0;align-items:end;gap:9px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,var(--line) 0,var(--line) 1px,transparent 1px,transparent 20%)}.reports-city-bars>div{position:relative;display:flex;height:calc(100% - 19px);min-width:0;flex:1;flex-direction:column;justify-content:flex-end;text-align:center}.reports-city-chart i{display:block;min-height:5px}.reports-city-chart small{position:absolute;top:100%;left:50%;max-width:100%;transform:translateX(-50%);overflow:hidden;margin-top:6px;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}html[data-theme=light] .dashboard-map-stage iframe{filter:saturate(.85) brightness(.98)}html[data-theme=light] .dashboard-map-legend{background:rgb(255 255 255/.92)}html[data-theme=light] .dashboard-map-legend .tech-dot{background:#253448;border-color:#fff}html[data-theme=light] .dashboard-job-pin{background:#fff;box-shadow:0 3px 12px rgb(44 62 80/.22)}html[data-theme=light] .dashboard-job-pin.selected,html[data-theme=light] .dashboard-job-pin:hover{background:#0ba7f5}html[data-theme=light] .dashboard-job-pin>span{background:rgb(255 255 255/.94);color:#172538}html[data-theme=light] .service-donut{background:radial-gradient(circle,#fff 0 55%,transparent 56%),conic-gradient(#0ba7f5 0 48%,#00ad2e 48% 72%,#f0a92f 72% 90%,#8e42ee 90%)}@media (max-width:1180px){.dashboard-operations-grid{grid-template-columns:minmax(480px,2fr) minmax(245px,1fr);overflow-y:auto}.dashboard-operations-left{grid-column:1}.dashboard-activity-card{grid-column:2}.dashboard-map-card{grid-column:1}.dashboard-job-panel{grid-column:2}}@media (max-width:850px){.dashboard-operations-grid,.reports-card-grid{grid-template-columns:1fr;overflow-y:auto}.reports-viewport{overflow-y:auto}.reports-card-grid{display:grid;flex:none;grid-template-rows:none}.reports-card-grid>section{min-height:280px}.dashboard-operations-left{min-height:640px}.dashboard-activity-card,.dashboard-job-panel,.dashboard-map-card{grid-column:auto;grid-row:auto;min-height:360px}.dashboard-map-card{min-height:560px}.reports-top-jobs{grid-column:auto}}