@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);.auth-container{align-items:center;background:#f5f5f7;display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.auth-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:0}.floating-dots{height:100%;position:relative;width:100%}.dot{animation:float 10s ease-in-out infinite;background:#0000001a;border-radius:50%;height:4px;position:absolute;width:4px}.auth-card{animation:slideUp .6s ease-out;background:#fff;border-radius:24px;box-shadow:0 20px 60px #00000014;max-width:440px;padding:48px;position:relative;width:100%;z-index:1}.auth-logo{display:flex;justify-content:center;margin-bottom:32px}.logo-icon{animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.auth-header{margin-bottom:32px;text-align:center}.auth-header h1{color:#1a1a1a;font-size:28px;font-weight:700;margin:0 0 8px}.auth-header p{color:#6b7280;font-size:14px;margin:0}.auth-form{margin-bottom:24px}.form-group label{color:#374151;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#1a1a1a;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ff7a1a;box-shadow:0 0 0 3px #ff7a1a1a;outline:none}.form-group input::placeholder{color:#9ca3af}.password-input-wrapper{position:relative}.password-toggle{background:none;border:none;cursor:pointer;font-size:18px;opacity:.5;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:opacity .2s}.password-toggle:hover{opacity:1}.auth-submit-btn{background:#1a1a1a;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:16px;padding:14px 24px;transition:all .3s ease;width:100%}.auth-submit-btn:hover{background:#2b2b2b;box-shadow:0 8px 20px #00000026;transform:translateY(-2px)}.auth-submit-btn:active{transform:translateY(0)}.auth-link{margin-bottom:24px;text-align:center}.auth-link a{color:#1a1a1a;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.auth-link a:hover{color:#ff7a1a}.auth-divider{margin:24px 0;position:relative;text-align:center}.auth-divider:before{background:#e5e7eb;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.auth-divider span{background:#fff;color:#6b7280;font-size:13px;padding:0 16px;position:relative}.auth-secondary-btn{background:#fff;border:2px solid #e5e7eb;border-radius:12px;color:#1a1a1a;cursor:pointer;display:block;font-size:15px;font-weight:600;padding:14px 24px;text-align:center;text-decoration:none;transition:all .2s ease;width:100%}.auth-secondary-btn:hover{border-color:#ff7a1a;color:#ff7a1a;transform:translateY(-2px)}.auth-footer{bottom:32px;left:0;position:absolute;right:0;text-align:center;z-index:1}.auth-footer p{color:#6b7280;font-size:12px;margin:0}.auth-footer a{color:#1a1a1a;text-decoration:underline}.auth-footer a:hover{color:#ff7a1a}.signup-container{background:#fff;display:flex;padding:0}.signup-form-side{flex:1 1;max-height:100vh;overflow-y:auto;padding:48px 64px}.signup-content{margin:0 auto;max-width:600px}.signup-logo{align-items:center;display:flex;gap:12px;margin-bottom:40px}.signup-logo span{color:#1a1a1a;font-size:20px;font-weight:700}.signup-header{margin-bottom:32px}.signup-header h1{color:#1a1a1a;font-size:32px;font-weight:700;margin:0 0 8px}.signup-header p{color:#6b7280;font-size:15px;margin:0 0 16px}.progress-badge{align-items:center;background:#f0f9ff;border:1px solid #bfdbfe;border-radius:20px;color:#1e40af;display:inline-flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px}.progress-bar{margin-bottom:40px}.progress-fill{background:linear-gradient(90deg,#ff7a1a,#ff9a4a);transition:width .5s ease}.profile-upload-section{margin-bottom:32px}.profile-upload-label h3{color:#1a1a1a;font-size:16px;font-weight:600;margin:0 0 4px}.profile-upload-label p{color:#6b7280;font-size:13px;margin:0 0 16px}.profile-upload-area{align-items:center;display:flex;gap:20px}.profile-preview{align-items:center;background:#f3f4f6;border-radius:12px;display:flex;height:80px;justify-content:center;overflow:hidden;width:80px}.profile-preview img{height:100%;object-fit:cover;width:100%}.profile-placeholder{color:#9ca3af}.upload-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.upload-btn:hover{border-color:#ff7a1a;color:#ff7a1a}.upload-btn svg{height:16px;width:16px}.form-row{margin-bottom:20px}.optional{font-weight:400}.char-count,.optional{color:#9ca3af;font-size:12px}.char-count{margin-top:4px;text-align:right}.form-actions{display:flex;gap:16px;margin-top:40px}.btn-secondary{align-items:center;border-radius:10px;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:14px;font-weight:500;justify-content:center;padding:12px 24px;text-decoration:none}.btn-secondary:hover{border-color:#d1d5db}.btn-primary{background:#3b82f6;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-primary:hover{background:#2563eb;box-shadow:0 8px 20px #3b82f64d}.signup-preview-side{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex:0 0 500px;justify-content:center;overflow:hidden;padding:48px;position:relative}.signup-preview-side:before{background:#ffffff1a;border-radius:50%;content:"";filter:blur(60px);height:600px;position:absolute;right:-20%;top:-50%;width:600px}.preview-card-wrapper{animation:float 6s ease-in-out infinite;position:relative;z-index:1}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.preview-card{background:#fff;border-radius:24px;box-shadow:0 30px 60px #0000004d;overflow:hidden;width:320px}.preview-card-header{display:flex;justify-content:center;padding:16px}.card-handle{background:#3b82f6;border-radius:3px;height:5px;width:60px}.preview-card-content{padding:24px}.preview-profile-image{align-items:center;background:#f3f4f6;border-radius:12px;display:flex;height:80px;justify-content:center;margin-bottom:16px;overflow:hidden;width:80px}.preview-profile-image img{height:100%;object-fit:cover;width:100%}.preview-placeholder{color:#d1d5db}.preview-qr{height:60px;position:absolute;right:24px;top:80px;width:60px}.qr-placeholder{background:#1a1a1a;border-radius:8px;height:100%;padding:8px;width:100%}.qr-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(3,1fr);height:100%}.qr-cell{background:#fff;border-radius:2px}.preview-info{margin-bottom:20px}.preview-info h3{color:#1a1a1a;font-size:18px;font-weight:700;margin:0 0 4px}.preview-username{color:#6b7280;font-size:13px;margin:0 0 8px}.preview-email{color:#374151;font-size:13px;margin:0 0 4px}.preview-contact{color:#6b7280;font-size:12px;margin:0}.preview-about{border-top:1px solid #f3f4f6;margin-bottom:20px;padding-top:20px}.preview-about h4{color:#1a1a1a;font-size:13px;font-weight:600;margin:0 0 8px}.preview-about p{color:#6b7280;font-size:13px;line-height:1.6;margin:0}.preview-company{border-top:1px solid #f3f4f6;padding-top:16px}.preview-role{color:#6b7280;font-size:12px;margin:0 0 8px}.company-badge{align-items:center;background:#f9fafb;border-radius:8px;color:#374151;display:inline-flex;font-size:13px;font-weight:500;gap:8px;padding:6px 12px}.company-badge svg{height:20px;width:20px}@media (max-width:1024px){.signup-preview-side{display:none}.signup-form-side{flex:1 1}}@media (max-width:768px){.auth-card{margin:20px}.auth-card,.signup-form-side{padding:32px 24px}.form-row{grid-template-columns:1fr}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/* ! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.-bottom-4{bottom:-1rem}.-bottom-8{bottom:-2rem}.-left-8{left:-2rem}.-right-1{right:-.25rem}.-right-8{right:-2rem}.-top-1{top:-.25rem}.-top-4{top:-1rem}.-top-8{top:-2rem}.right-0{right:0}.top-12{top:3rem}.z-10{z-index:10}.z-50{z-index:50}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[600px\]{height:600px}.h-full{height:100%}.max-h-96{max-height:24rem}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-96{width:24rem}.w-full{width:100%}.min-w-0{min-width:0}.max-w-3xl{max-width:48rem}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.-rotate-3{--tw-rotate:-3deg}.-rotate-3,.-rotate-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-6{--tw-rotate:-6deg}.rotate-3{--tw-rotate:3deg}.rotate-3,.rotate-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-6{--tw-rotate:6deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:#f9fafb;border-color:rgb(249 250 251/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[2\.5rem\]{border-radius:2.5rem}.rounded-\[3rem\]{border-radius:3rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-orange-500{--tw-border-opacity:1;border-color:#ff7a1a;border-color:rgb(255 122 26/var(--tw-border-opacity,1))}.border-orange-600{--tw-border-opacity:1;border-color:#ff5a00;border-color:rgb(255 90 0/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:#ffedd5;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:#fff7ed;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-50\/30{background-color:#fff7ed4d}.bg-orange-500{--tw-bg-opacity:1;background-color:#ff7a1a;background-color:rgb(255 122 26/var(--tw-bg-opacity,1))}.bg-orange-600{--tw-bg-opacity:1;background-color:#ff5a00;background-color:rgb(255 90 0/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:#f3e8ff;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-500{--tw-bg-opacity:1;background-color:#a855f7;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-100{--tw-bg-opacity:1;background-color:#fef9c3;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-gray-50{--tw-gradient-from:#f9fafb var(--tw-gradient-from-position);--tw-gradient-to:#f9fafb00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.object-cover{object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:#d1d5db;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-orange-500{--tw-text-opacity:1;color:#ff7a1a;color:rgb(255 122 26/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:#ff5a00;color:rgb(255 90 0/var(--tw-text-opacity,1))}.text-purple-500{--tw-text-opacity:1;color:#a855f7;color:rgb(168 85 247/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:#9333ea;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:#6b21a8;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:#f87171;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-900{--tw-text-opacity:1;color:#7f1d1d;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-500{--tw-text-opacity:1;color:#eab308;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:#ca8a04;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:#854d0e;color:rgb(133 77 14/var(--tw-text-opacity,1))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg-app:#000;--panel-bg:#fff;--sidebar-bg:#000;--glass-bg:#ffffffb3;--glass-border:#00000014;--glass-highlight:#ffffffe6;--border:#e5e7eb;--border-light:#f3f4f6;--text-primary:#111827;--text-muted:#6b7280;--text-sidebar:#fff;--text-sidebar-muted:#9ca3af;--muted-2:#9ca3af;--primary:#ff7a1a;--primary-gradient:linear-gradient(135deg,#ff7a1a,#ff5a00);--success:#16a34a;--danger:#dc2626;--shadow:#0000000d;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 10px 30px #0000001f;--shadow-glow:0 4px 12px #ff7a1a4d;--font-base:14px;--font-sm:12px;--font-medium:14px;--font-lg:16px;--font-xl:20px;--backdrop-filter:blur(20px) saturate(180%)}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.details-drawer{animation:slideInRight .3s ease-in-out}.drawer-overlay{animation:fadeIn .3s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#111827;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;font-size:var(--font-base);font-weight:400;line-height:20px;overflow:hidden}.app-container,body{background-color:#000;background-color:var(--bg-app)}.app-container,.sidebar{display:flex;height:100vh}.sidebar{background:#000;background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;justify-content:space-between;width:260px}.sidebar-header{padding:24px 24px 16px}.sidebar-logo{align-items:center;display:flex;margin-bottom:8px}.sidebar-nav{flex:1 1;padding:24px 16px}.sidebar-footer{border-top:1px solid #333;margin-top:auto;padding:16px}.nav-item{align-items:center;border-radius:8px;color:#9ca3af;color:var(--text-sidebar-muted);display:flex;font-size:14px;font-size:var(--font-base);font-weight:500;height:48px;line-height:20px;margin-bottom:4px;padding:0 16px;position:relative;text-decoration:none;transition:all .2s ease}.nav-item:hover{background-color:#1a1a1a;color:#fff;color:var(--text-sidebar)}.nav-item.active{background-color:#1a1a1a;color:#ff7a1a;color:var(--primary)}.nav-item.active:before{background:#ff7a1a;background:var(--primary);border-radius:0 4px 4px 0;content:"";height:24px;left:-16px;position:absolute;top:50%;transform:translateY(-50%);width:4px}.nav-item svg{height:20px;margin-right:12px;width:20px}.nav-section{margin-bottom:32px}.nav-section:last-child{margin-bottom:0}.admin-section{margin-bottom:16px;margin-top:auto}.nav-group{margin-bottom:24px}.nav-group:last-child{margin-bottom:0}.nav-group-header{align-items:center;background:none;border:none;cursor:default;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px 16px;text-align:left;width:100%}.nav-group-header.collapsible{border-radius:6px;cursor:pointer;transition:background-color .2s ease}.nav-group-header.collapsible:hover{background-color:#1a1a1a}.nav-group-title{color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.nav-group-items{display:flex;flex-direction:column}.nav-badge{background:#ff7a1a;background:var(--primary);border-radius:10px;color:#fff;font-size:10px;font-weight:600;margin-left:auto;min-width:18px;padding:2px 6px;text-align:center}.status-badge{border-radius:6px;min-width:80px;padding:4px 8px;text-align:center}.status-success{background:#dcfce7;color:#166534}.status-warning{background:#fef3c7;color:#92400e}.status-danger{background:#fee2e2;color:#991b1b}.status-info{background:#dbeafe;color:#1e40af}.status-neutral{background:#f3f4f6;color:#374151}.kpi-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:32px}.kpi-card{border:1px solid #00000014;border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);overflow:hidden;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.kpi-card:before{background:linear-gradient(90deg,#0000,#ffffffe6,#0000);content:"";height:1px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.kpi-card:hover{border-color:#ff7a1a33;box-shadow:0 10px 30px #0000001f;box-shadow:var(--shadow-lg);cursor:pointer;transform:translateY(-4px)}.kpi-card:hover:before{opacity:1}.clickable-kpi:active{transform:translateY(-2px)}.kpi-header{justify-content:space-between;margin-bottom:16px}.kpi-header,.kpi-icon{align-items:center;display:flex}.kpi-icon{border-radius:12px;height:48px;justify-content:center;width:48px}.kpi-icon-blue{background:#eff6ff;color:#2563eb}.kpi-icon-green{background:#f0fdf4;color:#16a34a}.kpi-icon-orange{background:#fff7ed;color:#ea580c}.kpi-icon-purple{background:#faf5ff;color:#9333ea}.kpi-icon-red{background:#fef2f2;color:#dc2626}.kpi-trend{align-items:center;border-radius:6px;display:flex;font-size:12px;font-weight:600;gap:4px;padding:4px 8px}.trend-up{background:#dcfce7;color:#166534}.trend-down{background:#fee2e2;color:#991b1b}.trend-neutral{background:#f3f4f6;color:#6b7280}.kpi-value{font-size:32px;font-weight:700;line-height:1}.kpi-title,.kpi-value{color:#111827;color:var(--text-primary);margin-bottom:4px}.kpi-title{font-size:14px;font-weight:600}.kpi-subtitle{color:#6b7280;color:var(--text-muted);font-size:12px}.dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.dashboard-card{background:#fff;border:1px solid #00000014;border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);overflow:hidden}.engineer-card{grid-column:span 2}.card-header{align-items:center;background:#ffffff80;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px 24px}.card-title{color:#111827;color:var(--text-primary);font-size:16px;font-weight:600}.card-subtitle{color:#6b7280;color:var(--text-muted);font-size:12px;font-weight:400}.card-content{padding:24px}.btn-sm{font-size:12px;height:32px;padding:0 12px}.job-list{display:flex;flex-direction:column;gap:16px}.job-item{background:#f9fafb;gap:12px;padding:16px}.job-icon,.job-item{align-items:center;border-radius:8px;display:flex}.job-icon{background:#fff;background:var(--panel-bg);color:#6b7280;color:var(--text-muted);height:40px;justify-content:center;width:40px}.job-details{flex:1 1}.job-number{font-size:14px;font-weight:600}.job-customer,.job-number{color:#111827;color:var(--text-primary);margin-bottom:2px}.job-customer{font-size:13px}.job-type{color:#6b7280;color:var(--text-muted);font-size:12px}.job-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.job-time{color:#6b7280;color:var(--text-muted);font-size:12px}.financial-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.stat-item{text-align:center}.stat-label{color:#6b7280;color:var(--text-muted);font-size:12px;margin-bottom:4px}.stat-value{font-size:18px;font-weight:700}.chart-placeholder{align-items:end;display:flex;gap:8px;height:80px;justify-content:space-between}.chart-bar{background:#ff7a1a;background:var(--primary);border-radius:4px 4px 0 0;opacity:.7;transition:opacity .2s ease}.engineer-table{display:flex;flex-direction:column;gap:12px}.engineer-header{border-bottom:1px solid #f3f4f6;color:#6b7280;color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase}.engineer-header,.engineer-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 1fr;padding:12px 0}.engineer-row{align-items:center}.engineer-info{gap:8px}.engineer-name{font-weight:500}.engineer-completed,.engineer-jobs{color:#111827;color:var(--text-primary);font-size:14px;font-weight:600}.activity-feed{display:flex;flex-direction:column;gap:16px}.activity-item{align-items:flex-start;display:flex;gap:12px}.activity-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.activity-invoice{background:#fff7ed;color:#ea580c}.activity-job{background:#eff6ff;color:#2563eb}.activity-certificate{background:#f0fdf4;color:#16a34a}.activity-expense{background:#faf5ff;color:#9333ea}.activity-content{flex:1 1}.activity-message{color:#111827;color:var(--text-primary);font-size:14px;margin-bottom:2px}.activity-time{color:#6b7280;color:var(--text-muted);font-size:12px}.compliance-stats{grid-gap:16px;display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.compliance-number{margin-bottom:4px}.compliance-label{color:var(--text-muted);font-size:12px}.alert-item{align-items:center;background:#fef3c7;color:#92400e;font-size:13px;gap:8px}.quick-actions{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.quick-action-btn{color:#111827;color:var(--text-primary);font-size:13px;padding:20px}.quick-action-btn:hover{background:#ff7a1a;background:var(--primary);border-color:var(--primary);color:#fff}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000004d;padding:16px;z-index:50}.modal-container{background:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:720px;overflow:hidden;position:relative;width:100%}.multi-step-modal{max-width:800px}.modal-close-btn{background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;padding:8px;position:absolute;right:20px;top:20px;transition:all .2s ease;z-index:10}.modal-close-btn:hover{background:#f3f4f6;color:#374151}.modal-header{align-items:flex-start;margin-bottom:0;padding:32px 32px 24px}.modal-header-content{flex:1 1}.modal-title{align-items:center;color:#111827;display:flex;font-size:18px;font-weight:600;gap:12px;margin-bottom:4px}.modal-subtitle{color:#6b7280;font-size:14px}.modal-status{margin-top:4px}.modal-body{flex:1 1;min-height:0;padding:24px 32px 0}.modal-footer{border-top:1px solid #f3f4f6;margin-top:24px;padding:24px 32px 32px}.footer-actions{display:flex;gap:12px;justify-content:flex-end}.modal-content-wrapper{display:flex;gap:32px;min-height:400px}.step-indicator-sidebar{border-right:1px solid #e5e7eb;flex-shrink:0;padding:24px 24px 24px 0;width:200px}.step-item{align-items:flex-start;display:flex;gap:12px;margin-bottom:32px;position:relative}.step-item:last-child{margin-bottom:0}.step-dot{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:12px;justify-content:center;position:relative;transition:all .2s ease;width:12px;z-index:2}.step-item.inactive .step-dot{background:#e5e7eb;border:2px solid #e5e7eb}.step-item.active .step-dot{box-shadow:0 0 0 4px #ff6b351a}.step-item.active .step-dot,.step-item.completed .step-dot{background:#ff7a1a;background:var(--primary);border:2px solid #ff7a1a;border:2px solid var(--primary)}.step-content{flex:1 1;padding-top:0}.step-title{color:#111827;font-size:14px;font-weight:500;line-height:1.2}.step-item.inactive .step-title{color:#9ca3af}.step-item.active .step-title,.step-item.completed .step-title{color:#ff7a1a;color:var(--primary);font-weight:600}.step-connector{background:#e5e7eb;height:32px;left:6px;position:absolute;top:12px;width:2px;z-index:1}.step-item.active .step-connector,.step-item.completed .step-connector{background:#ff7a1a;background:var(--primary)}.step-content-area{flex:1 1;min-height:400px;padding-left:8px}.btn{border-radius:8px;font-weight:500;padding:8px 16px}.btn-ghost{background:#0000;border:none;color:#9ca3af}.btn-ghost:hover{color:#374151}.btn-secondary{background:#fff;color:#374151;transition:all .2s}.btn-secondary:hover{background:#f9fafb;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,#ff7a1a,#ff5a00);background:var(--primary-gradient);border:none;box-shadow:0 4px 12px #ff7a1a4d;box-shadow:var(--shadow-glow);overflow:hidden;position:relative}.btn-primary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-primary:hover{box-shadow:0 8px 20px #ff7a1a66;transform:translateY(-2px)}.btn-primary:hover:before{left:100%}.btn-primary:active{transform:translateY(0)}.btn-outline{background:#111;border:1px solid #111;color:#fff}.btn-outline:hover{background:#6b7280;border-color:#6b7280;color:#fff}.form-group{margin-bottom:20px}.form-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-input{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.form-input:focus{border-color:#ff7a1a;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b351a;outline:none}.form-select{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#111827;cursor:pointer;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.form-select:focus{border-color:#ff7a1a;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b351a;outline:none}.form-select option:first-child{color:#9ca3af}.form-select:invalid{color:#9ca3af}.form-textarea{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;min-height:80px;padding:10px 12px;resize:vertical;transition:border-color .2s ease;width:100%}.form-textarea:focus{border-color:#ff7a1a;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b351a;outline:none}input[type=date]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=time]:focus{border-color:#ff7a1a!important;border-color:var(--primary)!important;box-shadow:0 0 0 3px #ff6b351a!important;outline:none}.radio-option input[type=radio]:focus{box-shadow:0 0 0 3px #ff6b351a;outline:none}.radio-option input[type=radio]:checked{accent-color:#ff7a1a;accent-color:var(--primary)}input[type=checkbox]:focus{box-shadow:0 0 0 3px #ff6b351a;outline:none}input[type=checkbox]:checked{accent-color:#ff7a1a;accent-color:var(--primary)}.form-help{color:#6b7280;font-size:12px;margin-top:4px}.toast-container{display:flex;flex-direction:column;gap:12px;max-width:400px;position:fixed;right:20px;top:20px;z-index:10000}.toast{animation:slideIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;box-shadow:0 4px 12px #00000026;justify-content:space-between;min-width:300px;padding:12px 16px}.toast,.toast-content{align-items:center;display:flex}.toast-content{flex:1 1;gap:8px}.toast-message{font-size:14px;font-weight:500}.toast-close{background:none;border:none;border-radius:4px;cursor:pointer;margin-left:8px;padding:4px;transition:background-color .2s ease}.toast-error{background:#fef2f2;border:1px solid #fecaca}.toast-error,.toast-error .toast-close{color:#dc2626}.toast-error .toast-close:hover{background:#fee2e2}.toast-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.toast-success .toast-close{color:#16a34a}.toast-success .toast-close:hover{background:#dcfce7}.toast-warning{background:#fffbeb;border:1px solid #fed7aa;color:#d97706}.toast-warning .toast-close{color:#d97706}.toast-warning .toast-close:hover{background:#fef3c7}.toast-info{background:#eff6ff;border:1px solid #bfdbfe}.toast-info,.toast-info .toast-close{color:#2563eb}.toast-info .toast-close:hover{background:#dbeafe}.completion-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:1001}.completion-modal{animation:scaleIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;max-width:400px;padding:32px;text-align:center;width:100%}.completion-icon{display:flex;justify-content:center;margin-bottom:24px}.completion-spinner{align-items:center;display:flex;height:48px;justify-content:center;width:48px}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#ff7a1a;border-top:3px solid var(--primary);height:32px;width:32px}.completion-title{color:#111827;font-size:20px;font-weight:600;margin-bottom:8px}.completion-message{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:24px}.completion-actions{display:flex;gap:12px;justify-content:center}.no-sites-message{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:40px 20px;text-align:center}.no-sites-message p{color:#6b7280;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.help-widget{bottom:24px;position:fixed;right:24px;z-index:1000}.help-button{align-items:center;background:#ff7a1a;background:var(--primary);border:none;border-radius:24px;box-shadow:0 4px 12px #ff6b354d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;transition:all .2s ease}.help-button:hover{background:#e8530f;box-shadow:0 6px 16px #ff6b3566;transform:translateY(-1px)}.help-button.active{background:#e8530f}.help-popup{animation:slideUp .3s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:16px;bottom:60px;box-shadow:0 8px 24px #00000026;overflow:hidden;position:absolute;right:0;width:320px}.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:100%;padding:20px;position:relative;transition:all .3s ease}.clickable-kpi{cursor:pointer}.clickable-kpi:hover{border-color:#ff7a1a;box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.kpi-insight{color:#6b7280;font-size:11px;font-weight:500;margin-top:4px}.kpi-click-indicator{align-items:center;background:#ff7a1a1a;border-radius:50%;display:flex;height:20px;justify-content:center;opacity:0;position:absolute;right:12px;top:12px;transition:opacity .2s ease;width:20px}.clickable-kpi:hover .kpi-click-indicator{opacity:1}.kpi-click-indicator svg{color:#ff7a1a}.help-header{border-bottom:1px solid #f3f4f6;justify-content:space-between;padding:16px 20px}.help-header,.help-logo{align-items:center;display:flex}.logo-image{border-radius:4px;height:24px;width:24px}.help-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:4px;transition:all .2s ease}.help-close:hover{background:#f3f4f6;color:#374151}.help-welcome{padding:20px 20px 16px}.welcome-greeting{color:#111827;font-size:18px;font-weight:600;margin-bottom:4px}.welcome-subtitle{color:#6b7280;font-size:14px;margin:0}.help-options{padding:0 8px 8px}.help-option{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;margin-bottom:4px;padding:12px;transition:background-color .2s ease;width:100%}.help-option:hover{background:#f9fafb}.help-option:last-child{margin-bottom:0}.option-icon{align-items:center;background:#f3f4f6;border-radius:8px;color:#ff7a1a;color:var(--primary);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.option-content{display:flex;flex:1 1;flex-direction:column;gap:2px;margin-left:12px;text-align:left}.option-title{color:#111827;font-size:14px;font-weight:500;line-height:1.2}.option-description{color:#6b7280;font-size:12px;line-height:1.2}.option-arrow{color:#9ca3af;flex-shrink:0;margin-left:8px}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.help-widget{bottom:16px;right:16px}.help-popup{right:-40px;width:280px}}.chatbot-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:1001}.chatbot-container{animation:scaleIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;height:600px;max-width:400px;overflow:hidden;width:100%}.chatbot-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.chatbot-title h3{color:#111827;font-size:16px;font-weight:600;margin:0}.status-indicator{align-items:center;color:#16a34a;display:flex;font-size:12px;gap:4px}.status-indicator:before{background:#16a34a;border-radius:50%;content:"";height:6px;width:6px}.chatbot-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:4px;transition:all .2s ease}.chatbot-close:hover{background:#e5e7eb;color:#374151}.chatbot-messages{flex:1 1;gap:12px;overflow-y:auto;padding:16px}.chatbot-messages,.message{display:flex;flex-direction:column}.message{max-width:80%}.message.user{align-items:flex-end;align-self:flex-end}.message.bot{align-items:flex-start;align-self:flex-start}.message-content{border-radius:12px;font-size:14px;line-height:1.4;padding:8px 12px}.message.user .message-content{background:#ff7a1a;background:var(--primary);border-bottom-right-radius:4px;color:#fff}.message.bot .message-content{background:#f3f4f6;border-bottom-left-radius:4px;color:#111827}.message-time{color:#9ca3af;font-size:11px;margin-top:4px;padding:0 4px}.typing{background:#f3f4f6!important;padding:12px 16px!important}.typing-indicator{display:flex;gap:4px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#9ca3af;border-radius:50%;height:6px;width:6px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.chatbot-input{background:#fff;border-top:1px solid #e5e7eb;padding:16px}.input-container{align-items:flex-end;display:flex;gap:8px}.message-input{border:1px solid #e5e7eb;border-radius:20px;flex:1 1;font-size:14px;max-height:80px;outline:none;padding:8px 12px;resize:none;transition:border-color .2s ease}.message-input:focus{border-color:#ff7a1a;border-color:var(--primary)}.send-button{align-items:center;background:#ff7a1a;background:var(--primary);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.send-button:hover:not(:disabled){background:#e8530f;transform:scale(1.05)}.send-button:disabled{background:#d1d5db;cursor:not-allowed}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@media (max-width:768px){.chatbot-container{height:80vh;max-height:600px}}.chatbot-popup-content{display:flex;flex-direction:column;height:400px;max-height:400px}.chatbot-popup-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;padding:16px 20px}.back-button{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.back-button:hover{background:#e5e7eb;color:#374151}.chatbot-popup-header .chatbot-title{flex:1 1}.chatbot-popup-header .chatbot-title h3{color:#111827;font-size:16px;font-weight:600;margin:0}.status-indicator.online{color:#16a34a}.status-indicator.offline{color:#dc2626}.status-indicator.online:before{background:#16a34a}.status-indicator.offline:before{background:#dc2626}.chatbot-popup-input{background:#fff;border-top:1px solid #e5e7eb;margin-top:auto;padding:16px 20px}.chatbot-popup-content .chatbot-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:16px 20px}.docs-container{background:#fafbfc;display:flex;flex-direction:column;min-height:100vh}.docs-header{background:#fff;border-bottom:1px solid #e1e4e8;justify-content:space-between;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.docs-header,.docs-header-left{align-items:center;display:flex}.docs-header-left{gap:24px}.docs-logo{align-items:center;display:flex}.docs-logo .logo-image{border-radius:6px;height:28px;width:28px}.search-container{align-items:center;display:flex;position:relative}.search-icon{color:#6b7280;z-index:1}.search-input{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;padding:8px 12px 8px 36px;transition:all .2s ease;width:300px}.search-input:focus{background:#fff;border-color:#ff7a1a;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b351a;outline:none}.docs-header-right{align-items:center;display:flex;gap:16px}.header-btn{background:none;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s ease}.header-btn:hover{background:#f3f4f6;border-color:#9ca3af}.avatar-circle,.user-avatar{align-items:center;display:flex}.avatar-circle{background:#ff7a1a;background:var(--primary);border-radius:50%;color:#fff;font-size:14px;font-weight:500;height:32px;justify-content:center;width:32px}.docs-tabs{background:#fff;border-bottom:1px solid #e1e4e8;padding:0 24px}.tab-container{display:flex;gap:0}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;position:relative;transition:all .2s ease}.tab-button:hover{color:#374151}.tab-button.active{border-bottom-color:#ff7a1a;border-bottom-color:var(--primary);color:#ff7a1a;color:var(--primary)}.docs-main{display:flex;flex:1 1;min-height:0}.docs-sidebar{background:#fff;border-right:1px solid #e1e4e8;flex-shrink:0;overflow-y:auto;width:280px}.docs-nav{padding:24px 0}.nav-item{margin-bottom:2px}.nav-item-content{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;justify-content:space-between;padding:8px 24px;transition:all .2s ease}.nav-item-content:hover{background:#f6f8fa}.nav-item-content.active{background:#fff5f2;border-left-color:#ff7a1a;border-left-color:var(--primary);color:#ff7a1a;color:var(--primary)}.nav-item-left{align-items:center;display:flex;gap:8px}.nav-icon{color:#6b7280;height:16px;width:16px}.nav-item-content.active .nav-icon{color:#ff7a1a;color:var(--primary)}.nav-title{color:#374151;font-size:14px;font-weight:500}.nav-item-content.active .nav-title{color:#ff7a1a;color:var(--primary);font-weight:600}.nav-chevron{color:#9ca3af}.nav-children{background:#fafbfc;border-left:1px solid #e1e4e8;margin-left:24px}.nav-item.level-1 .nav-item-content{font-size:13px;padding-left:48px}.nav-item.level-1 .nav-title{font-weight:400}.docs-content{flex:1 1;min-width:0;overflow-y:auto;padding:32px 48px}.content-wrapper{max-width:800px}.breadcrumb{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:8px;margin-bottom:16px}.content-title{color:#111827;font-size:32px;font-weight:700;line-height:1.2;margin-bottom:12px}.content-description{color:#6b7280;font-size:16px;line-height:1.6;margin-bottom:32px}.content-section{margin-bottom:48px}.section-title{border-top:1px solid #e5e7eb;color:#111827;font-size:24px;font-weight:600;margin-bottom:16px;padding-top:16px}.content-section:first-child .section-title{border-top:none;padding-top:0}.section-content{color:#374151;font-size:16px;line-height:1.7;margin-bottom:24px}.code-block{background:#f6f8fa;border:1px solid #e1e4e8;border-radius:8px;margin:24px 0;overflow:hidden}.code-header{align-items:center;background:#f1f3f4;border-bottom:1px solid #e1e4e8;display:flex;justify-content:space-between;padding:12px 16px}.code-language{color:#586069;font-size:12px;font-weight:500;text-transform:uppercase}.copy-code-btn{background:none;border:1px solid #d1d5db;border-radius:4px;color:#586069;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s ease}.copy-code-btn:hover{background:#fff;border-color:#9ca3af}.code-content{background:#fff;color:#24292e;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;line-height:1.5;overflow-x:auto;padding:16px}.video-container{margin:24px 0}.video-placeholder{background:#f6f8fa;border:1px solid #e1e4e8;border-radius:8px;cursor:pointer;overflow:hidden;transition:all .2s ease}.video-placeholder:hover{border-color:#ff7a1a;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b351a}.video-thumbnail{gap:16px;padding:24px}.play-button,.video-thumbnail{align-items:center;display:flex}.play-button{background:#ff7a1a;background:var(--primary);border-radius:50%;color:#fff;flex-shrink:0;height:60px;justify-content:center;transition:all .2s ease;width:60px}.video-placeholder:hover .play-button{background:#e8530f;transform:scale(1.05)}.video-info h4{color:#111827;font-size:16px;font-weight:600;margin:0 0 4px}.video-info p{color:#6b7280;font-size:14px;margin:0}.tour-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:9998}.tour-highlight{border-radius:8px!important;box-shadow:0 0 0 4px #ff6b3566,0 0 0 2px #ff7a1a!important;box-shadow:0 0 0 4px #ff6b3566,0 0 0 2px var(--primary)!important;pointer-events:auto;position:relative!important;z-index:9999!important}.tour-highlight.sidebar{background:#0000!important}.tour-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 12px 32px #00000040;max-width:320px;min-width:280px;opacity:1;pointer-events:auto;position:fixed;visibility:visible;z-index:10000}.tour-tooltip.position-top{transform:translate(-50%,-100%)}.tour-tooltip.position-bottom{transform:translate(-50%)}.tour-tooltip.position-left{transform:translate(-100%,-50%)}.tour-tooltip.position-right{transform:translateY(-50%)}.tour-content{padding:24px}.tour-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.tour-title{color:#111827;font-size:18px;font-weight:600;line-height:1.3;margin:0}.tour-close{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;flex-shrink:0;margin-left:12px;padding:6px;transition:all .2s ease}.tour-close:hover{background:#f3f4f6;color:#374151}.tour-description{color:#374151;font-size:15px;line-height:1.6;margin:0 0 24px}.tour-footer{display:flex;flex-direction:column;gap:16px}.tour-progress{align-items:center;display:flex;gap:12px}.step-counter{color:#6b7280;font-size:12px;white-space:nowrap}.progress-bar{background:#e5e7eb;border-radius:2px;flex:1 1;height:4px;overflow:hidden}.progress-fill{background:#ff7a1a;background:var(--primary);border-radius:2px;height:100%;transition:width .3s ease}.tour-actions{gap:8px;justify-content:flex-end}.tour-actions,.tour-btn{align-items:center;display:flex}.tour-btn{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;gap:4px;padding:8px 16px;transition:all .2s ease}.tour-btn.primary{background:#ff7a1a;background:var(--primary);border-color:#ff7a1a;border-color:var(--primary);color:#fff}.tour-btn.primary:hover{background:#e8530f;border-color:#e8530f}.tour-btn.secondary{background:#fff;border-color:#d1d5db;color:#374151}.tour-btn.secondary:hover{background:#f9fafb;border-color:#9ca3af}.tour-arrow{background:#fff;border:1px solid #e5e7eb;height:12px;position:absolute;transform:rotate(45deg);width:12px}.tour-arrow.arrow-top{border-left:none;border-top:none;bottom:-6px;left:50%;margin-left:-6px}.tour-arrow.arrow-bottom{border-bottom:none;border-right:none;left:50%;margin-left:-6px;top:-6px}.tour-arrow.arrow-left{border-bottom:none;border-left:none;margin-top:-6px;right:-6px;top:50%}.tour-arrow.arrow-right{border-right:none;border-top:none;left:-6px;margin-top:-6px;top:50%}.docs-toc{background:#fff;border-left:1px solid #e1e4e8;flex-shrink:0;overflow-y:auto;padding:32px 24px;width:240px}.toc-header h3{color:#111827;font-size:14px;font-weight:600;margin-bottom:16px}.toc-content{display:flex;flex-direction:column;gap:8px}.toc-item{border-left:2px solid #0000;color:#6b7280;display:block;font-size:13px;padding:4px 0 4px 12px;text-decoration:none;transition:all .2s ease}.toc-item:hover{border-left-color:#ff7a1a;border-left-color:var(--primary);color:#ff7a1a;color:var(--primary)}@media (max-width:1200px){.docs-toc{display:none}.docs-content{padding:24px 32px}}@media (max-width:768px){.docs-sidebar{display:none}.docs-content{padding:16px 20px}.content-title{font-size:24px}.search-input{width:200px}.docs-header-right{gap:8px}.header-btn{display:none}.modal-container{margin:16px;max-width:calc(100vw - 32px)}.modal-body,.modal-footer,.modal-header{padding-left:20px;padding-right:20px}.modal-content-wrapper{flex-direction:column;gap:20px}.step-indicator-sidebar{border-bottom:1px solid #e5e7eb;border-right:none;display:flex;flex-direction:row;gap:16px;overflow-x:auto;padding-bottom:20px;padding-right:0;width:100%}.step-item{align-items:center;flex-direction:column;margin-bottom:0;min-width:80px;text-align:center}.step-connector{display:none}.step-content-area{padding-left:0}}.step-form{width:100%}.step-header{margin-bottom:24px}.step-form-title{color:#111827;font-size:20px;font-weight:600;margin-bottom:4px}.step-form-subtitle{color:#6b7280;font-size:14px}.step-form-content{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.radio-group{display:flex;flex-wrap:wrap;gap:16px}.radio-option{align-items:center;cursor:pointer;display:flex;gap:8px}.radio-option input[type=radio]{margin:0}.radio-label{font-size:14px;font-weight:500}.engineer-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.engineer-card{align-items:center;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.engineer-card:hover{border-color:#d1d5db}.engineer-card.selected{background:#fff4f0;border-color:#ff7a1a;border-color:var(--primary)}.engineer-card.disabled{cursor:not-allowed;opacity:.5}.engineer-avatar{background:#f3f4f6;color:#6b7280}.engineer-info{flex:1 1}.engineer-name{font-size:14px;margin-bottom:4px}.engineer-meta{display:flex;flex-direction:column;gap:2px}.engineer-status{border-radius:4px;font-size:12px;font-weight:500;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.status-available{background:#dcfce7;color:#166534}.status-on-site{background:#dbeafe;color:#1e40af}.status-off-duty{background:#f3f4f6;color:#6b7280}.engineer-jobs{color:#6b7280;font-size:12px}.customer-type-toggle{display:flex;gap:8px;margin-bottom:16px}.toggle-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.toggle-btn:hover{background:#f9fafb}.toggle-btn.active{background:#ff7a1a;background:var(--primary);border-color:#ff7a1a;border-color:var(--primary);color:#fff}.customer-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.customer-card{align-items:flex-start;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.customer-card:hover{border-color:#d1d5db}.customer-card.selected{background:#fff4f0;border-color:#ff7a1a;border-color:var(--primary)}.customer-avatar{align-items:center;background:#f3f4f6;border-radius:50%;color:#6b7280;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.customer-info{flex:1 1}.customer-name{color:#111827;font-size:14px;font-weight:600;margin-bottom:2px}.customer-company{color:#6b7280;font-size:13px;margin-bottom:4px}.customer-address{color:#9ca3af;font-size:12px}.review-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;padding:20px}.review-section-title{align-items:center;color:#111827;display:flex;font-size:16px;font-weight:600;margin-bottom:16px}.review-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.review-item{display:flex;flex-direction:column;gap:4px}.review-item.full-width{grid-column:1/-1}.review-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.review-value{color:#111827;font-size:14px;font-weight:500}.priority-badge{font-weight:600;text-transform:capitalize}.review-description{color:#374151;font-size:14px;line-height:1.5;margin:0}.review-notice{align-items:flex-start;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;display:flex;gap:12px;margin-top:20px;padding:16px}.notice-title{color:#92400e;font-size:14px;font-weight:600;margin:0 0 4px}.notice-text{color:#92400e;font-size:13px;margin:0}@media (max-width:768px){.customer-grid,.engineer-grid,.form-row,.review-grid{grid-template-columns:1fr}.radio-group{flex-direction:column}}.dashboard-drag-mode{position:relative}.dashboard-drag-mode:before{background:#0000000d;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.draggable-card{cursor:grab;position:relative;transition:all .2s ease}.draggable-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.draggable-card.dragging{box-shadow:0 12px 32px #0003;cursor:grabbing;opacity:.7;transform:rotate(2deg) scale(1.02);z-index:1000}.drop-zone{position:relative;transition:all .3s ease}.dashboard-card.drag-over,.drop-zone.drag-over,.kpi-cards-section.drag-over{background:#ff7a1a1a;border:2px dashed #ff7a1a;border-radius:12px;transform:scale(1.02)}.dashboard-card,.kpi-cards-section{position:relative}.dashboard-card:before,.kpi-cards-section:before{bottom:-10px;content:"";left:-10px;pointer-events:none;position:absolute;right:-10px;top:-10px;z-index:-1}.draggable-card .dashboard-card:before,.draggable-card .kpi-cards-section:before{pointer-events:auto}.card-container{position:relative;transition:all .3s ease}.card-container.preview-moving{opacity:.7;transform:scale(.95)}.preview-layout .card-container{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dashboard-drag-mode .draggable-card:not(.dragging):hover{box-shadow:0 12px 28px #00000026;transform:translateY(-4px)}.dashboard-drag-mode .dashboard-card:not(.dragging),.dashboard-drag-mode .kpi-cards-section:not(.dragging){border:2px solid #0000;transition:all .2s ease}.dashboard-drag-mode .dashboard-card:not(.dragging):hover,.dashboard-drag-mode .kpi-cards-section:not(.dragging):hover{background:#ff7a1a0d;border-color:#ff7a1a4d}.drop-zone.drag-over:before{background:#ff7a1a;border-radius:6px;color:#fff;content:"Drop here";font-size:12px;font-weight:600;left:50%;padding:8px 16px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.grid-overlay{background-image:linear-gradient(#ff7a1a1a 1px,#0000 0),linear-gradient(90deg,#ff7a1a1a 1px,#0000 0);background-size:24px 24px;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:2}.dashboard-drag-mode .grid-overlay{opacity:1}.notification-tray{animation:slideDown .2s ease-out;box-shadow:0 12px 32px #00000026;margin-top:8px;width:380px;z-index:9999}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-header{align-items:center;display:flex;justify-content:space-between}.notification-header h3{color:#111827;font-size:16px;font-weight:600;margin:0}.notification-header button{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:4px}.notification-header button:hover{background:#f3f4f6;color:#374151}.notification-list{max-height:300px}.notification-item{display:flex;gap:12px;position:relative;transition:background .2s ease}.notification-item.unread{background:#f0f9ff;border-left:3px solid #3b82f6}.notification-item.unread.urgent{background:#fef2f2;border-left-color:#dc2626}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f9fafb}.notification-content h4{color:#111827;font-size:14px;font-weight:600;margin:0 0 4px}.notification-content p{color:#6b7280;font-size:13px;margin:0 0 4px}.notification-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;font-size:14px;height:32px;justify-content:center;width:32px}.notification-icon.urgent{background:#fee2e2}.notification-icon.warning{background:#fef3c7}.notification-icon.success{background:#d1fae5}.notification-icon.info{background:#dbeafe}.notification-content{flex:1 1;min-width:0}.notification-actions{align-items:center;flex-shrink:0}.notification-btn{border:none;border-radius:6px;cursor:pointer;font-size:11px;font-weight:500;padding:6px 12px;transition:all .2s ease}.notification-btn.primary{background:#ff7a1a;color:#fff}.notification-btn.primary:hover{background:#e55a2b}.notification-btn.secondary{background:#f3f4f6;color:#6b7280}.notification-btn.secondary:hover{background:#e5e7eb;color:#374151}.notification-footer{background:#fafafa;border-top:1px solid #f3f4f6;display:flex;gap:12px;padding:12px 20px}.notification-footer-btn{background:none;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;padding:8px 12px;transition:all .2s ease}.notification-footer-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}.notification-badge{background:#dc2626;border-radius:10px;color:#fff;font-size:10px;font-weight:600;height:16px;line-height:1;min-width:16px;padding:2px 6px;position:absolute;right:-6px;top:-6px}.modal-overlay,.notification-badge{align-items:center;display:flex;justify-content:center}.modal-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.modal-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.modal-header button{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:8px}.modal-header button:hover{background:#f3f4f6;color:#374151}.modal-body{max-height:400px;overflow-y:auto;padding:24px}.setting-section{margin-bottom:32px}.setting-section:last-child{margin-bottom:0}.setting-section h3{color:#111827;font-size:16px;font-weight:600;margin:0 0 16px}.setting-item{margin-bottom:16px}.setting-label{align-items:flex-start;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px}.setting-label input[type=checkbox]{margin-top:2px}.setting-description{color:#6b7280;font-size:13px;margin:4px 0 0 24px}.modal-footer{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:24px}.main-content{background:#fff;background:var(--panel-bg);border-radius:16px 16px 0 0;box-shadow:0 4px 12px #0000000d;box-shadow:0 4px 12px var(--shadow);display:flex;flex:1 1;flex-direction:column;height:calc(100vh - 16px);margin:16px 0 0;overflow-y:auto;padding:32px 32px 0}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:32px}.page-title{color:#111827;color:var(--text-primary);font-size:20px;font-size:var(--font-xl);font-weight:700;line-height:28px;margin:0}.page-subtitle{color:#6b7280;color:var(--text-muted);font-size:14px;font-size:var(--font-base);font-weight:400;line-height:20px;margin-top:6px}.header-actions{gap:12px}.filters-bar,.header-actions{align-items:center;display:flex}.filters-bar{flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px;padding:16px 0}@media (max-width:1024px){.filters-bar{align-items:stretch;flex-direction:column;gap:12px}.filter-group{display:flex;flex-wrap:wrap;gap:8px}.filter-group .filter-select{flex:1 1;min-width:150px}}.filter-group{align-items:center;display:flex;gap:12px}.filter-select{min-width:120px;padding:8px 12px}.filter-select,.search-input{background:#fff;background:var(--panel-bg);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:8px;color:#111827;color:var(--text-primary);font-size:14px;font-size:var(--font-base);height:40px}.search-input{padding:8px 12px 8px 40px;width:320px}.search-input,.search-wrapper{position:relative}.search-icon{color:#9ca3af;color:var(--muted-2);height:16px;left:12px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:14px;font-size:var(--font-base);font-weight:600;height:40px;justify-content:center;padding:10px 16px;text-decoration:none;transition:all .2s ease}.btn-primary{background:#ff7a1a;background:var(--primary);box-shadow:0 1px 2px #0000000d;color:#fff}.btn-primary:hover{background:#e55a2b}.btn-secondary{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border);color:#111827;color:var(--text-primary)}.btn-secondary:hover{background:#f3f4f6}.btn svg{height:16px;margin-right:8px;width:16px}.table-container{background:#fff;background:var(--panel-bg);border:1px solid #f3f4f6;border-radius:12px;display:flex;flex:1 1;flex-direction:column;margin-top:16px;min-height:0}.table-wrapper{flex:1 1;min-height:0;overflow-y:auto}.transactions-table{border-collapse:collapse;width:100%}.table-header{border-bottom:1px solid #f3f4f6;height:56px}.table-header th{color:#6b7280;color:var(--text-muted);font-size:12px;font-size:var(--font-sm);font-weight:600;line-height:16px;padding:0 12px;text-align:left;text-transform:uppercase}.table-row{border-bottom:1px solid #f3f4f6;height:64px;transition:background-color .2s ease}.table-row:hover{background-color:#f8faff}.table-row td{color:#111827;color:var(--text-primary);font-size:14px;font-size:var(--font-base);font-weight:400;line-height:20px;padding:0 12px;vertical-align:middle}.col-checkbox{width:48px}.col-description{min-width:280px}.col-account{width:180px}.col-amount{text-align:right;width:140px}.col-date{width:140px}.col-payment{width:160px}.col-actions{width:56px}.transaction-description,.transaction-icon-wrapper{align-items:center;display:flex}.transaction-icon-wrapper{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:8px;height:32px;justify-content:center;margin-right:12px;width:32px}.transaction-details h4{color:#111827;color:var(--text-primary);font-size:14px;font-size:var(--font-base);font-weight:600;line-height:20px;margin:0}.transaction-details p{color:#6b7280;color:var(--text-muted);font-size:12px;font-size:var(--font-sm);font-weight:400;line-height:16px;margin:2px 0 0}.amount-positive{color:#16a34a;color:var(--success);font-weight:600}.amount-negative{color:#dc2626;color:var(--danger);font-weight:600}.payment-method{align-items:center;display:flex}.payment-icon{border-radius:50%;height:20px;margin-right:8px;width:20px}.table-checkbox{border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:4px;cursor:pointer;height:16px;width:16px}.action-menu{align-items:center;background:#0000;border:none;border-radius:6px;color:#6b7280;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.action-menu:hover{background:#f3f4f6;color:#111827;color:var(--text-primary)}.pagination{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:16px 12px}.pagination-info{color:#6b7280;color:var(--text-muted);font-size:12px;font-size:var(--font-sm)}.pagination-controls{gap:8px}.page-btn,.pagination-controls{align-items:center;display:flex}.page-btn{background:#fff;background:var(--panel-bg);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:6px;color:#111827;color:var(--text-primary);cursor:pointer;font-size:14px;font-size:var(--font-base);font-weight:600;height:36px;justify-content:center;transition:all .2s ease;width:36px}.page-btn:hover{background:#f3f4f6}.page-btn.active{background:#fff4f0;border-color:#ff7a1a;border-color:var(--primary);color:#ff7a1a;color:var(--primary);font-weight:700}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.ml-2{margin-left:8px}.ml-3{margin-left:12px}.mr-2{margin-right:8px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.w-4{width:16px}.h-4{height:16px}.w-5{width:20px}.h-5{height:20px}.w-6{width:24px}.h-6{height:24px}.w-8{width:32px}.h-8{height:32px}.w-10{width:40px}.h-10{height:40px}.rounded-full{border-radius:50%}.rounded-lg{border-radius:8px}.ml-auto{margin-left:auto}.text-xl{font-size:20px;line-height:28px}.font-black{font-weight:900}.text-white{color:#fff}@media (max-width:1279px){.sidebar{width:80px}.admin-section,.nav-group-title,.nav-item span,.sidebar-footer,.sidebar-header span{display:none}}@media (max-width:767px){.app-container{flex-direction:column}.sidebar{border-top:1px solid #333;flex-direction:row;height:60px;justify-content:space-around;order:2;padding:8px 16px;width:100%}.sidebar-header{display:none}.sidebar-nav{justify-content:space-around;padding:0;width:100%}.nav-section,.sidebar-nav{display:flex;flex-direction:row;gap:8px}.nav-section{margin:0}.admin-section,.sidebar-footer{display:none}.main-content{border-radius:0;height:calc(100vh - 60px);margin:0;order:1}.nav-item{height:44px;justify-content:center;margin:0;padding:0;width:44px}.nav-item span{display:none}}.dashboard-kpi-row{margin-bottom:32px}.kpi-cards-section-full{width:100%}.kpi-grid-horizontal{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(5,1fr);width:100%}.dashboard-row-1{min-height:400px}.dashboard-row-1,.dashboard-row-2{align-items:stretch;display:flex;gap:24px;margin-bottom:32px}.dashboard-row-2{min-height:350px}.dashboard-row-3{align-items:stretch;display:flex;gap:24px;margin-bottom:32px;min-height:300px}.left-column{display:flex;flex:0 0 350px;flex-direction:column;gap:16px}.quick-actions-section{flex:0 0 auto}.map-view-section-tall{flex:1 1}.map-placeholder-tall{height:100%;min-height:500px;position:relative}.map-area-tall{background:#f8fafc;border-radius:8px;height:calc(100% - 60px);min-height:400px;overflow:hidden;position:relative}.map-placeholder-image{height:100%;left:0;position:absolute;top:0;width:100%}.placeholder-map{background:#f8fafc;height:100%;width:100%}.compliance-section{flex:0 0 400px}.business-health-section{flex:1 1}.team-performance-section{flex:0 0 450px}.quick-actions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}.quick-action-btn{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;flex-direction:column;font-size:12px;font-weight:500;gap:8px;padding:16px 12px;transition:all .2s ease}.quick-action-btn:hover{background:#f3f4f6;border-color:#ff7a1a;box-shadow:0 4px 12px #0000001a;color:#374151;transform:translateY(-1px)}.quick-action-btn svg{color:#6b7280;transition:color .2s ease}.quick-action-btn:hover svg{color:#ff7a1a}.dashboard-top-row{align-items:stretch;display:flex;gap:24px;margin-bottom:48px;min-height:500px}.kpi-cards-section{display:flex;flex:0 0 auto;flex-direction:column;width:600px}.kpi-grid-2x2{grid-gap:16px;grid-template-columns:1fr 1fr}.kpi-grid-2x2,.kpi-grid-enhanced{display:grid;gap:16px;grid-template-rows:1fr 1fr;height:100%}.kpi-grid-enhanced{grid-gap:16px;grid-template-columns:repeat(3,1fr)}.kpi-grid-enhanced .kpi-card:first-child{grid-column:1;grid-row:1}.kpi-grid-enhanced .kpi-card:nth-child(2){grid-column:2;grid-row:1}.kpi-grid-enhanced .kpi-card:nth-child(3){grid-column:3;grid-row:1}.kpi-grid-enhanced .kpi-card:nth-child(4){grid-column:1;grid-row:2}.kpi-grid-enhanced .kpi-card:nth-child(5){grid-column:2/4;grid-row:2}.financial-chart-section{display:flex;flex:1 1;flex-direction:column;min-width:0}.financial-chart{display:flex;flex-direction:column;height:100%}.chart-legend{display:flex;gap:20px;justify-content:center;margin-bottom:20px}.legend-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:6px}.legend-color{border-radius:2px;height:12px;width:12px}.legend-color.income{background:#ff7a1a}.legend-color.expenses{background:#2b2b2b}.legend-color.profit{background:#d97706}.chart-container{display:flex;flex:1 1;gap:12px;min-height:350px;position:relative}.chart-y-axis{color:#6b7280;flex-direction:column;font-size:11px;min-width:40px;padding-right:8px}.chart-area,.chart-y-axis{display:flex;justify-content:space-between}.chart-area{align-items:end;background:linear-gradient(0deg,#e5e7eb 0,#e5e7eb 1px,#0000 0);background-size:100% 25%;flex:1 1;gap:8px;position:relative}.chart-month{align-items:center;flex:1 1;flex-direction:column}.chart-bars,.chart-month{display:flex;height:100%;position:relative}.chart-bars{align-items:end;gap:2px;width:100%}.chart-bar{border-radius:2px 2px 0 0;cursor:pointer;flex:1 1;min-height:4px;transition:all .2s ease}.income-bar{background:#ff7a1a}.expense-bar{background:#2b2b2b;opacity:.8}.chart-bar:hover{opacity:1;transform:scale(1.02)}.profit-line-point{background:#d97706;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:8px;left:50%;position:absolute;transform:translateX(-50%);width:8px;z-index:3}.profit-line-point:hover{background:#e55a2b;transform:translateX(-50%) scale(1.3)}.month-label{color:#6b7280;font-size:11px;font-weight:500;margin-top:8px}.chart-controls{align-items:center;display:flex}.chart-insights{border-top:1px solid #e5e7eb;display:flex;gap:16px;justify-content:space-between;margin-top:20px;padding-top:16px}.insight-item{display:flex;flex:1 1;flex-direction:column;gap:4px}.insight-label{color:#6b7280;font-size:11px;font-weight:500}.insight-value{color:#374151;font-size:13px;font-weight:600}.insight-value.positive{color:#059669}.smart-alerts-section{flex:1 1}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{border-left:4px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;padding:12px}.alert-item.urgent{background:#fef2f2;border-left-color:#dc2626}.alert-item.warning{background:#fffbeb;border-left-color:#f59e0b}.alert-item.info{background:#eff6ff;border-left-color:#3b82f6}.alert-item.overdue{background:#fdf2f8;border-left-color:#ec4899}.alert-icon{flex-shrink:0;font-size:16px}.alert-content h4{color:#374151;font-size:13px;font-weight:600;margin:0 0 4px}.alert-content p{color:#6b7280;font-size:12px;margin:0 0 8px}.alert-action{background:#ff7a1a;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;font-weight:500;padding:4px 8px}.alert-action:hover{background:#e55a2b}.map-view-section{flex:1 1}.map-placeholder{height:280px;position:relative}.map-legend{background:#f9fafb;border-radius:6px;display:flex;gap:16px;margin-bottom:16px;padding:12px}.map-legend .legend-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:6px}.status-dot{border-radius:50%;height:8px;width:8px}.status-dot.on-site{background:#10b981}.status-dot.en-route{background:#f59e0b}.status-dot.available{background:#6b7280}.map-area{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:8px;height:200px;overflow:hidden;position:relative}.map-pin{background:#fff;border:2px solid;border-radius:12px;box-shadow:0 2px 8px #00000026;cursor:pointer;font-size:11px;font-weight:600;padding:4px 8px;position:absolute;transform:translate(-50%,-50%)}.map-pin.on-site{border-color:#10b981;color:#10b981}.map-pin.en-route{border-color:#f59e0b;color:#f59e0b}.map-pin.available{border-color:#6b7280;color:#6b7280}.map-pin:hover{transform:translate(-50%,-50%) scale(1.1)}.team-performance-section{flex:1 1}.performance-list{display:flex;flex-direction:column;gap:16px}.performance-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.engineer-info{align-items:center;display:flex;gap:12px}.engineer-avatar{align-items:center;background:#ff7a1a;color:#fff;display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.engineer-info h4{color:#374151;font-size:14px;font-weight:600;margin:0}.engineer-info p{color:#6b7280;font-size:12px;margin:2px 0 0}.performance-stats .stat{text-align:center}.performance-stats .stat span{color:#10b981;display:block;font-size:16px;font-weight:700}.performance-stats .stat small{color:#6b7280;font-size:11px}.compliance-section{flex:1 1}.compliance-stats{display:flex;gap:16px;margin-bottom:20px}.compliance-item{background:#f9fafb;border-radius:8px;flex:1 1;padding:16px 12px;text-align:center}.compliance-item.warning{background:#fffbeb}.compliance-item.success{background:#f0fdf4}.compliance-number{color:#374151;font-size:24px;font-weight:700}.compliance-item.warning .compliance-number{color:#f59e0b}.compliance-item.success .compliance-number{color:#10b981}.compliance-label{color:#6b7280;font-size:11px;margin-top:4px}.compliance-actions{align-items:center;display:flex;justify-content:space-between}.auto-renew-toggle label{align-items:center;color:#6b7280;cursor:pointer;display:flex;font-size:12px;gap:6px}.business-health-section{margin:0 auto;max-width:600px}.health-score-container{align-items:center;display:flex;gap:32px}.health-gauge{flex-shrink:0}.gauge-circle{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;height:120px;justify-content:center;position:relative;width:120px}.gauge-fill{background:conic-gradient(#10b981 0deg,#10b981 calc(var(--score)*3.6deg),#f3f4f6 calc(var(--score)*3.6deg));border-radius:50%;height:100%;left:0;-webkit-mask:radial-gradient(circle at center,#0000 60%,#000 0);mask:radial-gradient(circle at center,#0000 60%,#000 0);position:absolute;top:0;width:100%}.gauge-center{text-align:center;z-index:1}.gauge-center .score{color:#10b981;display:block;font-size:28px;font-weight:700}.gauge-center small{color:#6b7280;font-size:12px}.health-breakdown{display:flex;flex:1 1;flex-direction:column;gap:16px}.health-metric{align-items:center;display:flex;gap:12px}.metric-label{flex:0 0 120px;font-size:12px}.metric-bar{background:#f3f4f6;border-radius:4px;flex:1 1;height:8px}.metric-fill{background:#10b981;border-radius:4px}.metric-value{color:#374151;flex:0 0 40px;font-size:12px;text-align:right}.dashboard-second-row{grid-gap:24px;align-items:stretch;display:grid;gap:24px;grid-template-columns:1fr 1fr 300px;margin-bottom:48px;margin-top:24px}.dashboard-second-row .dashboard-card{display:flex;flex-direction:column;height:100%}.dashboard-second-row .card-content{flex:1 1}.service-requests{display:flex;flex-direction:column;gap:12px}.request-item{align-items:center;background:#f9fafb;border-left:4px solid #0000;border-radius:8px;display:flex;gap:12px;padding:12px}.request-item:hover{background:#f3f4f6}.priority-indicator{border-radius:50%;flex-shrink:0;height:8px;width:8px}.priority-urgent{background:#dc2626;box-shadow:0 0 0 2px #dc262633}.priority-high{background:#ea580c}.priority-medium{background:#d97706}.request-details{flex:1 1}.request-customer{font-size:14px;font-weight:600}.request-customer,.request-service{color:#111827;color:var(--text-primary);margin-bottom:2px}.request-service{font-size:13px}.request-location{color:#6b7280;color:var(--text-muted);font-size:12px}.request-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.request-value{color:#16a34a;font-size:14px;font-weight:600}.request-time{color:#6b7280;color:var(--text-muted);font-size:11px}.engineer-spotlight{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.period-label{background:#e2e8f0;border-radius:12px;color:#6b7280;color:var(--text-muted);font-size:12px;padding:4px 8px}.engineer-profile{text-align:center}.engineer-avatar-container{display:inline-block;margin-bottom:16px;position:relative}.satisfaction-ring{align-items:center;background:conic-gradient(#16a34a 0deg,#16a34a calc(var(--satisfaction)*3.6deg),#e5e7eb calc(var(--satisfaction)*3.6deg),#e5e7eb 1turn);border-radius:50%;display:flex;height:80px;justify-content:center;padding:4px;width:80px}.engineer-avatar{border:2px solid #fff;border-radius:50%;height:72px;object-fit:cover;width:72px}.satisfaction-percentage{background:#16a34a;border:2px solid #fff;border-radius:10px;bottom:-8px;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;position:absolute;right:-8px}.engineer-name{color:#111827;color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:16px}.engineer-metrics{gap:12px}.engineer-metrics,.metric-item{display:flex;flex-direction:column}.metric-item{gap:4px}.metric-label{color:#6b7280;color:var(--text-muted);font-size:11px;letter-spacing:.5px;text-transform:uppercase}.metric-bar{background:#e5e7eb;border-radius:3px;height:6px;overflow:hidden;position:relative}.metric-fill{background:linear-gradient(90deg,#16a34a,#22c55e);border-radius:3px;height:100%;transition:width .3s ease}.metric-value{color:#111827;color:var(--text-primary);font-size:11px;font-weight:600;position:absolute;right:0;top:-20px}.dashboard-third-row{grid-gap:24px;align-items:stretch;display:grid;gap:24px;grid-template-columns:2fr 1fr}.dashboard-third-row .dashboard-card{display:flex;flex-direction:column;height:100%}.dashboard-third-row .card-content{flex:1 1}.assignment-table{display:flex;flex-direction:column;gap:12px}.assignment-header{border-bottom:1px solid #f3f4f6;color:#6b7280;color:var(--text-muted);font-size:12px;font-weight:600;padding:12px 0;text-transform:uppercase}.assignment-header,.assignment-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1.5fr 1fr 1fr}.assignment-row{align-items:center;border-bottom:1px solid #f9fafb;padding:16px 0}.assignment-row:last-child{border-bottom:none}.job-info{display:flex;flex-direction:column;gap:2px}.job-id{color:#111827;color:var(--text-primary);font-size:14px;font-weight:600}.suggested-engineer{display:flex;flex-direction:column;gap:4px}.engineer-suggestion{align-items:center;color:#111827;color:var(--text-primary);display:flex;font-size:13px;font-weight:500;gap:6px}.suggestion-reason{color:#6b7280;color:var(--text-muted);font-size:11px;line-height:1.3}.travel-cost{align-items:center;display:flex;flex-direction:column;gap:2px}.cost-amount{color:#16a34a;font-size:14px;font-weight:600}.cost-duration{color:#6b7280;color:var(--text-muted);font-size:11px}.assignment-actions{display:flex;flex-direction:column;gap:6px}.compliance-overview{display:flex;flex-direction:column;gap:20px}.compliance-alerts{display:flex;flex-direction:column;gap:12px}.compliance-alert-item{background:#fef3c7;border-left:4px solid #d97706;gap:12px;padding:12px}.alert-priority,.compliance-alert-item{align-items:center;border-radius:8px;display:flex}.alert-priority{flex-shrink:0;height:32px;justify-content:center;width:32px}.alert-priority.priority-urgent{background:#fee2e2;color:#dc2626}.alert-priority.priority-high{background:#fed7aa;color:#ea580c}.alert-priority.priority-medium{background:#fef3c7;color:#d97706}.alert-content{flex:1 1}.alert-site{font-size:14px;font-weight:600}.alert-certificate,.alert-site{color:#111827;color:var(--text-primary);margin-bottom:2px}.alert-certificate{font-size:12px}.alert-expiry{color:#6b7280;color:var(--text-muted);font-size:11px}.alert-actions,.empty-state{align-items:center;display:flex}.empty-state{justify-content:center;min-height:400px;padding:48px 24px}.empty-state-content{max-width:400px;text-align:center}.empty-state-icon{align-items:center;background:#ff7a1a1a;border-radius:50%;display:flex;height:64px;justify-content:center;margin:0 auto 24px;width:64px}.empty-state-icon .icon{color:#ff7a1a;color:var(--primary);height:32px;width:32px}.empty-state-title{color:#111827;color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:8px}.empty-state-description{color:#6b7280;color:var(--text-muted);font-size:14px;line-height:1.5;margin-bottom:24px}.empty-state-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.data-table{border-collapse:initial;border-spacing:0;width:100%}.data-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border)}.data-table th{color:#6b7280;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table tbody tr{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light);transition:background-color .15s ease}.data-table tbody tr:hover{background-color:#ff7a1a0d;cursor:pointer}.data-table tbody tr:last-child{border-bottom:none}.data-table td{color:#111827;color:var(--text-primary);font-size:14px;padding:12px 16px;vertical-align:middle}.col-customer{width:22%}.col-property{width:20%}.col-date,.col-engineer{width:15%}.col-status{min-width:120px;width:12%}.col-actions{width:10%}.status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 12px;white-space:nowrap}.status-badge.in-progress,.status-badge.in_progress{background-color:#ff7a1a;background-color:var(--primary);color:#fff}.status-badge.completed{background-color:#111;color:#fff}.status-badge.pending{background-color:#e5e7eb;color:#374151}.status-badge.scheduled{background-color:#dbeafe;color:#1e40af}.status-badge.cancelled{background-color:#fee2e2;color:#dc2626}.status-badge.invoiced{background-color:#d1fae5;color:#065f46}.status-badge:before{background-color:currentColor;border-radius:50%;content:"";height:6px;width:6px}.loading-skeleton{animation:loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f3f4f6,#e5e7eb 50%,#f3f4f6);background-size:200% 100%;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-row{height:48px;margin-bottom:8px}.table-actions{align-items:center;display:flex;gap:8px}.action-btn{background:#0000;border:none;border-radius:4px;color:#6b7280;color:var(--text-muted);cursor:pointer;padding:6px;transition:all .15s ease}.action-btn:hover{background:#ff7a1a1a;color:#ff7a1a;color:var(--primary)}.action-btn svg{height:18px;width:18px}@media (max-width:1024px){.data-table td,.data-table th{font-size:13px;padding:10px 12px}.col-engineer,.col-property{display:none}}@media (max-width:768px){.data-table{display:block;overflow-x:auto}.empty-state{min-height:300px;padding:32px 16px}}.hover\:rotate-0:hover{--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity:1;border-color:#9ca3af;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:#1f2937;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:#ff5a00;background-color:rgb(255 90 0/var(--tw-bg-opacity,1))}.hover\:bg-orange-700:hover{--tw-bg-opacity:1;background-color:#c2410c;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-orange-700:hover{--tw-text-opacity:1;color:#c2410c;color:rgb(194 65 12/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:768px){.md\:left-12{left:3rem}.md\:left-16{left:4rem}.md\:right-12{right:3rem}.md\:right-16{right:4rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:left-24{left:6rem}.lg\:left-32{left:8rem}.lg\:right-24{right:6rem}.lg\:right-32{right:8rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}.notification-tray{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #0000001a;max-height:500px;overflow:hidden;position:absolute;right:0;top:100%;width:400px;z-index:1000}.notification-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:16px 20px}.notification-list{max-height:400px;overflow-y:auto}.notification-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:16px 20px;transition:background-color .2s}.notification-item:hover{background-color:#f9fafb}.notification-item.unread{background-color:#fef3f2}.notification-item.unread:hover{background-color:#fde8e8}.notification-content{width:100%}.notification-icon{flex-shrink:0}.notification-title{color:#111827;font-size:14px;font-weight:600;margin-bottom:4px}.notification-message{color:#6b7280;font-size:13px;line-height:1.4;margin-bottom:8px}.notification-time{color:#9ca3af;font-size:12px}.notification-actions{display:flex;gap:8px;margin-top:12px}.btn-notification-action{align-items:center;border:1px solid;border-radius:6px;cursor:pointer;display:flex;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.btn-accept{background:#f0f9ff;border-color:#0ea5e9;color:#0ea5e9}.btn-accept:hover{background:#0ea5e9;color:#fff}.btn-decline{background:#fef2f2;border-color:#ef4444;color:#ef4444}.btn-decline:hover{background:#ef4444;color:#fff}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f5f9}.notification-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}
/*# sourceMappingURL=main.a46027b8.css.map*/