*,:before,:after{--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: rgb(59 130 246 / .5);--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: rgb(59 130 246 / .5);--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: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}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,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color: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:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-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,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.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)}:root{--color-primary: #0f2742;--color-primary-hover: #183b5b;--color-primary-dark: #091a2d;--color-accent: #f5b51b;--color-accent-hover: #d99a0b;--color-accent-soft: #fff7dc;--color-background: #f5f7fa;--color-surface: #ffffff;--color-surface-muted: #eef2f6;--color-surface-hover: #f8fafc;--color-border: #e4e7ec;--color-border-subtle: #eef1f4;--color-border-strong: #cfd4dc;--color-text: #17212b;--color-text-muted: #667085;--color-on-primary: #ffffff;--color-sidebar: #0f2742;--color-sidebar-hover: #183b5b;--color-sidebar-border: #2b4864;--color-sidebar-muted: #b8c5d1;--color-success: #16a34a;--color-success-text: #15803d;--color-success-soft: #eefbf3;--color-success-border: #b7e4c7;--color-info: #2563eb;--color-info-text: #1d4ed8;--color-info-soft: #eff6ff;--color-warning: #f5b51b;--color-warning-text: #765600;--color-danger: #dc2626;--color-danger-text: #b42318;--color-danger-soft: #fff1f2;--color-danger-border: #fecdd3;--color-accent-border: #f1d47d;--shadow-color: 15 39 66;color:var(--color-text);background:var(--color-background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login-page{background:radial-gradient(circle at 10% 10%,rgb(245 181 27 / .1),transparent 32%),var(--color-background)}.login-brand{align-items:center;display:flex;gap:16px}.login-brand img{background:var(--color-primary-dark);border-radius:14px;height:76px;-o-object-fit:contain;object-fit:contain;padding:5px;width:76px}.theme-settings-card>div{flex:1}.theme-selector{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:9px;display:inline-grid;gap:4px;grid-template-columns:repeat(2,1fr);margin-top:14px;padding:4px}.theme-selector button{background:transparent;color:var(--color-text-muted);min-height:38px;padding:8px 14px}.theme-selector button:hover{background:var(--color-surface-hover);color:var(--color-text)}.theme-selector button.active{background:var(--color-surface);box-shadow:0 1px 5px rgb(var(--shadow-color) / .16);color:var(--color-text)}.theme-selector button.active svg{color:var(--color-accent)}input:focus,select:focus,textarea:focus,button:focus-visible,.button:focus-visible,a:focus-visible{outline:3px solid rgb(245 181 27 / .35);outline-offset:2px}.metric-link:hover,.metric-link:focus-visible,.settings-link:hover{border-color:var(--color-accent)}:root[data-theme=dark] .modal-backdrop{background:#000000b3}:root[data-theme=dark] .notification-badge{border-color:var(--color-on-primary)}@media (max-width: 560px){.sidebar-brand{align-items:center!important}.sidebar-brand img{height:38px;width:38px}.login-brand{align-items:flex-start}.login-brand img{height:62px;width:62px}.theme-selector button{width:auto}}:root[data-theme=dark]{--color-primary: #183b5b;--color-primary-hover: #245276;--color-accent-soft: #352a0e;--color-background: #0b1118;--color-surface: #111b26;--color-surface-muted: #1b2937;--color-surface-hover: #162638;--color-border: #263442;--color-border-subtle: #202e3c;--color-border-strong: #3a4a5a;--color-text: #f8fafc;--color-text-muted: #98a2b3;--color-sidebar: #08121e;--color-sidebar-hover: #162638;--color-sidebar-border: #263442;--color-sidebar-muted: #98a2b3;--color-success-soft: #102a1b;--color-success-border: #24633a;--color-success-text: #4ade80;--color-info-soft: #102544;--color-info-text: #60a5fa;--color-warning-text: #ffd666;--color-danger-soft: #35171b;--color-danger-border: #713039;--color-danger-text: #f87171;--color-accent-border: #6f581a;--shadow-color: 0 0 0}*{box-sizing:border-box}body{background:var(--color-background);color:var(--color-text);margin:0}button,.button{align-items:center;background:var(--color-primary);border:0;border-radius:8px;color:var(--color-on-primary);cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:8px;justify-content:center;min-height:44px;padding:10px 14px;text-decoration:none;width:-moz-fit-content;width:fit-content}button:not(:disabled):hover,.button:hover{background:var(--color-primary-hover)}button:disabled{cursor:not-allowed;opacity:.65}button.secondary,.button.secondary{background:var(--color-surface-muted);color:var(--color-text)}input,select,textarea{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:8px;color:var(--color-text);font:inherit;min-height:42px;padding:10px 12px;width:100%}textarea{min-height:96px;resize:vertical}label{display:grid;font-weight:700;gap:6px}.login-page{display:grid;grid-template-rows:1fr auto;min-height:100vh;place-items:center;padding:24px}.login-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 16px 50px #17201b14;display:grid;gap:18px;max-width:420px;padding:28px;width:100%}.password-field{display:grid;position:relative}.password-field input{padding-right:46px}.password-toggle{background:transparent;color:var(--color-text-muted);height:38px;min-height:38px;padding:0;position:absolute;right:4px;top:2px;width:38px}.password-toggle:hover{background:var(--color-surface-muted);color:var(--color-primary)}.login-panel h1,.page-title h1{font-size:28px;line-height:1.15;margin:0}.login-panel p,.page-title p,.muted{color:var(--color-text-muted);margin:4px 0 0}.error-state{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:180px}.error-state strong{color:#a52d25}.warning-message{background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:8px;color:#765b12;padding:12px}.completion-notice{display:flex;flex-direction:column;gap:8px}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100dvh}.sidebar{background:var(--color-sidebar);color:var(--color-on-primary);display:flex;flex-direction:column;gap:28px;height:100dvh;padding:22px;position:sticky;top:0;align-self:start;overflow:hidden}.sidebar span,.topbar span{color:var(--color-sidebar-muted);display:block;font-size:13px;margin-top:4px}.sidebar-menu{display:flex;flex:1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;scrollbar-width:thin}.sidebar-settings{flex:0 0 auto;margin-top:auto}.sidebar a{align-items:center;border-radius:8px;color:var(--color-border);display:flex;gap:10px;padding:11px 12px;text-decoration:none;white-space:nowrap}.sidebar a.settings-nav-item{border-top:1px solid var(--color-sidebar-border);border-radius:0;margin-top:auto;padding-top:20px}.sidebar a.active,.sidebar a:hover{background:var(--color-sidebar-hover);color:var(--color-on-primary)}.main-area{display:flex;flex-direction:column;min-width:0}.topbar{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;min-height:68px;padding:12px 24px}.icon-button{min-height:40px;padding:10px}.topbar .icon-button{border-radius:999px;flex:0 0 40px;height:40px;padding:0;width:40px}.topbar-actions{align-items:center;display:flex;gap:10px}.theme-quick-toggle{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:999px;color:var(--color-primary);flex:0 0 40px;height:40px;min-height:40px;padding:0;width:40px}.theme-quick-toggle:hover{background:var(--color-accent-soft);border-color:var(--color-accent-border);color:var(--color-accent-hover)}:root[data-theme=dark] .theme-quick-toggle{color:var(--color-accent)}.notification-menu,.notification-button{position:relative}.notification-badge{align-items:center;background:#d03b2f;border:2px solid var(--color-surface);border-radius:999px;color:#fff!important;display:inline-flex!important;font-size:11px!important;font-weight:800;height:20px;justify-content:center;margin:0!important;min-width:20px;padding:0 5px;position:absolute;right:-4px;top:-5px}.notification-popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 18px 48px #17201b29;max-width:calc(100vw - 32px);overflow:hidden;position:absolute;right:0;top:48px;width:360px;z-index:20}.notification-popover-header{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:14px 16px}.notification-popover-header span{color:var(--color-text-muted);margin:0}.notification-list{display:grid;max-height:420px;overflow:auto}.notification-item{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);display:grid;gap:4px;padding:13px 16px;text-decoration:none}.notification-item:hover{background:var(--color-surface-hover)}.notification-item span,.notification-item small,.notification-empty{color:var(--color-text-muted)}.notification-empty{padding:22px 16px;text-align:center}main{flex:1;padding:24px}.system-footer{align-items:center;color:var(--color-text-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:10px 14px;justify-content:center;padding:12px 24px 18px}.api-status{align-items:center;display:inline-flex;gap:5px}.api-status-online{color:var(--color-primary)}.api-status-offline{color:#a33b2f}.page{display:grid;gap:20px}.two-column{align-items:start;grid-template-columns:minmax(0,1fr) 380px}.page-title{display:grid;gap:2px;margin-bottom:16px}.page-title-row{align-items:start;display:flex;gap:16px;justify-content:space-between}.page-title-actions{align-items:center;display:flex;gap:8px}.customer-extra-actions{position:relative}.customer-extra-actions summary{align-items:center;background:var(--color-surface-muted);border-radius:8px;color:var(--color-text);cursor:pointer;display:inline-flex;font-weight:700;min-height:44px;padding:10px 14px}.customer-extra-actions[open] .import-button{background:var(--color-surface);border:1px solid var(--color-border-strong);box-shadow:0 10px 24px #17201b1f;color:var(--color-text);position:absolute;right:0;top:52px;white-space:nowrap;z-index:5}.import-button input{display:none}.import-result{display:flex;flex-direction:column;gap:6px}.import-result ul{margin:8px 0 0;padding-left:20px}.settings-grid{display:grid;gap:30px;max-width:880px}.settings-group{display:grid;gap:12px}.settings-group-heading{align-items:center;display:flex;gap:11px}.settings-group-icon{align-items:center;background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:9px;color:var(--color-accent-hover);display:inline-flex;flex:0 0 38px;height:38px;justify-content:center}.settings-group-heading h2{font-size:18px;margin:0}.settings-group-heading p,.settings-preference-row span,.settings-account p{color:var(--color-text-muted);font-size:13px;margin:3px 0 0}.settings-card{align-items:flex-start;display:flex;gap:14px;padding:18px}.settings-card h2{font-size:17px;margin:0}.settings-card p{color:var(--color-text-muted);margin:5px 0 0}.settings-preference-row{align-items:center;display:flex;gap:18px;justify-content:space-between;padding:18px}.settings-preference-row>div{display:grid;gap:2px}.settings-preference-row strong{font-size:15px}.settings-admin-grid{display:grid;gap:12px}.notification-preferences{display:grid;gap:16px}.notification-preferences-note{color:var(--color-text-muted);font-size:13px;line-height:1.45;margin:0}.notification-preferences-status,.notification-preferences-error{color:var(--color-text-muted);font-size:14px}.notification-preferences-error{align-items:center;display:flex;gap:12px;justify-content:space-between}.notification-preferences-error button{min-height:36px}.notification-toggle{align-items:center;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;display:flex;gap:11px;padding:12px}.notification-toggle input{accent-color:var(--color-primary);flex:0 0 auto;height:18px;min-height:0;width:18px}.notification-toggle span{display:grid;gap:3px}.notification-toggle small{color:var(--color-text-muted);font-size:12px;font-weight:500}.settings-profile{display:grid;gap:18px}.settings-profile-heading,.settings-password-heading{align-items:flex-start;display:flex;gap:11px}.settings-profile-heading>svg,.settings-password-heading>svg{color:var(--color-primary);flex:0 0 auto}.settings-profile-heading h2,.settings-profile-heading p{margin:0}.settings-profile-heading p,.settings-password-heading small{color:var(--color-text-muted)}.settings-profile-heading p{margin-top:4px}.settings-password-heading>div{display:grid;gap:3px}.settings-profile>button{justify-self:start}.profile-email-pending{background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:8px;color:#715817;display:grid;gap:4px;padding:11px 13px}.email-confirmation-page{align-items:center;background:var(--color-background);display:flex;justify-content:center;min-height:100vh;padding:20px}.email-confirmation-card{align-items:center;display:grid;gap:10px;justify-items:center;max-width:480px;padding:34px;text-align:center;width:100%}.email-confirmation-card>svg{color:var(--color-primary)}.email-confirmation-card h1,.email-confirmation-card p{margin:0}.email-confirmation-card p{color:var(--color-text-muted)}.email-confirmation-card .button{margin-top:8px}.settings-link{color:inherit;text-decoration:none}.settings-link:hover{border-color:var(--color-primary)}.settings-account{align-items:center;justify-content:space-between}.settings-help{gap:0;padding:0}.settings-help-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-help-links a{align-items:center;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);display:flex;font-size:14px;font-weight:700;gap:9px;min-height:58px;padding:12px 16px;text-decoration:none}.settings-help-links a:nth-child(odd){border-right:1px solid var(--color-border-subtle)}.settings-preference-row .theme-selector{background:transparent;border:0;gap:8px;margin:0;padding:0}.settings-preference-row .theme-selector button{border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-muted);min-height:40px;padding:8px 12px}.settings-preference-row .theme-selector button.active{background:var(--color-primary);border-color:var(--color-primary);box-shadow:none;color:var(--color-on-primary)}.settings-preference-row .theme-selector button.active svg{color:var(--color-accent)}:root[data-theme=dark] .settings-preference-row .theme-selector button.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-primary-dark)}:root[data-theme=dark] .settings-preference-row .theme-selector button.active svg{color:var(--color-primary-dark)}.settings-help-links a:hover{background:var(--color-surface-hover)}.settings-help-links span{align-items:center;background:var(--color-accent-soft);border-radius:999px;color:var(--color-accent-hover);display:inline-flex;flex:0 0 24px;font-size:12px;height:24px;justify-content:center}.settings-help-links svg{color:var(--color-text-muted);margin-left:auto}.help-faq{display:grid;padding:8px 16px 16px}.help-faq-heading{align-items:center;color:var(--color-text-muted);display:flex;font-size:13px;font-weight:800;gap:7px;padding:9px 0}.help-faq-heading svg{color:var(--color-accent-hover)}.help-faq details{border-top:1px solid var(--color-border-subtle);padding:12px 0}.help-faq summary{color:var(--color-text);cursor:pointer;font-size:14px;font-weight:700}.help-faq p{color:var(--color-text-muted);font-size:14px;line-height:1.5;margin:10px 22px 0}@media (max-width: 560px){.settings-preference-row,.settings-account{align-items:stretch;display:grid}.settings-preference-row .theme-selector{grid-template-columns:repeat(2,1fr)}.settings-preference-row .theme-selector button{width:100%}.settings-help-links{grid-template-columns:1fr}.settings-help-links a:nth-child(odd){border-right:0}}.settings-import-button input{display:none}.settings-import .import-result{margin-top:12px}.technician-settings-link{align-items:center;background:var(--color-surface-muted);border-radius:999px;color:var(--color-primary);display:inline-flex;height:42px;justify-content:center;text-decoration:none;width:42px}.technician-settings-link:hover{background:#d8e4de}.integration-fields{border-top:1px solid var(--color-border-subtle);padding-top:10px}.integration-fields summary{color:var(--color-text-muted);cursor:pointer;font-size:13px;font-weight:700}.metric-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel,.item-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.metric{display:grid;gap:8px;padding:18px}.metric-link{color:inherit;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.metric-link:hover,.metric-link:focus-visible{border-color:var(--color-primary);box-shadow:0 5px 16px #176b4d1f;transform:translateY(-2px)}.metric-link small{align-items:center;color:var(--color-primary);display:inline-flex;font-weight:700;gap:4px}.metric-icon{align-items:center;background:var(--color-primary);border-radius:9px;color:var(--color-on-primary);display:inline-flex;height:38px;justify-content:center;width:38px}.metric-icon svg{color:inherit}:root[data-theme=dark] .metric-icon{background:var(--color-accent);color:var(--color-primary-dark)}.metric strong{font-size:30px}.panel{display:grid;gap:14px;padding:18px}.panel h2{font-size:18px;margin:0}.form{position:sticky;top:18px}.workflow-page{max-width:none;width:100%}.workflow-form{gap:18px;padding:20px}.modal-backdrop{align-items:center;background:#17201b75;display:grid;top:0;right:0;bottom:0;left:0;padding:20px;position:fixed;z-index:80}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 24px 80px #17201b42;display:grid;grid-template-rows:auto minmax(0,1fr) auto;margin:0 auto;max-height:min(860px,calc(100dvh - 40px));max-width:880px;overflow:hidden;width:min(100%,880px)}.modal-panel.workflow-form{gap:0;padding:0}.modal-header,.modal-actions{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:18px 20px}.modal-header{border-bottom:1px solid var(--color-border-subtle)}.modal-header h2{font-size:22px;margin:2px 0 0}.modal-body{display:grid;gap:18px;overflow:auto;padding:18px 20px}.modal-actions{background:var(--color-surface);border-top:1px solid var(--color-border-subtle);justify-content:end}.form-hero{align-items:start;border-bottom:1px solid var(--color-border-subtle);display:flex;gap:16px;justify-content:space-between;padding-bottom:16px}.form-hero h2{font-size:22px;margin:2px 0 0}.form-section{border-bottom:1px solid var(--color-border-subtle);display:grid;gap:10px;padding-bottom:16px}.form-section:last-of-type{border-bottom:0;padding-bottom:0}.form-section-title{display:grid;gap:3px}.form-section-title strong{font-size:16px}.form-section-title span{color:var(--color-text-muted);font-size:12px;line-height:1.35}.field-hint{color:var(--color-text-muted);font-size:12px;font-weight:500}.form-grid{align-items:start;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-field{align-content:start;display:grid;gap:7px;min-width:0}.form-field input,.form-field select{width:100%}.field-stack{display:grid;gap:8px}.form-medium{max-width:560px;width:100%}.occurrence-form-grid{grid-template-columns:minmax(0,2fr) minmax(180px,1fr)}.occurrence-fields label:first-of-type{max-width:220px}.visit-form-grid{grid-template-columns:minmax(220px,1fr) minmax(0,1.4fr)}.visit-fields{display:grid;gap:10px}.visit-technician-row{max-width:360px}.visit-location-row{display:grid;gap:10px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.visit-schedule-row{display:grid;gap:10px;grid-template-columns:180px 150px}.visit-occurrence-grid{grid-template-columns:minmax(0,1.8fr) minmax(180px,.8fr)}.schedule-form-grid{align-items:start;grid-template-columns:minmax(240px,1.25fr) minmax(170px,.75fr) minmax(150px,.65fr)}.location-form-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.mode-toggle{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:4px;grid-template-columns:repeat(2,minmax(0,180px));padding:4px;width:-moz-fit-content;width:fit-content}.mode-toggle button{background:transparent;color:var(--color-text-muted);min-height:38px;width:100%}.mode-toggle button.active{background:var(--color-accent);box-shadow:0 1px 4px rgb(var(--shadow-color) / .18);color:var(--color-primary-dark)}.inline-create-flow{display:grid;gap:12px}.form-wide{grid-column:1 / -1}.workflow-list{display:grid;gap:14px;width:100%}.visits-heading{align-items:center}.list-count{color:var(--color-text-muted);font-size:14px;font-weight:700}.visit-list-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.visit-list-actions button{min-height:38px}.collapsed-filter-summary{align-items:center;display:flex;flex-wrap:wrap;gap:7px;min-width:0}.collapsed-filter-summary>svg{color:var(--color-primary)}.collapsed-filter-summary>strong{color:var(--color-text);font-size:14px}.customer-card-actions{display:flex;flex-wrap:wrap;gap:8px}.customer-card-actions button{min-height:38px}.report-counter{align-items:center;background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:8px;color:var(--color-warning-text);display:inline-flex;font-size:14px;font-weight:800;gap:6px;min-height:38px;padding:8px 10px}.report-hint{color:#75631d;display:block;font-size:13px}.reports-page{max-width:none;width:100%}.report-stats{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.report-stats>div{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:7px;grid-template-columns:auto auto minmax(0,1fr);padding:14px}.report-stats svg{color:var(--color-primary)}.report-stats strong{font-size:22px}.report-stats span{color:var(--color-text-muted);font-size:14px}.report-tabs{align-items:center;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;display:inline-grid;gap:4px;grid-template-columns:repeat(3,auto);justify-self:start;padding:4px}.report-tabs button{background:transparent;color:var(--color-text-muted);min-height:36px;padding:8px 12px}.report-tabs button.active{background:var(--color-surface);box-shadow:0 1px 4px #17201b14;color:var(--color-text)}.equatorial-shortcut{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:14px 16px}.equatorial-shortcut strong,.equatorial-shortcut span{display:block}.equatorial-shortcut span{color:var(--color-text-muted);font-size:13px;margin-top:3px}.report-center{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.report-section-header{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:18px}.report-section-header h2{font-size:20px;margin:0}.report-section-header p{color:var(--color-text-muted);margin:4px 0 0}.report-list{display:grid}.report-item{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:grid;gap:14px;grid-template-columns:44px minmax(0,1fr) auto;padding:16px 18px}.report-item:last-child{border-bottom:0}.report-item-upcoming{background:var(--color-surface-muted)}.report-item-upcoming .report-icon{background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-muted)}.report-upcoming{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;margin-top:18px;overflow:hidden}.report-upcoming .report-section-header{background:var(--color-background);padding:14px 16px}.report-upcoming .report-section-header h2{color:var(--color-text-muted);font-size:16px}.report-upcoming .report-section-header p{font-size:13px}.report-icon{align-items:center;background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:8px;color:#8a6d13;display:inline-flex;height:44px;justify-content:center;width:44px}.report-icon-done{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-primary)}.report-content{display:grid;gap:8px;min-width:0}.report-content strong,.report-content span{display:block}.report-credentials{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.report-credential{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:7px;color:var(--color-text);display:inline-flex;font-size:12px;font-weight:600;gap:6px;min-height:32px;padding:6px 8px}.report-credential span{color:var(--color-text-muted)}.report-credential strong{font-weight:800}.report-credential svg{color:var(--color-accent-hover)}.report-credential:hover{background:var(--color-accent-soft);border-color:var(--color-accent-border);color:var(--color-text)}.report-customer-link{color:var(--color-text);font-weight:800;text-decoration:none}.report-customer-link:hover{color:var(--color-primary);text-decoration:underline}.report-content span,.report-content p{color:var(--color-text-muted);margin:0}.report-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.report-empty{align-items:center;color:var(--color-text-muted);display:grid;gap:8px;justify-items:center;padding:42px 18px;text-align:center}.report-empty svg{color:var(--color-primary)}.report-empty strong{color:var(--color-text)}.report-history-list{display:grid;gap:14px}.report-history-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.report-history-header{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:16px 18px}.report-history-header span,.report-history-header small{color:var(--color-text-muted)}.report-history-header span{display:block;font-size:13px;margin-top:4px}.report-month-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));padding:16px 18px}.report-month{border:1px solid var(--color-border);border-radius:8px;display:grid;gap:5px;min-height:88px;padding:10px}.report-month strong,.report-month span,.report-month small{display:block}.report-month span,.report-month small{color:var(--color-text-muted);font-size:13px}.report-month-done{background:var(--color-success-soft);border-color:var(--color-success-border)}.report-month-done span{color:var(--color-primary);font-weight:800}.report-month-missed{background:var(--color-danger-soft);border-color:#f0cdbf}.report-month-missed span{color:#a33b2f;font-weight:800}.report-month-upcoming{background:var(--color-background)}.selected-customer,.nested-form{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:8px;padding:12px}.selected-customer span,.customer-search-result span{color:var(--color-text-muted);font-size:13px}.customer-search-result{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);display:grid;gap:4px;padding:11px 12px;text-align:left}.customer-search-result:hover{border-color:var(--color-primary)}.info-message{background:var(--color-success-soft);border-left:3px solid var(--color-primary);color:var(--color-text-muted);font-size:14px;margin:0;padding:10px}.filter-shortcut{justify-self:start}.filter-shortcut.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.upload-button input{display:none}.attachment-list{display:grid;gap:8px;margin-top:14px}.attachment-item{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:inherit;display:flex;overflow:hidden;width:100%}.attachment-item-open{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:grid;flex:1;font:inherit;gap:10px;grid-template-columns:48px minmax(0,1fr) auto;min-width:0;padding:8px;text-align:left}.attachment-delete{align-items:center;align-self:stretch;background:var(--color-danger-soft);border:0;border-left:1px solid var(--color-danger-border);border-radius:0;color:#a33131;display:flex;flex:0 0 auto;gap:6px;padding:8px 12px}.attachment-item img{border-radius:5px;height:48px;-o-object-fit:cover;object-fit:cover;width:48px}.attachment-item span{display:grid;gap:3px;min-width:0}.attachment-item strong,.attachment-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-queue{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:10px;display:grid;gap:14px;margin-top:16px;padding:14px}.attachment-queue-header{align-items:center;display:flex;gap:14px;justify-content:space-between}.attachment-queue-header>div{display:grid;gap:3px}.attachment-queue-header small{color:var(--color-text-muted)}.attachment-queue-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.attachment-preview-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.attachment-preview-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:5px;min-width:0;padding:7px;position:relative}.attachment-preview-media{align-items:center;background:var(--color-surface-muted);border-radius:6px;color:var(--color-text-muted);display:flex;height:105px;justify-content:center;overflow:hidden}.attachment-preview-media img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.attachment-preview-card strong,.attachment-preview-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-preview-card small{color:var(--color-text-muted)}.attachment-preview-card>button{align-items:center;background:var(--color-surface);border:1px solid var(--color-danger-border);border-radius:999px;color:#a33131;display:flex;gap:4px;min-height:30px;justify-content:center;padding:0 9px;position:absolute;right:12px;top:12px;width:auto}.attachment-success{align-items:center;background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:9px;color:var(--color-primary);display:flex;gap:10px;margin-top:14px;padding:11px 13px}.attachment-success>div{display:grid;gap:2px}.attachment-success span{font-size:13px}.attachment-loading{align-items:center;color:var(--color-text-muted);display:flex;gap:8px;justify-content:center;padding:22px}.attachment-viewer-backdrop{align-items:center;background:#070e0ad1;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:22px;position:fixed;z-index:1000}.attachment-viewer{background:var(--color-surface);border-radius:12px;box-shadow:0 18px 60px #00000059;display:grid;grid-template-rows:auto minmax(0,1fr);height:min(88dvh,900px);overflow:hidden;width:min(92vw,1100px)}.attachment-viewer>header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:12px;justify-content:space-between;min-width:0;padding:12px 16px}.attachment-viewer>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-viewer>header button{align-items:center;background:transparent;border:0;color:var(--color-text);display:flex;flex:0 0 auto;justify-content:center;padding:7px}.attachment-viewer-content{align-items:center;background:var(--color-text);display:flex;justify-content:center;min-height:0;overflow:auto;position:relative}.attachment-viewer-content>img{height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.attachment-viewer-content>iframe{background:var(--color-surface);border:0;height:100%;width:100%}.attachment-viewer-loading{align-items:center;color:var(--color-on-primary);display:grid;gap:10px;justify-items:center}.spin{animation:attachment-spin .8s linear infinite}@keyframes attachment-spin{to{transform:rotate(360deg)}}.checkbox-label{align-items:center;display:flex;gap:8px}.checkbox-label input{min-height:auto;width:auto}.search{margin-bottom:14px}.card-list,.stack{display:grid;gap:12px}.attachment-bulk-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-top:14px}.attachment-select{accent-color:var(--color-primary);flex:0 0 auto;height:18px;margin:0 0 0 12px;width:18px}.pagination{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:18px}.pagination span{color:var(--color-text-muted);font-size:14px}.item-card{color:inherit;display:grid;gap:8px;min-width:0;padding:14px;text-decoration:none}.item-card>div:first-child{align-items:start;display:flex;gap:12px;justify-content:space-between}.customer-card-actions{align-items:center;justify-content:flex-start}.destructive-actions{border-top:1px solid var(--color-border);margin-top:8px;padding-top:10px}.destructive-actions summary{color:var(--color-text-muted);cursor:pointer;font-size:13px}.destructive-actions .danger-button{margin-top:10px}.item-card p{color:var(--color-text-muted);margin:0;overflow-wrap:anywhere}.item-card span,.item-card small,.timeline-item span{color:var(--color-text-muted)}.status-pill{background:var(--color-surface-muted);border-radius:999px;color:var(--color-text-muted)!important;flex:0 0 auto;font-size:12px;font-weight:800;padding:5px 9px;white-space:nowrap}.status-overdue{background:var(--color-accent-soft);color:#765600!important}.link-card:hover{border-color:var(--color-primary)}.link-card:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px #176b4d2e;outline:none}.check-row{align-items:center;display:flex;gap:10px}.check-row input{min-height:auto;width:auto}.detail-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 360px}.customer-history-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.customer-card-link,.customer-context-link,.card-primary-link,.inline-link{color:inherit;text-decoration:none}.customer-card-link,.customer-context-link,.inline-link{color:var(--color-primary)}.customer-card-link:hover,.customer-context-link:hover,.card-primary-link:hover,.inline-link:hover{text-decoration:underline}.link-card .customer-card-link:hover{text-decoration:none}.card-primary-link{display:block}.data-list{display:grid;gap:12px;margin:0}.data-list div{border-bottom:1px solid var(--color-border-subtle);display:grid;gap:3px;padding-bottom:10px}.data-list dt{color:var(--color-text-muted);font-size:13px}.data-list dd{margin:0;overflow-wrap:anywhere}.action-panel{position:sticky;top:18px}.timeline-item{border-left:3px solid var(--color-primary);display:grid;gap:4px;padding:4px 0 4px 12px}.timeline-item p{margin:0}.timeline-link{align-items:center;color:inherit;grid-template-columns:minmax(0,1fr) auto;text-decoration:none;transition:background .15s ease,border-color .15s ease}.timeline-link:hover{background:var(--color-surface-muted);border-left-color:#0d8a5c}.timeline-link>svg{color:var(--color-text-muted)}.timeline-content{display:grid;gap:4px;min-width:0}.user-card.inactive{background:var(--color-surface-muted);opacity:.72}.user-status{background:var(--color-danger-soft);border-radius:999px;color:#9d2525!important;font-size:12px;font-weight:800;padding:4px 8px}.user-status.active{background:var(--color-success-border);color:var(--color-primary)!important}.user-card-actions{display:flex;flex-wrap:wrap;gap:8px}.user-card-actions button{min-height:38px}.back-link{align-items:center;color:var(--color-primary);display:inline-flex;font-weight:700;gap:6px;text-decoration:none;width:-moz-fit-content;width:fit-content}.occurrence-heading{align-items:start;display:flex;gap:16px;justify-content:space-between}.status-summary{align-items:end;display:grid;flex:0 0 auto;gap:4px;text-align:right}.status-summary span{background:var(--color-success-border);border-radius:999px;color:var(--color-primary);font-size:14px;font-weight:800;padding:6px 10px}.status-summary small,.section-heading p{color:var(--color-text-muted);margin:0}.section-heading{align-items:start;display:flex;justify-content:space-between}.section-heading h2,.panel h2{align-items:center;display:flex;gap:8px}.visit-filters{gap:16px;margin-bottom:14px;padding:16px}.filters-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;min-width:0}.filters-title{align-items:center;color:var(--color-primary);display:inline-flex;flex:0 0 auto;gap:7px}.filters-title h2{color:var(--color-text);font-size:16px;margin:0}.active-filter-chips{display:flex;flex:1 1 280px;flex-wrap:wrap;gap:6px;min-width:0}.active-filter-chip,.filter-quick-chip{align-items:center;background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:999px;color:var(--color-primary);display:inline-flex;font-size:12px;font-weight:800;gap:5px;min-height:30px;padding:5px 9px}.active-filter-chip:hover,.filter-quick-chip:hover{background:var(--color-success-border)}.filters-toolbar-actions{align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:7px;margin-left:auto}.filters-toolbar-actions button{min-height:34px;padding:7px 10px}.visits-filter-grid,.customers-filter-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.customers-filter-grid>input{grid-column:1 / -1}.customers-filter-grid label{color:var(--color-text-muted);display:grid;font-size:12px;font-weight:800;gap:5px;min-width:0}.customers-filter-grid select{min-height:40px}.visits-filter-grid>input{grid-column:span 3}.visits-filter-grid label,.date-range-field{color:var(--color-text-muted);display:grid;font-size:12px;font-weight:800;gap:5px;min-width:0}.visits-filter-grid label select{min-height:40px}.date-range-field>div{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:8px;display:flex;gap:6px;min-height:42px;padding:0 8px}.date-range-field input{border:0;min-height:38px;min-width:0;padding:6px 0}.date-range-field input:focus{outline:0}.date-range-field>div>span{color:#9aaa9f;flex:0 0 auto}.quick-filters{align-items:center;border-top:1px solid var(--color-border-subtle);display:flex;flex-wrap:wrap;gap:10px;padding-top:12px}.quick-filters>span{color:var(--color-text-muted);font-size:12px;font-weight:800}.quick-filters>div{display:flex;flex-wrap:wrap;gap:6px}.filter-quick-chip{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-muted);font-weight:700}.filter-quick-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.customer-list-card{gap:10px}.customer-card-header{align-items:center!important;display:grid!important;gap:10px!important;grid-template-columns:auto minmax(0,1fr) auto}.customer-avatar{align-items:center;background:var(--color-border-subtle);border-radius:999px;color:var(--color-text-muted);display:inline-flex;height:40px;justify-content:center;width:40px}.customer-avatar.monitoring{background:var(--color-success-soft);color:var(--color-primary)}.customer-card-title{display:grid;gap:2px;min-width:0}.customer-card-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-card-title span,.customer-card-meta{color:var(--color-text-muted);font-size:13px}.customer-card-badges{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.customer-badge{background:var(--color-border-subtle);border-radius:999px;color:var(--color-text-muted);font-size:11px;font-weight:800;padding:5px 8px;white-space:nowrap}.customer-badge.positive{background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-text)}.customer-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;padding-left:50px}.customer-card-location{align-items:center;color:var(--color-text-muted)!important;display:flex;gap:6px;margin:0!important;padding-left:50px}.customer-card-location svg{color:var(--color-primary);flex:0 0 auto}.customer-list-card .report-hint{padding-left:50px}.filter-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid>input{grid-column:1 / -1}.filter-grid label{font-size:14px}.filter-clear-button{flex:0 0 auto}.simulated-message{background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:8px;display:grid;gap:6px;padding:12px}.simulated-message span{overflow-wrap:anywhere}.contact-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.contact-actions .button,.contact-actions button{min-height:40px}.whatsapp-button{background:#188b50}.danger-button{background:#a52828}.danger-button:hover{background:#8f2020}.copy-feedback{color:var(--color-primary);font-size:13px;font-weight:700}.final-report-label small{color:var(--color-text-muted);font-size:13px;font-weight:500}.final-report-label.required>textarea{border-color:var(--color-primary)}.error{background:var(--color-danger-soft);border:1px solid var(--color-danger-border);border-radius:8px;color:#a52828;margin:0;padding:10px}.screen-message{display:grid;min-height:100vh;place-items:center}.loading-state{align-content:center;color:var(--color-text-muted);display:grid;gap:9px;justify-items:center;min-height:min(55vh,480px);padding:36px 20px;text-align:center}.loading-state-fullscreen{min-height:100vh}.loading-state>svg{color:var(--color-primary)}.loading-state strong{color:var(--color-text);font-size:17px}.loading-state span{max-width:440px}.loading-progress{background:var(--color-border);border-radius:999px;height:4px;margin-top:6px;overflow:hidden;position:relative;width:min(280px,70vw)}.loading-progress>span{animation:loading-progress-move 1.25s ease-in-out infinite;background:var(--color-primary);border-radius:inherit;height:100%;left:-40%;position:absolute;width:40%}@keyframes loading-progress-move{to{left:100%}}.global-activity{align-items:center;background:var(--color-primary-dark);border-radius:999px;box-shadow:0 8px 24px #17201b38;color:var(--color-on-primary);display:flex;font-size:13px;gap:8px;left:50%;padding:8px 13px;position:fixed;top:12px;transform:translate(-50%);z-index:1200}.long-operation-status{background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:10px;color:var(--color-text-muted);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);margin-top:14px;padding:14px}.long-operation-status>svg{color:var(--color-primary);margin-top:2px}.long-operation-status>div:not(.loading-progress){display:grid;gap:4px}.long-operation-status strong{color:var(--color-text)}.long-operation-status small{color:var(--color-text-muted)}.long-operation-status .loading-progress{grid-column:1 / -1;width:100%}.toast-region{display:grid;gap:10px;max-width:min(420px,calc(100vw - 32px));position:fixed;right:16px;top:16px;z-index:100}.toast{align-items:center;background:var(--color-surface);border:1px solid var(--color-success-border);border-left:4px solid var(--color-primary);border-radius:10px;box-shadow:0 12px 28px #17201b29;color:var(--color-text);display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:12px}.toast svg{color:var(--color-primary)}.toast-error{border-color:var(--color-danger-border);border-left-color:#a52828}.toast-error svg{color:#a52828}.toast button{background:transparent;color:var(--color-text-muted);min-height:30px;padding:4px;width:30px}.technician-visits{display:grid;gap:20px;margin:0 auto;max-width:760px}.technician-shell{grid-template-columns:minmax(0,1fr)}.technician-page-title{display:grid;gap:4px}.technician-page-title h1{font-size:30px;line-height:1.1;margin:0}.technician-page-title>p:last-child{color:var(--color-text-muted);margin:0}.eyebrow{color:var(--color-primary);font-size:13px;font-weight:800;letter-spacing:.04em;margin:0;text-transform:uppercase}.visit-tabs{background:var(--color-surface-muted);border-radius:12px;display:grid;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px}.visit-tab{background:transparent;border-radius:9px;color:var(--color-text-muted);font-size:14px;font-weight:700;gap:6px;min-height:44px;padding:8px;width:100%}.visit-tab:hover{background:var(--color-border)}.visit-tab.active{background:var(--color-surface);box-shadow:0 1px 4px #17201b1f;color:var(--color-primary)}.visit-tab b{background:var(--color-success-border);border-radius:999px;font-size:12px;line-height:20px;min-width:20px}.visit-tab.active b{background:var(--color-primary);color:var(--color-on-primary)}.technician-visit-list{display:grid;gap:12px}.technician-visit-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:inherit;display:grid;gap:10px;padding:18px;text-decoration:none}.technician-visit-card.priority-card-urgent{background:linear-gradient(90deg,var(--color-danger-soft) 0,var(--color-surface) 190px);border-left:4px solid #c93636}.technician-visit-card.priority-card-high{background:linear-gradient(90deg,var(--color-accent-soft) 0,var(--color-surface) 190px);border-left:4px solid #d98218}.technician-visit-card:hover{border-color:var(--color-primary)}.technician-visit-card>strong{font-size:18px}.technician-visit-card p{color:var(--color-text-muted);margin:0}.technician-visit-card small{color:var(--color-text-muted)}.technician-visit-card__header{align-items:center;display:flex;justify-content:space-between}.technician-visit-card__header>svg{color:var(--color-text-muted)}.technician-visit-badges{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.priority-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:850;gap:4px;padding:5px 8px;text-transform:uppercase}.priority-badge-urgent{background:var(--color-danger-soft);color:#a52828}.priority-badge-high{background:var(--color-accent-soft);color:#8a520f}.status-badge{border-radius:999px;font-size:13px;font-weight:800;padding:5px 9px}.status-pending,.status-scheduled,.status-rescheduled{background:var(--color-accent-soft);color:var(--color-warning-text)}.status-on_the_way,.status-in_service{background:var(--color-info-soft);color:var(--color-info-text)}.status-completed{background:var(--color-success-soft);color:var(--color-success-text)}.status-canceled,.status-not_completed{background:var(--color-danger-soft);color:var(--color-danger-text)}.visit-meta{color:var(--color-text-muted);display:grid;font-size:14px;gap:7px}.visit-meta span{align-items:center;display:flex;gap:7px;overflow-wrap:anywhere}.visit-meta svg{color:var(--color-primary);flex:0 0 auto}.empty-visits{align-items:center;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:12px;color:var(--color-text-muted);display:grid;gap:8px;justify-items:center;padding:36px 20px;text-align:center}.empty-visits svg{color:var(--color-primary)}.empty-visits span{color:var(--color-text-muted);font-size:14px}@media (max-width: 760px){.app-shell{display:block;min-height:100dvh;width:100%}.sidebar{align-items:center;flex-direction:row;gap:12px;overflow:hidden;padding:12px 16px}.sidebar>div{flex:0 0 auto}.sidebar>div span{display:none}.sidebar-menu{display:flex;flex:initial;gap:4px;min-width:0;overflow-x:auto;overflow-y:hidden}.sidebar a{flex:0 0 auto;padding:9px 10px}.sidebar a.settings-nav-item{border-top:0;border-radius:8px;margin-top:0;padding-top:9px}.sidebar-settings{margin-top:0}.topbar{min-height:58px;padding:9px 16px}.notification-popover{right:-48px;width:min(360px,calc(100vw - 24px))}main{padding:16px}.two-column,.detail-grid,.customer-history-grid,.metric-grid{grid-template-columns:1fr}.form,.action-panel{position:static}.form-hero{display:grid}.page-title-row,.modal-header,.modal-actions,.report-section-header{align-items:stretch;display:grid}.modal-backdrop{align-items:stretch;padding:12px}.modal-panel{max-height:calc(100dvh - 24px)}.modal-actions button{width:100%}.attachment-queue-header{align-items:stretch;display:grid}.attachment-queue-header button{width:100%}.attachment-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-viewer-backdrop{padding:8px}.attachment-viewer{height:calc(100dvh - 16px);width:calc(100vw - 16px)}.page-title-row>button{width:100%}.form-hero button{width:100%}.report-stats,.report-tabs{grid-template-columns:1fr;width:100%}.report-tabs button{width:100%}.equatorial-shortcut{align-items:stretch;display:grid}.equatorial-shortcut a{justify-content:center;width:100%}.report-item{align-items:start;grid-template-columns:40px minmax(0,1fr)}.report-item button,.report-actions{grid-column:1 / -1;width:100%}.report-actions button{flex:1}.form-grid,.visit-location-row,.visit-schedule-row,.mode-toggle{grid-template-columns:1fr}.mode-toggle{width:100%}.visit-technician-row{max-width:none}.form-wide{grid-column:auto}.technician-shell .topbar{background:var(--color-sidebar);border:0;color:var(--color-on-primary)}.technician-shell main{background:var(--color-background);min-height:calc(100dvh - 58px)}.technician-page-title h1{font-size:28px}.occurrence-heading{display:grid}.filter-grid{grid-template-columns:1fr}.filter-grid>input{grid-column:auto}.visit-filters .section-heading,.visits-heading{align-items:start;display:grid;gap:10px}.visit-list-actions{justify-content:stretch;width:100%}.visit-list-actions button{flex:1}.filter-clear-button{width:100%}.status-summary{align-items:start;text-align:left}.visit-tabs{margin:0 -2px}.visit-tab{font-size:12px;gap:4px;min-height:42px;padding:6px 4px}.visit-tab svg{display:none}.technician-visit-card{padding:16px}.contact-actions{display:grid;grid-template-columns:1fr 1fr}.user-card-actions button{flex:1 1 120px}.contact-actions .button,.contact-actions button{width:100%}.copy-feedback{grid-column:1 / -1}.filters-toolbar-actions{margin-left:0}.visits-filter-grid,.customers-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customers-filter-grid>input{grid-column:1 / -1}.visits-filter-grid>input{grid-column:1 / -1}.date-range-field{grid-column:1 / -1}}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar{align-items:center;align-self:auto;flex-direction:row;gap:12px;height:auto;overflow:hidden;padding:14px;position:static}.sidebar>div{display:flex;gap:8px;justify-content:space-between}.sidebar-menu{display:flex;flex:1;flex-direction:row;gap:6px;min-width:0;overflow-x:auto;overflow-y:hidden}.sidebar a{flex:0 0 auto}.sidebar-settings{margin-top:0}main{padding:16px}.two-column,.detail-grid,.metric-grid{grid-template-columns:1fr}.form,.action-panel{position:static}.detail-page .action-panel{order:-1}.action-panel button,.action-panel .button,.detail-page .button{width:100%}}@media (max-width: 560px){.toast-region{left:12px;max-width:none;right:12px;top:12px}.toast button{width:30px}button,.button{width:100%}.active-filter-chip,.filter-quick-chip{width:auto}.sidebar{padding:12px}.sidebar>div{align-items:baseline}.sidebar-menu{margin-inline:-12px;padding-inline:12px}.sidebar a{font-size:14px;padding:9px 10px}.topbar{padding:10px 14px}.topbar .icon-button{min-height:40px;width:40px}.login-panel h1,.page-title h1{font-size:24px}.item-card div{display:grid}.customer-card-header{grid-template-columns:auto minmax(0,1fr)!important}.customer-card-badges{grid-column:1 / -1;justify-content:flex-start;margin-left:50px}.panel,.item-card,.metric{padding:14px}.detail-grid{gap:12px}}.sidebar{background:var(--color-sidebar);color:var(--color-on-primary)}.sidebar-brand{align-items:center;display:flex;gap:11px}.sidebar-brand img{height:46px;-o-object-fit:contain;object-fit:contain;width:46px}.sidebar-brand strong{color:var(--color-on-primary);font-size:18px;letter-spacing:.02em}.sidebar a{color:#dbe4ed}.sidebar a.active{background:var(--color-accent);color:var(--color-primary-dark);font-weight:800}.login-panel{border-top:4px solid var(--color-accent);box-shadow:0 18px 55px rgb(var(--shadow-color) / .14)}.theme-settings-card>svg,.settings-card>svg,.settings-profile-heading>svg,.settings-password-heading>svg{color:var(--color-accent)}button.secondary:hover,.button.secondary:hover{background:var(--color-border);color:var(--color-text)}@media (max-width: 560px){.sidebar-brand{align-items:center!important}.sidebar-brand img{height:38px;width:38px}}
