@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);.login-bg{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}.login-bg:before{background:radial-gradient(circle,#2563eb14 0,#0000 65%);content:"";height:500px;left:50%;pointer-events:none;position:absolute;top:-160px;transform:translateX(-50%);width:500px}.login-wrap{align-items:center;display:flex;flex-direction:column;gap:36px;max-width:360px;position:relative;width:100%}.login-brand{text-align:center}.login-logo{font-size:58px;font-weight:800;letter-spacing:-3px;line-height:1}.login-logo .l3{color:var(--blue2)}.login-logo .lc,.login-logo .lha{color:var(--white)}.login-tagline{color:var(--gray2);font-size:11px;font-weight:500;letter-spacing:3px;margin-top:8px;text-transform:uppercase}.login-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;width:100%}.login-card-title{color:var(--gray);font-size:13px;font-weight:500;letter-spacing:.5px;margin-bottom:20px;text-align:center;text-transform:uppercase}.role-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);display:flex;gap:14px;margin-bottom:8px;padding:15px;text-align:left;transition:all .15s;width:100%}.role-btn:last-child{margin-bottom:0}.role-btn:hover{background:var(--card2);border-color:var(--blue)}.role-btn:active{transform:scale(.98)}.role-icon{align-items:center;background:var(--blue-dim);border-radius:var(--radius-sm);display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;width:42px}.role-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.role-name{color:var(--white);font-size:15px;font-weight:600}.role-desc{color:var(--gray);font-size:12px}.role-arrow{color:var(--gray2);font-size:18px}.pin-header{gap:12px;margin-bottom:24px}.back-btn,.pin-header{align-items:center;display:flex}.back-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);font-size:20px;height:34px;justify-content:center;transition:all .15s;width:34px}.back-btn:hover{border-color:var(--border2);color:var(--white)}.pin-role{color:var(--white);font-size:15px;font-weight:600}.pin-sub{color:var(--gray);font-size:12px;margin-top:1px}.pin-dots{display:flex;gap:12px;justify-content:center;margin-bottom:28px}.pin-dot{border:1.5px solid var(--border2);border-radius:50%;height:13px;transition:all .12s;width:13px}.pin-dot.filled{background:var(--blue2);border-color:var(--blue2);box-shadow:0 0 8px var(--blue-glow);transform:scale(1.1)}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-5px)}60%{transform:translateX(5px)}}.pin-dots.shake .pin-dot.filled{animation:shake .35s ease;background:var(--red);border-color:var(--red);box-shadow:none}.numpad{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.num-btn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);font-family:var(--font);font-size:22px;font-weight:400;padding:19px;transition:all .1s}.num-btn:hover{background:var(--card2);border-color:var(--border2)}.num-btn:active{background:var(--border);transform:scale(.93)}.del-btn{color:var(--gray);font-size:17px}.word-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);font-size:16px;letter-spacing:2px;margin-bottom:12px;outline:none;padding:15px;transition:border-color .15s;width:100%}.word-input:focus{border-color:var(--blue2)}.word-input::placeholder{color:var(--gray2);letter-spacing:0}.verify-btn{background:var(--blue);border:none;border-radius:var(--radius);color:#fff;font-size:15px;font-weight:600;letter-spacing:.3px;padding:15px;transition:background .15s;width:100%}.verify-btn:hover{background:var(--blue2)}.login-error{color:var(--red);font-size:13px;margin-top:14px;text-align:center}.login-loading{align-items:center;display:flex;flex-direction:column;gap:14px;padding:28px 0}.login-spinner{animation:spin .7s linear infinite;border:2px solid var(--border2);border-radius:50%;border-top-color:var(--blue2);height:32px;width:32px}.login-loading-text{color:var(--gray);font-size:13px;letter-spacing:.3px}.login-hint{color:var(--gray2);font-size:12px;letter-spacing:.3px;text-align:center}.dash-layout{background:var(--bg);display:flex;flex-direction:column;height:100vh;overflow:hidden}.dash-header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:12px;height:54px;height:calc(54px + env(safe-area-inset-top));padding:max(0px,env(safe-area-inset-top)) 20px 0}.dash-logo{font-size:22px;font-weight:800;letter-spacing:-1px}.dash-logo .l3{color:var(--blue2)}.dash-logo .lc,.dash-logo .lha{color:var(--white)}.dash-header-right{align-items:center;display:flex;gap:10px;margin-left:auto}.live-indicator{align-items:center;color:var(--gray);display:flex;font-size:11px;font-weight:500;gap:5px;letter-spacing:.3px}.live-dot{animation:pulse 2s infinite;background:var(--green);border-radius:50%;height:7px;width:7px}.dash-book-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;letter-spacing:.2px;padding:7px 14px;transition:background .15s}.dash-book-btn:hover{background:var(--blue2)}.dash-logout-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);display:flex;font-size:15px;height:34px;justify-content:center;transition:all .15s;width:34px}.dash-logout-btn:hover{border-color:var(--red);color:var(--red)}.dash-tabs{-ms-overflow-style:none;background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;overflow-x:auto;padding:0 20px;scrollbar-width:none}.dash-tabs::-webkit-scrollbar{display:none}.dash-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--gray);font-size:13px;font-weight:500;letter-spacing:.2px;padding:14px 16px;transition:all .15s;white-space:nowrap}.dash-tab:hover{color:var(--white2)}.dash-tab.active{border-bottom-color:var(--blue2);color:var(--blue2)}.dash-main{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto}.tab-content{margin:0 auto;max-width:960px;padding:20px}.stat-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-bottom:18px}@media (max-width:640px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stat-label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.8px;margin-bottom:8px;text-transform:uppercase}.stat-value{font-size:34px;font-weight:700;line-height:1;margin-bottom:4px}.stat-sub{color:var(--gray2);font-size:11px}.c-muted{color:var(--gray)}.bay-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}@media (max-width:640px){.bay-grid{grid-template-columns:1fr}}.bay-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.bay-card-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.bay-card-title{font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.bay-badge{border-radius:20px;font-size:10px;font-weight:600;letter-spacing:.3px;padding:3px 9px}.bay-badge-active{background:#22c55e1f;color:var(--green)}.bay-badge-idle{background:var(--border);color:var(--gray)}.bay-job{padding:14px 16px}.bay-job-clickable{cursor:pointer}.bay-job-name{font-size:16px;font-weight:600;margin-bottom:3px;transition:color .15s}.bay-job-clickable:hover .bay-job-name{color:var(--blue2)}.expand-hint{color:var(--blue3);font-size:11px;font-weight:400;margin-left:4px}.bay-job-service{font-size:13px;margin-bottom:2px}.bay-job-vehicle{color:var(--gray);font-size:12px;margin-bottom:12px}.bay-progress-header{color:var(--gray);display:flex;font-size:11px;justify-content:space-between;margin-bottom:5px}.bay-empty{color:var(--gray);font-size:13px;padding:24px 16px;text-align:center}.bay-refresh-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;display:flex;font-size:14px;height:26px;justify-content:center;margin-left:6px;transition:all .15s;width:26px}.bay-refresh-btn:hover{border-color:var(--blue2);color:var(--blue2)}.cl-row-btn{align-items:center;background:#0000;border:none;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;display:flex;font-family:var(--font);gap:10px;padding:7px 0;text-align:left;transition:background .12s;width:100%}.cl-row-btn:last-of-type{border-bottom:none}.cl-row-btn:hover:not(:disabled):not(.cl-done){background:#ffffff08}.cl-row-btn:disabled{cursor:wait;opacity:.4}.cl-dot-circle{align-items:center;border:1.5px solid var(--border2);border-radius:50%;color:var(--white);display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:20px;justify-content:center;transition:all .15s;width:20px}.cl-dot-circle.cl-dot-done{background:var(--green);border-color:var(--green)}.cl-row-btn:hover:not(.cl-done):not(:disabled) .cl-dot-circle{border-color:var(--blue2)}.bay-close-btn{background:var(--blue-dim);border:1px solid var(--blue2);border-radius:var(--radius-sm);color:var(--blue2);cursor:pointer;font-family:var(--font);font-size:13px;font-weight:700;letter-spacing:.3px;margin-top:10px;padding:11px;transition:all .15s;width:100%}.bay-close-btn:hover:not(:disabled){background:var(--blue);color:#fff}.bay-close-btn:disabled{cursor:wait;opacity:.4}.sched-nav{gap:10px;margin-bottom:20px}.sched-nav,.sched-nav-btn{align-items:center;display:flex}.sched-nav-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-size:20px;height:36px;justify-content:center;transition:all .15s;width:36px}.sched-nav-btn:hover{border-color:var(--blue2);color:var(--blue2)}.sched-date-label{flex:1 1;font-size:16px;font-weight:600;text-align:center}.sched-today-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);font-size:13px;padding:8px 14px;transition:all .15s}.sched-today-btn:hover{border-color:var(--blue2);color:var(--blue2)}.sched-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}@media (max-width:640px){.sched-grid{grid-template-columns:1fr}}.sched-bay-title{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;text-transform:uppercase}.sched-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.sched-card.status-complete{opacity:.45}.sched-card.status-cancelled{opacity:.3}.sched-card-inner{cursor:pointer;padding:13px 14px;transition:background .15s}.sched-card-inner:hover{background:var(--card2)}.sched-card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.sched-time{color:var(--gray);font-family:var(--mono);font-size:11px}.sched-name{font-size:15px;font-weight:600;margin-bottom:2px}.sched-service{color:var(--blue2);font-size:13px;margin-bottom:2px}.sched-vehicle{color:var(--gray);font-size:12px}.sched-empty{color:var(--gray);font-size:13px;padding:20px 0;text-align:center}.search-bar{align-items:center;display:flex;margin-bottom:12px;position:relative}.search-icon{color:var(--gray);font-size:17px;left:13px;pointer-events:none;position:absolute}.search-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);font-size:15px;outline:none;padding:13px 14px 13px 40px;transition:border-color .15s;width:100%}.search-input:focus{border-color:var(--blue2)}.search-input::placeholder{color:var(--gray2)}.search-clear{background:none;border:none;color:var(--gray);font-size:13px;padding:4px;position:absolute;right:12px}.cust-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:10px}.cust-count{color:var(--gray);font-size:12px}.cust-sort-row{display:flex;gap:5px}.cust-sort-btn{background:#0000;border:1px solid var(--border);border-radius:20px;color:var(--gray);cursor:pointer;font-family:var(--font);font-size:11px;font-weight:600;letter-spacing:.3px;padding:5px 10px;transition:all .12s}.cust-sort-btn:hover{border-color:var(--border2);color:var(--white2)}.cust-sort-btn.active{background:var(--blue-dim);border-color:var(--blue2);color:var(--blue2)}.cust-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;margin-bottom:8px;padding:14px;transition:all .15s}.cust-card:hover{background:var(--card2);border-color:var(--border2)}.cust-row{gap:12px}.cust-avatar,.cust-row{align-items:center;display:flex}.cust-avatar{background:var(--blue-dim);border:1px solid var(--blue);border-radius:50%;color:var(--blue2);flex-shrink:0;font-size:15px;font-weight:700;height:42px;justify-content:center;width:42px}.cust-info{flex:1 1;min-width:0}.cust-name{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cust-meta{color:var(--gray);font-size:12px;margin-top:2px}.cust-stats{flex-shrink:0;text-align:right}.cust-spend{color:var(--blue2);font-size:15px;font-weight:700}.cust-visits{color:var(--gray);font-size:11px;margin-top:2px}.cust-detail{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.detail-row{border-bottom:1px solid var(--border);display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:var(--gray)}.detail-vehicles{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.vehicle-chip{background:var(--blue-dim);border:1px solid var(--blue);border-radius:20px;color:var(--blue2);font-size:12px;padding:4px 11px}.empty-state{color:var(--gray);font-size:14px;padding:48px 20px;text-align:center}.rev-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}@media (max-width:640px){.rev-grid{grid-template-columns:repeat(2,1fr)}}.rev-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.rev-card-highlight{background:var(--blue-dim);border-color:var(--blue)}.rev-label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.8px;margin-bottom:8px;text-transform:uppercase}.rev-value{color:var(--blue2);font-size:22px;font-weight:700}.section-title{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;text-transform:uppercase}.service-list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.service-row{align-items:center;border-bottom:1px solid var(--border);display:flex;font-size:14px;gap:8px;padding:12px 16px}.service-row:last-child{border-bottom:none}.service-name{flex:1 1;font-weight:500}.service-count{color:var(--gray);font-family:var(--mono);font-size:12px}.service-total{color:var(--blue2);font-weight:700}.gc-toolbar{display:flex;gap:10px;margin-bottom:10px}.gc-filter{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);font-size:14px;outline:none;padding:13px 12px}.gc-count{color:var(--gray);font-size:12px;margin-bottom:12px}.gc-card{padding:12px 14px}.gc-row{gap:12px;margin-bottom:6px}.gc-code{color:var(--blue2);font-size:13px;font-weight:500;min-width:80px}.gc-customer{flex:1 1;font-size:14px;font-weight:500}.gc-value{color:var(--white);font-size:15px;font-weight:700}.gc-status{border-radius:20px;font-size:10px;font-weight:600;letter-spacing:.3px;padding:3px 8px}.gc-open{background:#22c55e1f;color:var(--green)}.gc-closed-badge{background:var(--border);color:var(--gray)}.gc-dates{color:var(--gray);display:flex;font-family:var(--mono);font-size:11px;gap:16px}.gc-new-btn{align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--white2);display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.3px;margin-bottom:12px;padding:13px;transition:all .15s;width:100%}.gc-new-btn:hover{background:var(--blue-dim);border-color:var(--blue2);color:var(--blue2)}.gc-form{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:16px}.gc-form-title{border-bottom:1px solid var(--border);color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:14px;padding-bottom:12px;text-transform:uppercase}.gc-form-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}@media (max-width:480px){.gc-form-grid{grid-template-columns:1fr}}.gc-form-full{grid-column:1/-1}.gc-form-field{display:flex;flex-direction:column;gap:5px}.gc-form-field label{color:var(--gray);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.gc-form-field input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font);font-size:14px;outline:none;padding:11px 12px;transition:border-color .15s;width:100%}.gc-form-field input:focus{border-color:var(--blue2)}.gc-form-field input::placeholder{color:var(--gray2)}.gc-form-error{color:var(--red);font-size:12px;margin-top:8px}.gc-save-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font);font-size:14px;font-weight:600;letter-spacing:.2px;margin-top:14px;padding:13px;transition:background .15s;width:100%}.gc-save-btn:hover:not(:disabled){background:var(--blue2)}.gc-save-btn:disabled{cursor:wait;opacity:.4}.gc-summary{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:16px 20px}.gc-summary,.gc-summary-item{align-items:center;display:flex}.gc-summary-item{flex:1 1;flex-direction:column;gap:3px}.gc-summary-val{color:var(--white);font-size:26px;font-weight:700}.gc-summary-label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.gc-summary-divider{background:var(--border);height:32px;width:1px}.gc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:14px 16px;transition:all .2s}.gc-card.gc-closed{opacity:.45}.gc-row{justify-content:space-between;margin-bottom:12px}.gc-left,.gc-row{align-items:center;display:flex}.gc-left{gap:10px}.gc-code{color:var(--white);font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:1px}.gc-badge{border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.4px;padding:2px 8px;text-transform:uppercase}.gc-badge-open{background:#22c55e1f;color:var(--green)}.gc-badge-used{background:var(--border);color:var(--gray)}.gc-details{display:flex;flex-direction:column;gap:6px}.gc-detail-row{align-items:center;display:flex;font-size:13px;justify-content:space-between}.gc-detail-label{color:var(--gray);font-size:12px}.gc-detail-label:after{content:":";margin-right:6px}.gc-detail-val{color:var(--white2);font-weight:500}.gc-service-val{color:var(--blue2)}.gc-value-val{color:var(--white);font-size:15px;font-weight:700}.gc-toggle-btn{border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font);font-size:12px;font-weight:600;letter-spacing:.2px;padding:8px 14px;transition:all .15s;white-space:nowrap}.gc-toggle-btn:disabled{cursor:wait;opacity:.4}.gc-toggle-open{background:var(--blue-dim);border:1px solid var(--blue);color:var(--blue2)}.gc-toggle-open:hover:not(:disabled){background:var(--blue);color:#fff}.gc-toggle-closed{background:var(--surface);border:1px solid var(--border2);color:var(--gray)}.gc-toggle-closed:hover:not(:disabled){border-color:var(--blue2);color:var(--blue2)}.inv-filter-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-bottom:16px}@media (max-width:640px){.inv-filter-grid{grid-template-columns:repeat(2,1fr)}}.inv-filter-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:14px;text-align:left;transition:all .15s}.inv-filter-card:hover{background:var(--card2);border-color:var(--border2)}.inv-filter-card.active{background:var(--blue-dim);border-color:var(--blue2)}.inv-filter-label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.inv-filter-value{font-size:20px;font-weight:700;line-height:1}.inv-filter-card.active .inv-filter-value,.inv-filter-value{color:var(--blue2)}.inv-filter-sub{color:var(--gray);font-size:11px}.inv-meta{align-items:center;color:var(--gray);display:flex;font-size:12px;justify-content:space-between;margin-bottom:10px;padding:0 2px}.inv-meta span:last-child{color:var(--white2);font-size:15px;font-weight:700}.inv-list{display:flex;flex-direction:column;gap:6px}.inv-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;overflow:hidden;transition:border-color .15s}.inv-row:hover{border-color:var(--border2)}.inv-row-selected{border-color:var(--blue)}.inv-row-main{align-items:center;display:flex;gap:10px;padding:13px 14px}.inv-row-left{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.inv-so{color:var(--blue2);font-size:11px;font-weight:600;letter-spacing:.5px}.inv-customer{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inv-row-right{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:2px}.inv-total{color:var(--white);font-size:15px;font-weight:700}.inv-date{color:var(--gray);font-family:var(--mono);font-size:11px}.inv-chevron{color:var(--gray);flex-shrink:0;font-size:12px;margin-left:4px}.inv-detail{background:var(--surface);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px;padding:12px 14px}.inv-detail-row{display:flex;font-size:13px;justify-content:space-between}.inv-detail-row span:first-child{color:var(--gray)}.inv-detail-row span:last-child{color:var(--white2);font-weight:500;max-width:60%;text-align:right}.inv-detail-total{border-top:1px solid var(--border);padding-top:8px}.inv-detail-total span:last-child{color:var(--blue2);font-size:16px;font-weight:700}.inv-pdf-link{align-items:center;background:var(--blue-dim);border:1px solid var(--blue);border-radius:var(--radius-sm);color:var(--blue2);display:inline-flex;font-size:13px;font-weight:500;gap:6px;margin-top:4px;padding:8px 12px;transition:background .15s;width:fit-content}.inv-pdf-link:hover{background:var(--blue);color:#fff}.goal-wrap{margin-bottom:16px}.goal-bar-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:14px 16px;transition:border-color .15s}.goal-bar-card:hover{border-color:var(--border2)}.goal-top{align-items:center;display:flex;gap:8px;margin-bottom:10px}.goal-label{color:var(--gray);flex:1 1;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.goal-amounts{align-items:baseline;display:flex;gap:2px}.goal-current{font-size:16px;font-weight:700}.goal-sep,.goal-target{color:var(--gray);font-size:13px}.goal-pct{font-family:var(--mono);font-size:13px;font-weight:700;min-width:38px;text-align:right}.goal-bar-wrap{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.goal-bar-bg{border-radius:4px;height:6px;overflow:hidden}.goal-bar-bg,.goal-bar-green-bg{background:var(--border)}.goal-bar-fill{border-radius:4px;height:6px;transition:width .6s ease}.goal-bar-blue{background:var(--blue2)}.goal-bar-green{background:var(--green);border-radius:4px}.goal-surplus{align-items:center;background:#22c55e14;border:1px solid #22c55e40;border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin-bottom:8px;padding:8px 12px}.goal-surplus-label{color:var(--green);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.goal-surplus-amount{color:var(--green);font-family:var(--mono);font-size:15px;font-weight:700}.goal-quote{color:var(--gray);font-size:12px;font-style:italic;line-height:1.4}.goal-detail{background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);border-top:none;padding:12px 16px}.goal-detail-header{align-items:center;color:var(--gray);display:flex;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.goal-edit-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;font-family:var(--font);font-size:11px;padding:5px 10px;transition:all .12s}.goal-edit-btn:hover{border-color:var(--blue2);color:var(--blue2)}.goal-detail-row{border-bottom:1px solid var(--border);display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.goal-detail-row:last-child{border-bottom:none}.goal-detail-row span:first-child{color:var(--gray)}.goal-edit{background:var(--card);border:1px solid var(--blue);border-radius:var(--radius);margin-top:6px;padding:16px}.goal-edit-title{color:var(--blue2);font-size:13px;font-weight:700;margin-bottom:14px}.goal-edit-label{color:var(--gray);display:block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:5px;margin-top:10px;text-transform:uppercase}.goal-edit-label:first-of-type{margin-top:0}.goal-edit-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font);font-size:14px;outline:none;padding:11px 12px;transition:border-color .15s;width:100%}.goal-edit-input:focus{border-color:var(--blue2)}.goal-edit-textarea{min-height:70px;resize:none}.goal-edit-btns{display:flex;gap:8px;margin-top:14px}.goal-cancel-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);flex:1 1}.goal-cancel-btn,.goal-save-btn{cursor:pointer;font-family:var(--font);font-size:13px;padding:11px}.goal-save-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;flex:2 1;font-weight:600}.goal-save-btn:hover{background:var(--blue2)}.cal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:14px 16px}.cal-header{gap:8px;margin-bottom:12px}.cal-header,.cal-nav-btn{align-items:center;display:flex}.cal-nav-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);cursor:pointer;font-size:18px;height:32px;justify-content:center;transition:all .12s;width:32px}.cal-nav-btn:hover{border-color:var(--blue2);color:var(--blue2)}.cal-month-label{flex:1 1;font-size:15px;font-weight:600;text-align:center}.cal-day-names{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.cal-day-name{color:var(--gray);font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 0;text-align:center;text-transform:uppercase}.cal-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.cal-cell{align-items:center;aspect-ratio:1;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;gap:2px;justify-content:center;position:relative;transition:background .12s}.cal-cell:hover{background:var(--card2)}.cal-empty{cursor:default}.cal-empty:hover{background:#0000}.cal-day-num{color:var(--white2);font-size:13px;font-weight:500}.cal-today .cal-day-num{color:var(--blue2);font-weight:700}.cal-selected{background:var(--blue-dim)!important}.cal-selected .cal-day-num{color:var(--blue2);font-weight:700}.cal-dot,.cal-selected .cal-dot{background:var(--blue2)}.cal-day-header{margin-bottom:16px}.cal-day-header,.inv-week-nav{align-items:center;display:flex;gap:10px}.inv-week-nav{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:10px 14px}.inv-week-label{flex:1 1;font-size:14px;font-weight:600;text-align:center}.sched-action-row{display:flex;gap:8px;margin-top:10px}.sched-action-row .bay-close-btn{flex:2 1;margin-top:0}.sched-cancel-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;flex:1 1;font-family:var(--font);font-size:13px;font-weight:600;padding:11px;transition:all .15s}.sched-cancel-btn:hover:not(:disabled){border-color:var(--red);color:var(--red)}.sched-cancel-btn:disabled{cursor:wait;opacity:.4}.sched-edit-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;flex-shrink:0;font-family:var(--font);font-size:13px;padding:11px;transition:all .15s;width:40px}.sched-edit-btn:hover:not(:disabled){border-color:var(--blue2);color:var(--blue2)}.sched-edit-form{background:var(--surface);border-top:1px solid var(--border);padding:14px 16px}.sched-edit-title{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:12px;text-transform:uppercase}.sched-edit-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px}.sched-edit-full{grid-column:1/-1}.sched-edit-field{display:flex;flex-direction:column;gap:4px}.sched-edit-field label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.sched-edit-field input,.sched-edit-field select{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font);font-size:13px;outline:none;padding:9px 10px;transition:border-color .15s}.sched-edit-field input:focus,.sched-edit-field select:focus{border-color:var(--blue2)}.sched-save-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:600;padding:11px;transition:background .15s;width:100%}.sched-save-btn:hover:not(:disabled){background:var(--blue2)}.sched-save-btn:disabled{cursor:wait;opacity:.4}.cust-edit-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;font-family:var(--font);font-size:13px;margin-top:10px;padding:10px;transition:all .15s;width:100%}.cust-edit-btn:hover{border-color:var(--blue2);color:var(--blue2)}.cust-edit-form{padding-top:10px}.cust-edit-title{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:12px;text-transform:uppercase}.cust-edit-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px}.cust-edit-full{grid-column:1/-1}.cust-edit-field{display:flex;flex-direction:column;gap:4px}.cust-edit-field label{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.cust-edit-field input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font);font-size:13px;outline:none;padding:9px 10px}.cust-edit-field input:focus{border-color:var(--blue2)}.cust-edit-btns{display:flex;gap:8px}.cust-cancel-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);flex:1 1}.cust-cancel-btn,.cust-save-btn{cursor:pointer;font-family:var(--font);font-size:13px;padding:10px}.cust-save-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;flex:2 1;font-weight:600}.cust-save-btn:disabled{opacity:.4}.cal-dots-row{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;margin-top:1px}.cal-dot-blue{background:var(--blue2)}.cal-dot-blue,.cal-dot-green{border-radius:50%;display:inline-block;height:5px;width:5px}.cal-dot-green{background:var(--green)}.overview-all-appts{margin-top:16px}.overview-appt-row{align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:10px;justify-content:space-between;margin-bottom:6px;padding:11px 14px}.overview-appt-row.status-complete{opacity:.45}.overview-appt-row.status-cancelled{opacity:.3}.overview-appt-left{align-items:center;display:flex;flex:1 1;gap:10px;min-width:0}.overview-appt-bay{flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;width:38px}.overview-appt-name{font-size:14px;font-weight:600}.overview-appt-service{color:var(--gray);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-appt-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.overview-appt-time{color:var(--gray);font-family:var(--mono);font-size:11px}.sched-name-link{cursor:pointer;text-decoration:underline;text-decoration-color:#0000;transition:text-decoration-color .15s}.sched-name-link:hover{color:var(--blue2);text-decoration-color:var(--blue2)}.bay-status-actions{border-top:1px solid var(--border);display:flex;gap:8px;margin-top:10px;padding-top:10px}.bay-action-btn{border-radius:var(--radius-sm);cursor:pointer;flex:1 1;font-family:var(--font);font-size:12px;font-weight:600;padding:9px 10px;transition:opacity .15s}.bay-action-btn:disabled{cursor:wait;opacity:.4}.bay-checkin-btn{background:#f59e0b26;border:1px solid #f59e0b4d;color:var(--amber)}.bay-start-btn{background:#22c55e26;border:1px solid #22c55e4d;color:var(--green)}.bay-close-action-btn{background:var(--blue-dim);border:1px solid var(--blue-glow);color:var(--blue2)}.cal-dots{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;margin-top:3px}.cal-dot{border-radius:50%;flex-shrink:0;height:5px;width:5px}.cal-dot-wash{background:var(--blue2)}.cal-dot-clean{background:var(--green)}.appt-duration-banner{background:var(--blue-dim);border:1px solid var(--blue-glow);border-radius:var(--radius-sm);color:var(--gray);display:flex;flex-wrap:wrap;font-size:12px;gap:10px;margin-top:6px;padding:7px 10px}.appt-duration-banner strong{color:var(--blue2)}.appt-duration-multiday{color:var(--amber)}.overview-pending-delivery{margin-top:20px}.pending-delivery-card{align-items:center;background:var(--card);border:1px solid #f59e0b4d;border-radius:var(--radius);display:flex;gap:12px;justify-content:space-between;margin-bottom:10px;padding:14px 16px}.pending-delivery-info{flex:1 1}.pending-delivery-name{font-size:15px;font-weight:600;margin-bottom:2px}.pending-delivery-service{font-size:13px;margin-bottom:2px}.pending-delivery-vehicle{color:var(--gray);font-size:12px;margin-bottom:2px}.pending-delivery-time{color:var(--gray2);font-family:var(--mono);font-size:11px}.pending-delivery-btn{background:#f59e0b1f;border:1px solid #f59e0b66;border-radius:var(--radius-sm);color:var(--amber);flex-shrink:0;font-family:var(--font);font-size:13px;font-weight:700;padding:10px 16px;transition:all .15s;white-space:nowrap}.pending-delivery-btn:hover:not(:disabled){background:#f59e0b33}.pending-delivery-btn:disabled{cursor:wait;opacity:.4}.det-finish-wrap{margin-top:12px}.det-finish-notice{background:#22c55e14;border:1px solid #22c55e4d;border-radius:var(--radius-sm);color:var(--green);font-size:13px;font-weight:600;margin-bottom:6px;padding:10px 14px;text-align:center}.cust-sync-row{margin-bottom:12px}.sync-btn-wrap{align-items:center;display:flex;gap:12px}.sync-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--blue2);font-family:var(--font);font-size:13px;font-weight:600;padding:9px 16px;transition:all .15s}.sync-btn:hover:not(:disabled){background:var(--blue-dim);border-color:var(--blue2)}.sync-btn:disabled{cursor:wait;opacity:.5}.sync-result{color:var(--green);font-size:12px}.undo-delivery-btn{background:#ef444414;border:1px solid #ef444440;border-radius:var(--radius-sm);color:var(--red);font-family:var(--font);font-size:11px;font-weight:600;padding:4px 10px;transition:all .15s;white-space:nowrap}.undo-delivery-btn:hover:not(:disabled){background:#ef444426}.undo-delivery-btn:disabled{cursor:wait;opacity:.4}.appt-clickable{cursor:pointer}.appt-clickable:hover{background:#ffffff0a}.stat-card-active{box-shadow:0 0 0 2px var(--blue)}.bay-job-item{border-bottom:1px solid var(--border);padding:10px 0}.bay-job-item:last-child{border-bottom:none}.bay-job-item-active{background:#ffffff05;border-radius:8px;padding:10px}.det-layout{background:var(--bg);display:flex;flex-direction:column;height:100vh;overflow:hidden}.det-header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;height:54px;height:calc(54px + env(safe-area-inset-top));padding:max(0px,env(safe-area-inset-top)) 20px 0}.det-logo{font-size:22px;font-weight:800;letter-spacing:-1px}.det-logo .l3{color:var(--blue2)}.det-logo .lc,.det-logo .lha{color:var(--white)}.det-role{color:var(--gray);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.det-logout{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);display:flex;font-size:15px;height:34px;justify-content:center;margin-left:auto;transition:all .15s;width:34px}.det-logout:hover{border-color:var(--red);color:var(--red)}.det-tabs{background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;padding:0 20px}.det-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--gray);font-size:13px;font-weight:500;padding:14px 18px;transition:all .15s;white-space:nowrap}.det-tab:hover{color:var(--white2)}.det-tab.active{border-bottom-color:var(--blue2);color:var(--blue2)}.det-main{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto}.det-content{margin:0 auto;max-width:600px;padding:20px}.det-nav-row{gap:10px;margin-bottom:20px}.det-nav-btn,.det-nav-row{align-items:center;display:flex}.det-nav-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-size:20px;height:36px;justify-content:center;transition:all .15s;width:36px}.det-nav-btn:hover{border-color:var(--blue2);color:var(--blue2)}.det-date-label{flex:1 1;font-size:16px;font-weight:600;text-align:center}.det-today-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);font-size:13px;padding:8px 14px;transition:all .15s}.det-today-btn:hover{border-color:var(--blue2);color:var(--blue2)}.det-bay-section{margin-bottom:20px}.det-bay-label{font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;text-transform:uppercase}.det-bay-label.accent{color:var(--blue2)}.det-bay-label.teal{color:var(--blue3)}.det-empty{color:var(--gray);font-size:13px;padding:16px 0;text-align:center}.det-sched-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:13px 14px}.border-accent{border-left:2px solid var(--blue2)}.border-teal{border-left:2px solid var(--blue3)}.status-card-complete{opacity:.45}.status-card-cancelled{opacity:.3}.det-sched-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.det-sched-time{color:var(--gray);font-family:var(--mono);font-size:11px}.det-sched-name{font-size:15px;font-weight:600;margin-bottom:2px}.det-sched-service{font-size:13px;margin-bottom:2px}.det-sched-vehicle{color:var(--gray);font-size:12px}.det-section-title{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;text-transform:uppercase}.det-job-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);display:flex;flex-direction:column;gap:3px;margin-bottom:8px;padding:14px;position:relative;text-align:left;transition:all .15s;width:100%}.det-job-btn:hover{background:var(--card2);border-color:var(--border2)}.det-job-btn.active{background:var(--blue-dim);border-color:var(--blue2)}.det-job-name{font-size:15px;font-weight:600}.det-job-info{color:var(--gray);font-size:13px}.det-job-check{color:var(--blue2);font-size:16px;font-weight:700;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.det-vehicle-card{background:var(--card);border:1px solid var(--blue);border-radius:var(--radius);margin-bottom:4px;margin-top:4px;padding:16px}.det-vehicle-name{font-size:18px;font-weight:700;margin-bottom:4px}.det-vehicle-meta{align-items:center;color:var(--gray);display:flex;font-size:13px;gap:8px;margin-bottom:14px}.det-vehicle-dot{color:var(--border2)}.det-vehicle-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.det-vehicle-field{display:flex;flex-direction:column;gap:3px}.det-vehicle-field span{color:var(--gray);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.det-vehicle-field strong{color:var(--white);font-size:15px;font-weight:600}.det-manual-fields{display:flex;gap:8px;margin-bottom:10px}.det-manual-fields input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);flex:1 1;font-family:var(--font);font-size:14px;outline:none;padding:11px 12px;transition:border-color .15s}.det-manual-fields input:focus{border-color:var(--blue2)}.det-manual-fields input::placeholder{color:var(--gray2)}.det-manual-fields input:first-child{max-width:72px}.det-manual-btn{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font);font-size:14px;font-weight:600;letter-spacing:.2px;margin-bottom:10px;padding:13px;transition:background .15s;width:100%}.det-manual-btn:hover{background:var(--blue2)}.det-checklist-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white2);font-family:var(--font);font-size:14px;font-weight:600;letter-spacing:.2px;padding:13px;transition:all .15s;width:100%}.det-checklist-btn:hover{border-color:var(--blue2);color:var(--blue2)}.det-ai-layout{display:flex;flex-direction:column;height:100%}.det-ai-notice{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--gray);font-size:14px;line-height:1.5;margin:16px 20px 0;padding:14px 16px}.det-ai-notice strong{color:var(--blue2)}.det-ai-vehicle-badge{align-items:center;background:var(--blue-dim);border:1px solid var(--blue);border-radius:var(--radius-sm);color:var(--blue2);display:flex;font-size:13px;font-weight:600;gap:8px;margin:12px 20px 0;padding:10px 14px}.det-ai-messages{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto;padding:16px 20px}.det-ai-empty{color:var(--gray);font-size:14px;padding:40px 0;text-align:center}.det-ai-msg{display:flex}.det-ai-msg.user{justify-content:flex-end}.det-ai-msg.assistant{justify-content:flex-start}.det-ai-bubble{border-radius:16px;font-size:15px;line-height:1.55;max-width:82%;padding:12px 15px;white-space:pre-wrap}.det-ai-msg.user .det-ai-bubble{background:var(--blue);border-bottom-right-radius:4px;color:#fff}.det-ai-msg.assistant .det-ai-bubble{background:var(--card);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text)}.det-ai-typing{align-items:center;display:flex;gap:5px;padding:14px 18px!important;width:60px}.det-ai-typing span{animation:pulse 1.2s infinite;background:var(--gray);border-radius:50%;height:7px;width:7px}.det-ai-typing span:nth-child(2){animation-delay:.2s}.det-ai-typing span:nth-child(3){animation-delay:.4s}.det-ai-input-area{background:var(--surface);border-top:1px solid var(--border);gap:8px;padding:12px 16px}.det-ai-input-area,.det-voice-btn{align-items:center;display:flex;flex-shrink:0}.det-voice-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:18px;height:44px;justify-content:center;transition:all .15s;width:44px}.det-voice-btn:hover{border-color:var(--blue2)}.det-voice-btn.listening{animation:pulse-border 1s infinite;background:#ef44441f;border-color:var(--red)}.det-voice-btn.speaking{background:var(--blue-dim);border-color:var(--blue2)}@keyframes pulse-border{0%,to{box-shadow:0 0 0 0 #ef44444d}50%{box-shadow:0 0 0 5px #ef444400}}.det-ai-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);flex:1 1;font-family:var(--font);font-size:15px;outline:none;padding:12px 14px;transition:border-color .15s}.det-ai-input:focus{border-color:var(--blue2)}.det-ai-input::placeholder{color:var(--gray2)}.det-ai-input:disabled{opacity:.5}.det-ai-send{align-items:center;background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;font-size:22px;height:44px;justify-content:center;transition:background .15s;width:44px}.det-ai-send:hover:not(:disabled){background:var(--blue2)}.det-ai-send:disabled{opacity:.4}.det-cl-wrap{margin-top:16px}.det-cl-header{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:14px 16px}.det-cl-job-name{font-size:16px;font-weight:700;margin-bottom:3px}.det-cl-job-service{font-size:13px}.det-cl-progress{margin-bottom:14px}.det-cl-progress-label{color:var(--gray);display:flex;font-size:11px;font-weight:600;justify-content:space-between;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.det-cl-list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.det-cl-task{align-items:center;background:#0000;border:none;border-bottom:1px solid var(--border);color:var(--white);cursor:pointer;display:flex;font-family:var(--font);gap:14px;padding:14px 16px;text-align:left;transition:background .12s;width:100%}.det-cl-task:last-child{border-bottom:none}.det-cl-task:hover:not(:disabled):not(.done){background:var(--card2)}.det-cl-task.done{background:#0000}.det-cl-task.ticking{cursor:wait;opacity:.45}.det-cl-check{align-items:center;border:1.5px solid var(--border2);border-radius:50%;color:var(--white);display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:24px;justify-content:center;transition:all .15s;width:24px}.det-cl-check.checked{background:var(--green);border-color:var(--green);box-shadow:0 0 8px #22c55e40}.det-cl-task:hover:not(.done):not(:disabled) .det-cl-check{border-color:var(--blue2)}.det-cl-task-content{align-items:center;display:flex;flex:1 1;gap:8px;justify-content:space-between}.det-cl-task-name{font-size:14px;font-weight:500;line-height:1.4}.det-cl-task.done .det-cl-task-name{color:var(--gray);text-decoration:line-through}.det-cl-task-time{color:var(--blue3);flex-shrink:0;font-family:var(--mono);font-size:11px;white-space:nowrap}.det-cl-complete{background:#22c55e14;border:1px solid #22c55e4d;border-radius:var(--radius);color:var(--green);font-weight:600;padding:14px 16px;text-align:center}.det-cl-close-btn,.det-cl-complete{font-size:14px;letter-spacing:.2px;margin-top:12px}.det-cl-close-btn{background:var(--green);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:block;font-family:var(--font);font-weight:700;padding:13px;transition:opacity .15s;width:100%}.det-cl-close-btn:hover:not(:disabled){opacity:.88}.det-cl-close-btn:disabled{cursor:wait;opacity:.4}.det-sched-notes{background:var(--card2);border-left:2px solid var(--blue);border-radius:var(--radius-sm);color:var(--gray);font-size:12px;line-height:1.4;margin-top:5px;padding:6px 10px}.booking-layout{background:var(--bg);display:flex;flex-direction:column;min-height:100vh}.booking-header{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;gap:14px;height:54px;padding:0 20px;position:sticky;top:0;z-index:10}.booking-back,.booking-header{align-items:center;display:flex}.booking-back{background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--white);font-size:22px;height:34px;justify-content:center;transition:all .15s;width:34px}.booking-back:hover{border-color:var(--blue2);color:var(--blue2)}.booking-title{font-size:16px;font-weight:700}.booking-content{margin:0 auto;max-width:600px;padding:20px 20px 40px;width:100%}.bk-section-title{align-items:center;color:var(--gray);display:flex;font-size:11px;font-weight:700;gap:6px;letter-spacing:.8px;margin-bottom:10px;margin-top:20px;text-transform:uppercase}.bk-section-title:first-child{margin-top:0}.bk-service-count{color:var(--blue2);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none}.bk-search-wrap{margin-bottom:8px;position:relative}.bk-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--white);font-family:var(--font);font-size:15px;outline:none;padding:13px 14px;transition:border-color .15s;width:100%}.bk-input:focus{border-color:var(--blue2)}.bk-input::placeholder{color:var(--gray2)}.bk-input:disabled{cursor:not-allowed;opacity:.5}.bk-dropdown{background:var(--card2);border:1px solid var(--border2);border-radius:var(--radius);box-shadow:var(--shadow);left:0;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:20}.bk-dropdown-item{background:#0000;border:none;border-bottom:1px solid var(--border);color:var(--white);cursor:pointer;display:flex;flex-direction:column;font-family:var(--font);gap:2px;padding:12px 14px;text-align:left;transition:background .12s;width:100%}.bk-dropdown-item:last-child{border-bottom:none}.bk-dropdown-item:hover{background:var(--surface)}.bk-dd-name{font-size:14px;font-weight:600}.bk-dd-meta{color:var(--gray);font-size:12px}.bk-add-new-btn{background:#0000;border:1px dashed var(--border2);border-radius:var(--radius);color:var(--gray);cursor:pointer;font-family:var(--font);font-size:13px;font-weight:500;margin-top:6px;padding:11px 14px;text-align:center;transition:all .15s;width:100%}.bk-add-new-btn:hover{border-color:var(--blue2);color:var(--blue2)}.bk-new-cust-row{background:var(--blue-dim)!important;border-top:1px solid var(--border2)!important}.bk-new-cust-row .bk-dd-name{color:var(--blue2)!important}.bk-selected-cust{background:var(--blue-dim);border:1px solid var(--blue);border-radius:var(--radius);margin-bottom:4px;padding:12px 14px}.bk-selected-top{align-items:center;display:flex;justify-content:space-between}.bk-cust-name{color:var(--blue2);font-size:15px;font-weight:600}.bk-cust-meta{color:var(--gray);font-size:12px;margin-top:2px}.bk-cust-vehicles{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.bk-vehicle-chip{background:var(--surface);border:1px solid var(--border2);border-radius:20px;color:var(--white2);cursor:pointer;font-family:var(--font);font-size:12px;padding:5px 12px;transition:all .12s}.bk-vehicle-chip.active,.bk-vehicle-chip:hover{border-color:var(--blue2);color:var(--blue2)}.bk-vehicle-chip.active{background:var(--blue-dim)}.bk-add-vehicle-chip{border-style:dashed!important;color:var(--gray)!important}.bk-add-vehicle-chip.active,.bk-add-vehicle-chip:hover{border-color:var(--blue2)!important;color:var(--blue2)!important}.bk-add-vehicle-chip.active{background:var(--blue-dim)!important}.bk-add-vehicle-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:10px;padding:12px}.bk-add-vehicle-note{color:var(--gray2);font-size:11px;margin-top:8px}.bk-change-btn{background:#0000;border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;font-family:var(--font);font-size:12px;padding:5px 10px;transition:all .12s}.bk-change-btn:hover{border-color:var(--blue2);color:var(--blue2)}.bk-new-cust-form{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:4px;padding:14px}.bk-new-cust-header{align-items:center;color:var(--gray);display:flex;font-size:12px;font-weight:700;justify-content:space-between;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.bk-new-cust-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}@media (max-width:400px){.bk-new-cust-grid{grid-template-columns:1fr}}.bk-bay-row{display:flex;gap:10px}.bk-bay-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--gray);cursor:pointer;flex:1 1;font-family:var(--font);font-size:14px;font-weight:600;padding:13px;transition:all .12s}.bk-bay-btn:hover{border-color:var(--border2);color:var(--white2)}.bk-bay-btn.active.accent{background:var(--blue-dim);border-color:var(--blue2);color:var(--blue2)}.bk-bay-btn.active.teal{background:#60a5fa14;border-color:var(--blue3);color:var(--blue3)}.bk-service-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}@media (max-width:400px){.bk-service-grid{grid-template-columns:1fr}}.bk-service-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;display:flex;flex-direction:column;font-family:var(--font);gap:4px;padding:11px 12px;text-align:left;transition:all .12s}.bk-service-btn:hover{border-color:var(--border2);color:var(--white2)}.bk-service-btn.active{background:var(--blue-dim);border-color:var(--blue2)}.bk-service-name{color:inherit;font-size:13px;font-weight:500}.bk-service-btn.active .bk-service-name{color:var(--blue2);font-weight:600}.bk-service-dur{color:var(--gray2);font-family:var(--mono);font-size:11px}.bk-service-btn.active .bk-service-dur{color:var(--blue3)}.bk-time-allotment{background:var(--blue-dim);border:1px solid var(--blue-glow);border-radius:var(--radius);display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:12px 14px}.bk-allotment-row{align-items:center;display:flex;justify-content:space-between}.bk-allotment-label{color:var(--gray);font-size:12px}.bk-allotment-val{color:var(--blue2)}.bk-allotment-finish,.bk-allotment-val{font-family:var(--mono);font-size:13px;font-weight:700}.bk-allotment-finish{color:var(--green)}.bk-allotment-note{color:var(--amber);font-size:11px;margin-top:2px}.bk-datetime-row{margin-bottom:10px}.bk-date{max-width:200px}.bk-time-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,1fr)}@media (max-width:400px){.bk-time-grid{grid-template-columns:repeat(3,1fr)}}.bk-time-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray);cursor:pointer;font-family:var(--mono);font-size:12px;font-weight:500;padding:10px 6px;text-align:center;transition:all .12s}.bk-time-btn:hover{border-color:var(--border2);color:var(--white2)}.bk-time-btn.active{background:var(--blue-dim);border-color:var(--blue2);color:var(--blue2);font-weight:600}.bk-textarea{min-height:80px;resize:none}.bk-error{background:#ef444414;border:1px solid #ef444433;border-radius:var(--radius-sm);color:var(--red);font-size:13px;margin-bottom:4px;margin-top:12px;padding:10px 14px}.bk-submit{background:var(--blue);border:none;border-radius:var(--radius);color:var(--white);font-family:var(--font);font-size:15px;font-weight:700;letter-spacing:.2px;margin-top:20px;padding:15px;transition:background .15s;width:100%}.bk-submit:hover:not(:disabled){background:var(--blue2)}.bk-submit:disabled{cursor:wait;opacity:.4}.bypass-card{align-items:center;background:var(--card);border:1px solid #ef44444d;border-radius:var(--radius);display:flex;flex-direction:column;gap:12px;margin-top:20px;padding:28px 20px;text-align:center}.bypass-icon{font-size:36px}.bypass-title{color:var(--red);font-size:18px;font-weight:700}.bypass-reason{background:#ef444414;border:1px solid #ef444426;border-radius:var(--radius-sm);color:var(--white2);font-size:13px;line-height:1.6;padding:10px 14px;text-align:left;width:100%}.bypass-desc{color:var(--gray);font-size:13px}.bypass-input{font-size:18px!important;letter-spacing:4px;text-align:center}.bypass-btns{gap:10px;margin-top:4px;width:100%}.booking-success,.bypass-btns{align-items:center;display:flex}.booking-success{flex:1 1;flex-direction:column;gap:12px;justify-content:center;padding:40px}.booking-success-icon{color:var(--green);font-size:48px}.booking-success-title{font-size:22px;font-weight:700}.booking-success-sub{color:var(--gray);font-size:14px}:root{--bg:#000;--bg2:#080808;--surface:#0e0e0e;--card:#141414;--card2:#1a1a1a;--border:#222;--border2:#2e2e2e;--blue:#2563eb;--blue2:#3b82f6;--blue3:#60a5fa;--blue-dim:#2563eb1f;--blue-glow:#2563eb40;--white:#fff;--white2:#f0f0f0;--gray:#888;--gray2:#555;--gray3:#333;--accent:var(--blue);--accent2:var(--blue2);--text:var(--white);--text2:var(--white2);--muted:var(--gray);--muted2:var(--gray2);--green:#22c55e;--amber:#f59e0b;--red:#ef4444;--teal:var(--blue2);--font:"Inter",sans-serif;--mono:"JetBrains Mono",monospace;--radius:10px;--radius-sm:6px;--radius-lg:14px;--shadow:0 8px 32px #0009;--shadow-sm:0 2px 8px #0006}*{-webkit-tap-highlight-color:transparent;box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;background:var(--bg);color:#fff;color:var(--text);font-family:Inter,sans-serif;font-family:var(--font);font-size:16px;line-height:1.5}#root,body,html{height:100%}button{cursor:pointer}button,input,select,textarea{font-family:Inter,sans-serif;font-family:var(--font)}a{color:#3b82f6;color:var(--blue2);text-decoration:none}::-webkit-scrollbar{height:3px;width:3px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#2e2e2e;background:var(--border2);border-radius:2px}.brand-logo{font-size:inherit;font-weight:800;letter-spacing:-1px;line-height:1}.brand-logo .brand-3{color:#3b82f6;color:var(--blue2)}.brand-logo .brand-c,.brand-logo .brand-ha{color:#fff;color:var(--white)}.text-muted{color:#888;color:var(--muted)}.text-blue{color:#3b82f6;color:var(--blue2)}.text-white{color:#fff;color:var(--white)}.font-mono{font-family:JetBrains Mono,monospace;font-family:var(--mono)}.c-accent{color:#3b82f6;color:var(--blue2)}.c-teal{color:#60a5fa;color:var(--blue3)}.c-green{color:#22c55e;color:var(--green)}.c-amber{color:#f59e0b;color:var(--amber)}.c-muted{color:#888;color:var(--muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade{animation:fadeIn .25s ease forwards}.skeleton{animation:shimmer 1.4s infinite;background:linear-gradient(90deg,#141414 25%,#1a1a1a 50%,#141414 75%);background:linear-gradient(90deg,var(--card) 25%,var(--card2) 50%,var(--card) 75%);background-size:200% 100%;border-radius:6px;border-radius:var(--radius-sm)}.progress-bar-bg{background:#2e2e2e;background:var(--border2);border-radius:3px;height:4px}.progress-bar-fill{border-radius:3px;height:4px;transition:width .4s ease}.bg-accent{background:#3b82f6;background:var(--blue2)}.bg-teal{background:#60a5fa;background:var(--blue3)}.bg-green{background:#22c55e;background:var(--green)}.status-pill{border-radius:20px;font-size:10px;font-weight:600;letter-spacing:.3px;padding:3px 8px;white-space:nowrap}.status-scheduled{background:#2563eb1f;background:var(--blue-dim);color:#3b82f6;color:var(--blue2)}.status-checked_in{background:#f59e0b1f;color:#f59e0b;color:var(--amber)}.status-in_progress{background:#22c55e1f;color:#22c55e;color:var(--green)}.status-complete{background:#ffffff14;color:#888;color:var(--gray)}.status-cancelled{background:#ef44441f;color:#ef4444;color:var(--red)}.checklist-expand{border-top:1px solid #222;border-top:1px solid var(--border);margin-top:10px;padding:10px 0 2px}.cl-row{align-items:center;border-bottom:1px solid #222;border-bottom:1px solid var(--border);display:flex;gap:10px;padding:6px 0}.cl-row:last-child{border-bottom:none}.cl-row.cl-done{opacity:.45}.cl-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.cl-dot-done{background:#22c55e;background:var(--green)}.cl-dot-pending{background:#2e2e2e;background:var(--border2)}.cl-name{flex:1 1;font-size:13px}.cl-row.cl-done .cl-name{text-decoration:line-through}.cl-time{color:#60a5fa;color:var(--blue3);font-size:11px;white-space:nowrap}
/*# sourceMappingURL=main.39728d5a.css.map*/