/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-500:oklch(64.5% .246 16.439);--color-slate-100:#14313e;--color-slate-200:#294854;--color-slate-500:#9cb8c5;--color-slate-800:#e5eff4;--color-white:#e9f3f7;--spacing:.25rem;--container-sm:24rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--font-weight-semibold:600;--font-weight-bold:700;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.h-6{height:calc(var(--spacing)*6)}.h-12{height:calc(var(--spacing)*12)}.min-h-screen{min-height:100vh}.w-6{width:calc(var(--spacing)*6)}.w-12{width:calc(var(--spacing)*12)}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.list-disc{list-style-type:disc}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-slate-200{border-color:var(--color-slate-200)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.pl-5{padding-left:calc(var(--spacing)*5)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-rose-500{color:var(--color-rose-500)}.text-slate-500{color:var(--color-slate-500)}.text-slate-800{color:var(--color-slate-800)}.text-white{color:var(--color-white)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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,)}@media(hover:hover){.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}}}:root{color:#e8f3f7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color-scheme:dark;--bg:#071c25;--surface:#0d2732;--surface-inset:#091f2a;--edge:#254650;--text:#e8f3f7;--muted:#9ab7c6;--ice:#a7dbff;--cyan:#3dbce9;--mint:#63d9af;--amber:#e6b179;--red:#ff8d8d;background:#071c25;font-family:system-ui,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--ice);outline-offset:4px}h1,h2,h3,p{margin:0}h3{font-size:14px;font-weight:600}svg{flex-shrink:0}small{font-size:11px}.muted,.text-muted{color:var(--muted)}.mono{font-family:Cascadia Code,Consolas,monospace}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.app{background:radial-gradient(ellipse at 70% -5%,#19435165,transparent 45%),var(--bg);min-height:100vh}.sidebar{z-index:50;background:linear-gradient(160deg,#0d2833,#081d26 65%);border-right:1px solid #254650a6;flex-direction:column;width:228px;padding:30px 16px 16px;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{color:#bee6ff;letter-spacing:-.6px;align-items:center;gap:10px;font-size:23px;font-weight:650;display:flex}.brand svg{width:29px;height:29px}.sidebar .brand{padding:0 12px}.brand-caption{letter-spacing:2.7px;color:#8cadbc;padding:8px 12px 31px;font-size:8px}.nav-group{margin-bottom:21px}.nav-label{color:#789aa9;letter-spacing:1.8px;margin:0 14px 9px;font-size:9px;font-weight:600}.nav-item{color:#a8c3cf;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;min-height:44px;margin:3px 0;padding:10px 14px;font-size:12px;font-weight:500;display:flex}.nav-item svg{width:17px;height:17px}.nav-item:hover{color:#e7f5ff;background:#173744}.nav-item.active{color:#d6edff;box-shadow:inset 3px 0 var(--ice);background:linear-gradient(110deg,#244b62,#173747);border-color:#365c70}.nav-item.active svg{color:var(--ice)}.sidebar-bottom{margin-top:auto}.sidebar-tagline{border-top:1px solid #274550;margin-top:10px;padding:18px 14px}.sidebar-tagline p{color:#9cbdca;font-size:11px;line-height:1.7}.sidebar-tagline small{text-transform:uppercase;letter-spacing:1.5px;color:#7298a8;font-size:8px}.sidebar-mobile-close{display:none}.app-body{min-width:0;margin-left:228px}.topbar{background:#081d2550;border-bottom:1px solid #2946508c;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:0 32px;display:flex}.topbar-left,.topbar-right{align-items:center;gap:20px;display:flex}.breadcrumb{letter-spacing:1.8px;color:#8db0c1;text-transform:uppercase;font-size:10px}.breadcrumb span{color:#557b8c;margin:0 10px}.global-search{color:#91afbd;text-align:left;background:#14303b;border:1px solid #284958;border-radius:7px;align-items:center;gap:9px;min-width:245px;padding:10px 12px;font-size:11px;display:flex}kbd{border:1px solid #3a5661;border-radius:3px;margin-left:auto;padding:1px 4px;font-size:10px}.account{border-left:1px solid #28434e;align-items:center;gap:10px;padding-left:20px;display:flex}.account strong{font-size:11px;font-weight:600;display:block}.account small{color:#a2bfcc;font-size:9px}.avatar{--avatar-tone:#639aab;background:radial-gradient(circle at 25% 20%,#edf3f43d,transparent 70%),var(--avatar-tone);color:#fff;letter-spacing:.2px;border:2px solid #aec7d3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:10px;font-weight:650;display:inline-flex;box-shadow:0 2px 6px #0003}.avatar-small{border-width:1px;width:25px;height:25px;font-size:8px}.icon-button{color:#b6d7e6;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-button:hover{background:#153643;border-color:#33525e}.mobile-menu{display:none}.app-main{max-width:1600px;margin:auto;padding:30px 32px 20px}.eyebrow{color:#8aafc1;text-transform:uppercase;letter-spacing:2px;margin-bottom:9px;font-size:9px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.page-header h1{letter-spacing:-.9px;font-size:29px;font-weight:550;line-height:1.2}.page-header p{color:#9bb9c7;margin-top:7px;font-size:12px;line-height:1.6}.page-actions{align-items:center;gap:10px;display:flex}.btn{min-height:44px;transition:transform .1s var(--ease-out);white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:9px 15px;font-size:11px;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transition-duration:var(--motion-short);transform:scale(.97)}.btn-primary{color:#102839;background:linear-gradient(#b6e2ff,#92c8ef);border-color:#b4e2ff;box-shadow:inset 0 1px #e3f6ff80,0 3px 12px #01121d33}.btn-primary:hover{background:#c9eaff;box-shadow:0 0 15px #7dbbea20}.btn-secondary{color:#bdd9e7;background:#12303d;border-color:#305362}.btn-secondary:hover{background:#1a3a49}.btn-danger{color:#ffd0d0;background:#6e333840;border-color:#aa68684d}.btn-small{padding:5px 10px;font-size:10px}.text-link{color:#9ed7ff;align-items:center;gap:6px;min-height:44px;font-size:10px;display:inline-flex}.text-link:hover{color:#d6f1ff}.date-chip{color:#b8d7e7;background:#12303d;border:1px solid #31505e;border-radius:7px;align-items:center;gap:8px;min-height:44px;padding:8px 13px;font-size:11px;display:flex}.panel{background:linear-gradient(135deg,#112d396b,#0000 65%),#0b242ee0;border:1px solid #2d4c586b;border-radius:12px;overflow:hidden;box-shadow:0 7px 24px #00000012,inset 0 1px #b9eaff05}.panel-header{border-bottom:1px solid #28475170;justify-content:space-between;align-items:center;gap:12px;min-height:63px;padding:15px 19px;display:flex}.panel-header h2{align-items:center;gap:9px;font-size:12px;font-weight:600;display:flex}.panel-header h2 svg{color:#a6d7ed;width:16px;height:16px}.panel-header p{color:#90aeba;margin-top:3px;font-size:10px}.panel-body{padding:19px}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:23px;display:grid}.metric{background:linear-gradient(125deg,#173742bd,#0e2631 85%);align-items:flex-start;gap:15px;min-height:119px;padding:19px;display:flex;position:relative}.metric-icon{color:#59c5f4;background:#1a566331;border:1px solid #3885a246;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.metric-icon.green{color:#71deb8;background:#2b7b6130;border-color:#3d856849}.metric-icon.amber{color:var(--amber);background:#81654227;border-color:#977e543b}.metric-icon.red{color:#ff9898;background:#8f414125;border-color:#9d5c4933}.metric-number{letter-spacing:-.8px;padding:1px 0 7px;font-size:27px;font-weight:500;line-height:1}.metric-label{color:#b9d1dd;font-size:10px}.metric-note{color:#86acbc;margin-top:12px;font-size:9px}.metric-note.green{color:#7fdcb7}.metric-spark{opacity:.6;position:absolute;bottom:15px;right:16px}.dashboard-top{grid-template-columns:1.12fr 1fr;gap:20px;margin-bottom:20px;display:grid}.today-list{padding:0 18px}.today-job{width:100%;min-height:68px;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #2c4a553e;grid-template-columns:47px 37px 1fr auto 12px;align-items:center;gap:11px;padding:9px 0;display:grid}.today-job:last-child{border-bottom:0}.today-job:hover{background:#23445145}.job-time{color:#c9dce7;font-variant-numeric:tabular-nums;font-size:10px}.job-title{margin-bottom:5px;font-size:11px;font-weight:550}.job-description{color:#92b0c0;font-size:9px}.property-thumb{background:linear-gradient(#78909d,#b3c5cd 70%);border:1px solid #778f9955;border-radius:6px;flex-shrink:0;width:37px;height:36px;display:inline-flex;overflow:hidden}.property-thumb svg{width:100%;height:100%}.thumb-cafe{background:linear-gradient(#a9a6a2,#d4c2ac)}.thumb-house{background:linear-gradient(#81a1ac,#b0c3b6)}.property-large{width:67px;height:61px}.badge{color:#c0d9e5;white-space:nowrap;background:#2444505c;border:1px solid #47687961;border-radius:5px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;line-height:1.3;display:inline-flex}.badge i{background:currentColor;border-radius:50%;width:4px;height:4px;display:inline-block}.status-completed,.payment-paid{color:#a7ead0;background:#22694e59;border-color:#3c8b6847}.status-confirmed{color:#bbdfff;background:#1a527745;border-color:#377ba652}.status-on_site{color:#a7d9ff;background:#19567f8c;border-color:#377aa75e}.status-pending,.payment-partial{color:#edcea6;background:#71543238;border-color:#92744747}.status-cancelled{color:#9fb9c5;background:#3b515c38}.payment-unpaid{color:#ffc4b5;background:#8145393e;border-color:#9d685949}.chart-controls{color:#b5d5e4;background:#11303c;border:1px solid #2c5060;border-radius:5px;min-height:32px;padding:5px 8px;font-size:9px}.chart-area{grid-template-columns:27px 1fr;gap:9px;height:190px;margin:13px 19px 0;display:grid}.chart-axis{color:#7295a5;flex-direction:column;justify-content:space-between;padding-bottom:27px;font-size:8px;display:flex}.chart-bars{background:repeating-linear-gradient(0deg,#0000 0,#0000 39px,#2d4e5d3b,#0000 41px);border-bottom:1px solid #2c4e5c;justify-content:space-around;align-items:flex-end;gap:18px;padding:0 10px 26px;display:flex;position:relative}.chart-column{flex:1;align-items:flex-end;max-width:28px;height:100%;display:flex;position:relative}.chart-stack{border:1px solid #689ab84f;border-radius:4px 4px 0 0;flex-direction:column-reverse;width:100%;min-height:2px;display:flex;position:relative;overflow:hidden}.chart-stack span{width:100%;min-height:1px;display:block}.chart-completed{background:linear-gradient(#45c2ed,#5aade0)}.chart-progress{background:#3a88bb}.chart-scheduled{opacity:.7;background:#648ea4}.chart-column small{color:#90adba;font-size:8px;position:absolute;bottom:-19px;left:50%;transform:translate(-50%)}.chart-legend{color:#a5c1cd;border-bottom:1px solid #29475455;gap:17px;padding:15px 20px;font-size:8px;display:flex}.legend-dot{border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.chart-summary{grid-template-columns:repeat(3,1fr);gap:15px;padding:13px 20px 18px;display:grid}.chart-summary strong{font-size:19px;font-weight:500}.chart-summary small{color:#8eacba;margin-top:4px;font-size:8px;display:block}.dashboard-middle{grid-template-columns:310px 1fr;gap:20px;margin-bottom:20px;display:grid}.dispatch-list{padding:0 16px}.dispatch-person{border-bottom:1px solid #2c4a5545;align-items:center;gap:11px;padding:12px 0;display:flex}.dispatch-person:last-child{border-bottom:0}.dispatch-person strong{font-size:11px;font-weight:550}.dispatch-person p{color:#91b1bf;margin-top:4px;font-size:9px}.dispatch-state{background:var(--mint);border-radius:50%;width:6px;height:6px;margin-left:auto;box-shadow:0 0 0 3px #53b99b16}.dispatch-foot{color:#87a9b9;border-top:1px solid #2949576b;align-items:center;gap:6px;padding:13px 16px;font-size:9px;display:flex}.table-wrap{contain:paint;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:11px}.data-table th{color:#8caebf;letter-spacing:.15px;white-space:nowrap;background:#081e272c;border-bottom:1px solid #2c4b5769;padding:12px 17px;font-size:9px;font-weight:500}.data-table td{vertical-align:middle;border-bottom:1px solid #2b46523d;padding:13px 17px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#2548582b}.client-cell{align-items:center;gap:9px;display:flex}.client-cell strong{font-size:10px;font-weight:550;display:block}.client-cell small{color:#89a8b9;margin-top:4px;font-size:8px;display:block}.technician-cell{align-items:center;gap:7px;font-size:9px;display:flex}.table-chevron{color:#a3c7d8;background:0 0;border:0;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;display:inline-flex}.table-chevron:hover{background:#234857;border-radius:5px}.job-board-header{flex-wrap:wrap}.tab-bar{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tab-bar button{color:#9ebccb;background:#102a35;border:1px solid #2b48564f;border-radius:6px;min-height:44px;padding:7px 11px;font-size:10px}.tab-bar button.active,.tab-bar button[aria-selected=true]{color:#d9eeff;background:#234859;border-color:#407187}.tab-count{background:#abcfe022;border-radius:3px;margin-left:5px;padding:1px 4px;font-size:8px}.dashboard-bottom{grid-template-columns:1fr 1fr 1fr;gap:20px;display:grid}.attention-row{border-bottom:1px solid #29465240;align-items:flex-start;gap:10px;padding:12px 18px;display:flex}.attention-row:last-child{border-bottom:0}.attention-row svg{color:#e6b179;margin-top:2px}.attention-row strong{font-size:10px;font-weight:550}.attention-row small{color:#98b7c5;margin-top:4px;font-size:9px;line-height:1.6;display:block}.attention-row .text-link{margin-left:auto}.activity-dot{background:#82cdf5;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.payment-row{border-bottom:1px solid #29465240;align-items:center;gap:10px;padding:13px 18px;display:flex}.payment-row strong{font-size:11px}.payment-row small{color:#8dafbf;margin-top:4px;font-size:9px;display:block}.payment-row .badge{margin-left:auto}.app-footer{color:#7295a5;justify-content:space-between;align-items:center;gap:10px;padding:26px 0 4px;font-size:9px;display:flex}.app-footer strong{color:#9ed2e8;letter-spacing:1.1px;margin-right:9px;font-size:10px}.local-tag{color:#9bbaca;border:1px solid #36515d;border-radius:4px;padding:4px 7px;font-size:9px}.page-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.search-field{flex:1;min-width:170px;max-width:380px;position:relative}.search-field svg{color:#91afbf;width:17px;height:17px;position:absolute;top:13px;left:12px}.search-field input{padding-left:38px}.field{flex-direction:column;gap:7px;display:flex}.field label{color:#afcbd9;font-size:12px;font-weight:550}.field-hint{color:#8daebb;font-size:12px;line-height:1.5}.field-input{color:#daebf4;background:#0a202b;border:1px solid #365362;border-radius:7px;width:100%;min-height:44px;padding:10px 12px;font-size:12px}.field-input:focus{border-color:#9bcbe8;outline:none;box-shadow:0 0 0 2px #8dc8ef20}.field-input::placeholder{color:#7699aa}select.field-input{cursor:pointer}textarea.field-input{resize:vertical;min-height:92px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-stack{flex-direction:column;gap:17px;display:flex}.form-actions,.modal-actions{border-top:1px solid #284955;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;padding-top:20px;display:flex}.full-span{grid-column:1/-1}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.detail-grid dt{color:#90b1c1;margin-bottom:6px;font-size:10px}.detail-grid dd{margin:0;font-size:12px;line-height:1.6}.notice{color:#e9cba5;background:#745b352b;border:1px solid #a283584d;border-radius:7px;padding:12px 15px;font-size:11px;line-height:1.7}.notice.error,.error-message{color:#ffc1bd;background:#8544432b;border-color:#a9656552}.notice.success{color:#a9eacb;background:#2965492e;border-color:#639a7052}.error-message{border:1px solid #a9656552;border-radius:7px;padding:12px;font-size:12px;line-height:1.6}.empty-state{color:#a0bdcd;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:38px 20px;display:flex}.empty-state h3{color:#dcebf4;font-weight:550}.empty-state p{max-width:400px;font-size:12px;line-height:1.7}.error-state{color:#f0b3b2;gap:15px;padding:25px;display:flex}.error-state p{color:#bdcdd5;margin:9px 0 14px;font-size:12px}.arctic-modal{color:#e4f1f8;background:linear-gradient(130deg,#143440,#0c2530);border:1px solid #497386;border-radius:13px;width:calc(100% - 32px);max-width:540px;max-height:calc(100dvh - 40px);margin:auto;padding:0;position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;box-shadow:0 24px 100px #0009}.arctic-modal::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#020f19c9}.arctic-modal[open]{animation:modal-in var(--motion-standard)var(--ease-out)}.modal-sm{max-width:410px}.modal-lg{max-width:760px}.modal-header{border-bottom:1px solid #36505e;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px;display:flex}.modal-header h2{letter-spacing:-.3px;font-size:19px;font-weight:550}.modal-header p{color:#91b3c5;margin-top:7px;font-size:11px}.modal-content>form,.modal-content>.modal-body{padding:23px 24px}.modal-content>.tab-bar{padding:12px 20px 0}.search-modal-content{padding:20px}.search-results{padding-top:14px}.search-result{color:#d7eaf5;text-align:left;background:0 0;border:0;border-bottom:1px solid #294b593d;align-items:center;gap:12px;width:100%;min-height:55px;padding:12px 5px;display:flex}.search-result:hover{background:#1c3e4d}.search-result small{color:#91b1c3;margin-top:4px;display:block}.search-result>svg:last-child{margin-left:auto}.checkbox-row{border-bottom:1px solid #2c4f5b55;align-items:flex-start;gap:10px;min-height:44px;padding:12px 0;font-size:12px;display:flex}input[type=checkbox]{accent-color:#8ac9f4;width:17px;height:17px}.work-order-summary{border-bottom:1px solid #2c4c5b;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:22px;display:flex}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day{border-bottom:1px solid #2e4b5855;border-right:1px solid #2e4b5855;min-height:134px;padding:12px 9px}.calendar-day.today{background:#1b4a6133}.calendar-event{text-align:left;border:1px solid var(--edge);width:100%;color:var(--text);background:#1c4a654d;border-radius:4px;margin-top:6px;padding:8px 6px;font-size:10px;display:block}.calendar-event small{color:#aac5d4;font-size:8px}.calendar-week-header{text-align:center;background:#12303d;border-bottom:1px solid #2d4d5b;padding:12px;font-size:11px}.report-bars{flex-direction:column;gap:15px;display:flex}.report-bar{background:#1b3c4b;border-radius:4px;height:7px;overflow:hidden}.report-bar>span{background:linear-gradient(90deg,#4b9dcc,#a5d8f6);height:100%;display:block}.settings-grid,.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:20px;display:grid}.stat-grid .panel{padding:22px}.stat-grid strong{margin-top:10px;font-size:25px;font-weight:500;display:block}.login-page{background:radial-gradient(at 15% 0,#265d6b90,#0000 65%),#061b24;grid-template-columns:1.15fr 1fr;min-height:100dvh;display:grid}.login-story{border-right:1px solid #3856676b;flex-direction:column;padding:48px 8vw;display:flex;position:relative;overflow:hidden}.login-story .brand{font-size:26px}.login-story-content{z-index:1;margin:auto 0;padding:55px 0;position:relative}.login-story h1{letter-spacing:-2px;margin:23px 0;font-size:clamp(38px,4.2vw,67px);font-weight:450;line-height:1.09}.login-story h1 span{color:#a1d5f0}.login-story-content>p{color:#96bdce;max-width:360px;font-size:14px;line-height:1.85}.login-benefits{gap:36px;margin-top:38px;display:flex}.login-benefits div{color:#b4d3e2;flex-direction:column;gap:11px;font-size:11px;line-height:1.6;display:flex}.login-benefits svg{color:#a8ddf6;width:25px;height:25px}.login-circles{border:1px solid #85bcd82b;border-radius:50%;width:490px;height:490px;position:absolute;bottom:-230px;right:-190px;box-shadow:0 0 0 60px #85bcd806,0 0 0 120px #85bcd805,0 0 0 180px #85bcd803}.login-form-side{background:linear-gradient(#0b26324a,#071a23);flex-direction:column;justify-content:center;align-items:center;padding:45px;display:flex}.login-form-wrap{width:100%;max-width:375px}.login-form-wrap h2{letter-spacing:-.8px;font-size:29px;font-weight:500}.login-form-wrap>p{color:#96b6c7;margin:11px 0 30px;font-size:12px;line-height:1.8}.login-form-wrap .btn{width:100%}.login-form-wrap form{flex-direction:column;gap:19px;display:flex}.login-note{color:#819fac;text-align:center;margin-top:24px;font-size:10px;line-height:1.8}.demo-card{background:#13303a;border:1px solid #335462;border-radius:8px;margin-top:26px;padding:15px}.demo-card p{color:#acc9d7;margin-bottom:12px;font-size:10px;line-height:1.7}.demo-card strong{color:#d0e5f2;font-weight:550}.demo-card .btn{min-height:40px}.login-brand-footer{color:#84a8b8;font-size:10px;line-height:1.8}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin var(--motion-continuous)linear infinite}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.app-main{padding-top:38px}.dashboard-top{grid-template-columns:1.15fr 1fr}}@media(max-width:1250px){.sidebar{width:200px;padding-left:11px;padding-right:11px}.app-body{margin-left:200px}.app-main{padding:25px 23px 18px}.topbar{padding:0 23px}.breadcrumb{display:none}.dashboard-middle{grid-template-columns:260px 1fr}.metric{gap:10px;padding:16px}.metric-icon{width:32px;height:32px}.global-search{min-width:270px}.today-job{grid-template-columns:40px 34px 1fr auto;gap:8px}.today-job>svg{display:none}.data-table th,.data-table td{padding:11px 12px}.dashboard-bottom{gap:15px}}@media(max-width:1020px){.sidebar{width:228px;transition:transform var(--motion-standard)var(--ease-drawer);transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.sidebar-mobile-close{display:flex;position:absolute;top:8px;right:8px}.app-body{margin-left:0}.mobile-menu{display:flex}.nav-backdrop{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#010f1bb5;position:fixed;top:0;right:0;bottom:0;left:0}.topbar{min-height:65px}.topbar-left{gap:10px}.dashboard-middle{grid-template-columns:275px 1fr}.login-story{padding:40px 6vw}.login-benefits{gap:20px}}@media(max-width:760px){.topbar{gap:12px;padding:0 14px}.account{padding-left:10px}.account div{display:none}.topbar-right{gap:3px}.global-search{width:auto;min-width:0;padding:10px}.global-search kbd{display:none}.global-search span{max-width:160px;font-size:10px}.app-main{padding:22px 17px 15px}.page-header{gap:16px;margin-bottom:22px}.page-header h1{font-size:26px}.page-header p{font-size:11px}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:12px}.metric{min-height:109px}.metric-note{font-size:8px}.metric-number{font-size:25px}.metric-spark{display:none}.dashboard-top,.dashboard-middle{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.dispatch-list{grid-template-columns:repeat(2,1fr);gap:0 20px;display:grid}.dashboard-bottom{grid-template-columns:1fr;gap:16px}.chart-area{height:165px}.today-job{grid-template-columns:43px 37px 1fr auto;min-height:67px}.app-footer{flex-direction:column;align-items:flex-start;font-size:8px}.settings-grid,.card-grid{grid-template-columns:1fr}.calendar-grid{min-width:680px}.calendar-day{min-height:110px}.stat-grid,.login-page{grid-template-columns:1fr}.login-story{border-bottom:1px solid #37586b;border-right:0;padding:27px}.login-story-content{padding:25px 0}.login-story h1{letter-spacing:-1.5px;font-size:41px}.login-story-content>p{font-size:12px}.login-benefits{display:none}.login-form-side{padding:35px 27px}.login-brand-footer{display:none}}@media(max-width:420px){.app-main{padding:19px 12px 12px}.page-header h1{font-size:24px}.page-actions{justify-content:space-between;width:100%}.metrics-grid{gap:9px}.metric{gap:8px;padding:13px 10px}.metric-icon{width:27px;height:27px}.metric-icon svg{width:15px}.metric-label{font-size:9px}.metric-note{max-width:100px;line-height:1.6}.panel-header{padding:12px 14px}.today-list{padding:0 12px}.today-job{grid-template-columns:35px 30px 1fr;gap:7px}.today-job .badge{grid-column:3;width:max-content;margin-top:-7px;margin-bottom:4px}.today-job .property-thumb{width:30px;height:31px}.job-title{font-size:10px}.today-job{padding-top:11px}.dispatch-list,.form-grid,.detail-grid{grid-template-columns:1fr}.modal-header{padding:17px}.modal-content>form,.modal-content>.modal-body{padding:18px}.global-search span{white-space:nowrap;text-overflow:ellipsis;width:110px;overflow:hidden}.topbar-left{gap:3px}.account{border-left:0;padding-left:0}.topbar{gap:5px;padding:0 7px}.topbar-right>.icon-button{width:34px}.chart-summary{gap:7px;padding:15px}.chart-summary strong{font-size:17px}.chart-legend{gap:10px;padding:13px 15px;font-size:7px}.login-story h1{font-size:37px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.sidebar{transition:none!important}.btn:active:not(:disabled){transform:none!important}.arctic-modal[open]{animation:modal-fade var(--motion-short)ease-out}}@media print{:root{color-scheme:light}body{color:#000;background:#fff}.sidebar,.topbar,.app-footer,.btn,.icon-button,.tab-bar{display:none!important}.app-body{margin:0}.arctic-modal{color:#000;width:100%;max-width:none;max-height:none;box-shadow:none;background:#fff;border:0;position:static}.arctic-modal::backdrop{background:0 0}.panel{color:#000;background:#fff;border-color:#ccc}}.skip-link{z-index:500;color:#122e3a;background:#b4ddf7;border-radius:6px;padding:12px 18px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-stack{flex-direction:column;gap:20px;display:flex}.page-stack>.page-header{margin-bottom:2px}.panel>.page-toolbar{margin:0;padding:18px}.panel>.tab-bar{padding:0 18px 17px}.data-table td>small{color:#93b1c0;margin-top:6px;font-size:10px;line-height:1.6;display:block}.data-table td>strong{font-weight:550}.text-button{color:#cfebff;text-align:left;background:0 0;border:0;min-height:44px;padding:8px 0;font-size:12px;font-weight:550}.text-button:hover{color:#9edaff;text-decoration:underline}.text-amber{color:#efc590}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.notice-error,.notice.notice-error{color:#ffbdb7;background:#723b372d;border-color:#9d6a6552}.notice-warning{color:#e8c99e}.notice-success{color:#abebd2;background:#24674d33;border-color:#558f724a}.workorder-heading{align-items:center;gap:13px;margin-bottom:22px;display:flex}.workorder-heading h3{margin-bottom:5px;font-size:18px}.workorder-heading p{color:#97b7c8;font-size:11px}.workorder-heading>.badge{margin-left:auto}.avatar-lg{width:50px;height:50px;font-size:14px}.workorder-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.inspection-list{flex-direction:column;gap:4px;display:flex}.inspection-item{color:#cee2ee;border-bottom:1px solid #3657665a;align-items:center;gap:11px;min-height:44px;padding:12px 0;font-size:12px;display:flex}.history-list{flex-direction:column;gap:0;display:flex}.history-entry{border-bottom:1px solid #35536155;padding:14px 0;font-size:12px;line-height:1.7}.history-entry small{color:#a0bfce;font-size:10px;display:block}.invoice-heading{align-items:flex-start;gap:16px;margin-bottom:23px;display:flex}.invoice-total{background:#16323e;border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:17px 0;padding:20px;font-size:12px;display:flex}.invoice-total strong{font-size:19px;font-weight:550}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-card{padding:20px}.metric-card>svg{color:#8cccfa;margin-bottom:14px}.metric-card strong{letter-spacing:-.7px;margin-top:8px;font-size:24px;font-weight:500;display:block}.report-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.report-note{font-size:11px;line-height:1.8}.report-bars{font-size:12px}.progress-track{background:#193c4c;border-radius:5px;height:7px;margin-top:10px;overflow:hidden}.progress-fill{background:#7abbeb;border-radius:5px;height:100%}.progress-completed{background:#69c8a7}.progress-on_site{background:#459cd2}.progress-cancelled{background:#688898}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.team-grid>.panel{padding:20px}.stat{flex-direction:column;gap:8px;display:flex}.stat strong{font-size:22px;font-weight:500}.calendar-navigation{align-items:center;gap:10px;display:flex}.calendar-navigation h3{text-align:center;min-width:180px}.calendar-header{text-align:center;color:#a5c8d9;background:#122f3c;border-bottom:1px solid #32535f;padding:12px;font-size:11px}.calendar-day-header{justify-content:space-between;align-items:center;gap:5px;margin-bottom:12px;font-size:11px;display:flex}.calendar-day.is-today{background:#20445a49}.calendar-day.outside-month{opacity:.5}.calendar-meta{color:#92b3c4;padding:15px;font-size:11px}.calendar-empty{color:#769bad;padding:12px 0;font-size:10px}.calendar-events{flex-direction:column;gap:5px;display:flex}.calendar-event strong{margin-bottom:4px;font-size:11px;font-weight:550;display:block}.event-completed{border-color:var(--mint);background:#1c5a4d55}.event-on_site{border-color:var(--ice)}.event-pending{border-color:var(--amber);background:#644c342c}.event-cancelled{color:var(--muted);border-color:var(--edge)}.calendar-day-view{grid-template-columns:1fr;display:grid}.calendar-day-view .calendar-day{min-height:260px}.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr))}.unit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}@media(max-width:1050px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid,.team-grid,.unit-grid{grid-template-columns:1fr}.calendar-navigation{flex-wrap:wrap}.calendar-navigation h3{min-width:110px}.calendar-day-view{min-width:0}}@media(max-width:420px){.metric-card{padding:15px}.metric-card strong{font-size:20px}.workorder-heading{flex-wrap:wrap}.workorder-heading>.badge{margin-left:0}}@media print{body:has(.invoice-document) *{visibility:hidden}body:has(.invoice-document) .invoice-document,body:has(.invoice-document) .invoice-document *{visibility:visible}.invoice-document{color:#000;background:#fff;width:100%;padding:20px;position:absolute;top:0;right:0;bottom:0;left:0}.invoice-document .muted{color:#555}.invoice-document .badge{color:#000;border-color:#ccc}.invoice-document .invoice-total{background:#eee}}.drawer-dialog{width:228px;max-width:calc(100vw - 40px);height:100dvh;max-height:100dvh;color:inherit;background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0 auto 0 0}.drawer-dialog:not([open]){display:none}.drawer-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#010f1bb5}.drawer-dialog .drawer-sidebar{width:100%;height:100%;position:relative;inset:auto;overflow-y:auto;transform:none}@media(max-width:1020px){.desktop-sidebar{display:none}}.calendar-scroll{overflow-x:auto}.desktop-sidebar{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--edge)transparent;overflow-y:auto}.desktop-sidebar>nav{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--edge)transparent;flex:1;min-height:0;overflow-y:auto}.record-count{white-space:nowrap;font-size:12px}.record-card-list{display:none}.record-card{border:1px solid var(--edge);background:var(--surface);border-radius:12px;min-width:0;padding:14px}.record-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.record-card-heading-main{min-width:0}.record-card-heading-main>small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.record-card-link{max-width:100%;min-height:44px;color:var(--ice);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:14px;font-weight:600;display:block}.record-card-link:hover{text-underline-offset:3px;text-decoration:underline}.record-card-heading>.badge{white-space:normal;text-align:center;max-width:48%}.record-card-subtitle{color:var(--text);overflow-wrap:anywhere;margin-top:8px;font-size:12px;line-height:1.5}.record-card-priority{margin-top:5px;font-size:12px}.record-card-details{gap:9px;min-width:0;margin:13px 0;display:grid}.record-card-details>div{grid-template-columns:68px minmax(0,1fr);align-items:start;gap:8px;display:grid}.record-card-details dt{color:var(--muted);font-size:11px}.record-card-details dd{min-width:0;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.5}.record-card-details dd .badge{white-space:normal}.record-card-note{background:var(--surface-inset);color:var(--text);overflow-wrap:anywhere;border-radius:8px;margin:10px 0 14px;padding:10px 12px;font-size:12px;line-height:1.5}.record-load-more{justify-content:center;padding:14px;display:flex}.calendar-scroll-hint{display:none}.dashboard-secondary-summary{border:1px solid var(--edge);background:var(--surface);min-height:64px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 16px;list-style:none;display:none}.dashboard-secondary-summary::-webkit-details-marker{display:none}.dashboard-secondary-summary>span{gap:4px;min-width:0;display:grid}.dashboard-secondary-summary strong{font-size:13px;font-weight:600}.dashboard-secondary-summary small{color:var(--muted);font-size:12px;line-height:1.45}.dashboard-secondary-summary>svg{color:var(--ice);flex:0 0 20px}.report-filter-grid{flex:420px;align-items:end;gap:12px;min-width:min(100%,420px)}.report-filter-grid.has-branch{flex-basis:570px;grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.record-table-wrap{display:none}.record-card-list{gap:10px;padding:12px;display:grid}.record-count{flex-basis:100%}.calendar-scroll-hint{color:var(--muted);padding:12px 16px 0;font-size:12px;display:block}.dashboard-secondary-summary{display:flex}.dashboard-secondary[open]>.dashboard-bottom{margin-top:14px}.page-toolbar{align-items:stretch}.page-toolbar>.tab-bar{max-width:100%;overflow-x:auto}.report-filter-grid,.report-filter-grid.has-branch{flex:100%;grid-template-columns:minmax(0,1fr);min-width:0}}@media(max-width:360px){.global-search{flex:0 0 44px;justify-content:center;width:44px;padding:10px}.global-search span,.global-search kbd{display:none}}.global-search,.account{min-height:44px}.modal-header>.icon-button{flex:0 0 44px}.page-header p{font-size:13px}.btn,.btn-small,.text-link{font-size:12px}.badge{font-size:11px}.data-table{font-size:13px}.data-table th{font-size:11px}.data-table td>small{font-size:12px}.metric-label{font-size:13px}.metric-note{font-size:12px}.metric-card p{font-size:13px}.chart-axis,.chart-column small,.chart-summary small,.chart-legend{font-size:10px}.tab-bar button{font-size:12px}.panel-header h2{font-size:14px}.panel-header p,.job-time,.job-description,.dispatch-person p,.dispatch-foot,.calendar-meta,.calendar-empty,.report-note,.inspection-item{font-size:12px}.client-cell strong,.calendar-event strong{font-size:13px}.history-entry small{font-size:11px}.calendar-day-header>.text-button{width:auto;min-width:44px;height:auto;min-height:44px;color:var(--text);text-align:left;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:2px 0;line-height:1.1;display:flex}.calendar-day-header>.text-button span{color:var(--muted);font-size:10px}.calendar-day-header>.text-button strong{font-size:14px;line-height:1.1}.calendar-day-header>.icon-button{border-radius:8px;flex:0 0 44px;width:44px;min-width:44px;height:44px}.calendar-event{overflow-wrap:anywhere;font-size:12px;line-height:1.4}.calendar-event span,.calendar-event small{margin-top:2px;font-size:11px;line-height:1.35;display:block}.calendar-event .calendar-event-status{color:var(--text);font-size:12px;font-weight:600}.attention-filter .text-button{align-items:center;gap:6px;min-height:44px;display:inline-flex}.metric-link{color:inherit;border-radius:12px;display:block}.metric-open-icon{color:var(--ice);position:absolute;top:15px;right:14px}.attention-filter{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;margin:12px;display:flex}.calendar-grid.calendar-day-view{grid-template-columns:1fr;min-width:0}.topbar-right>.icon-button{flex:0 0 44px;width:44px;min-width:44px;height:44px}:root{caret-color:var(--ice)}*{scrollbar-color:var(--edge-strong,var(--edge))var(--surface-inset)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--surface-inset)}::-webkit-scrollbar-thumb{background:var(--edge-strong,var(--edge));border:2px solid var(--surface-inset);border-radius:8px}@media(prefers-reduced-motion:reduce){.spin{animation:none!important}}.inventory-alert{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.inventory-alert>svg{align-self:start;margin-top:2px}.inventory-alert>span{min-width:0}.inventory-alert>.btn{justify-self:end}@media(max-width:600px){.inventory-alert{grid-template-columns:20px minmax(0,1fr);align-items:start}.inventory-alert>.btn{grid-column:2;justify-self:start}}@media(max-width:760px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.metrics-grid{grid-template-columns:1fr}}.text-link:focus-visible{text-underline-offset:3px}.arctic-modal.search-dialog[open]{animation:none}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.booking-section{border-bottom:1px solid var(--edge);gap:14px;margin-bottom:18px;padding-bottom:18px;display:grid}.booking-section-heading{color:var(--text);margin:0;font-size:14px;font-weight:600}.booking-optional{border:1px solid var(--edge);background:var(--surface-inset);border-radius:8px;overflow:hidden}.booking-optional>summary{cursor:pointer;min-height:44px;color:var(--text);padding:11px 13px}.booking-optional>summary::marker{color:var(--ice)}.booking-optional>summary strong,.booking-optional>summary small{display:block}.booking-optional>summary strong{font-size:12px;font-weight:600}.booking-optional>summary small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45}.booking-optional-fields{border-top:1px solid var(--edge);padding:14px}.form-load-warning{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-load-warning p{margin:0;line-height:1.5}.workorder-location{border:1px solid var(--edge);background:var(--surface-inset);border-radius:8px;gap:6px;margin:0 18px 14px;padding:12px 15px;display:grid}.workorder-location h4{color:var(--text);margin:0;font-size:13px;font-weight:600}.workorder-location p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.5}.workorder-location strong{color:var(--text);font-weight:600}::selection{color:var(--bg);background:var(--ice)}@media(max-width:520px){.form-load-warning{flex-direction:column;align-items:stretch}.workorder-location{margin-left:14px;margin-right:14px}}.arctic-modal{overflow:hidden}.modal-content{flex-direction:column;min-height:0;max-height:calc(100dvh - 40px);display:flex}.modal-header{flex:none}.modal-scroll{overscroll-behavior:contain;scrollbar-color:var(--muted)var(--surface-inset);scrollbar-width:thin;flex:auto;min-width:0;min-height:0;overflow-y:auto}.modal-scroll>form,.modal-scroll>.modal-body{padding:23px 24px}.modal-footer{z-index:2;border-top:1px solid var(--edge);background:var(--surface);flex:none;justify-content:flex-end;align-items:center;gap:10px;padding:13px 24px;display:flex;box-shadow:0 -10px 20px #00000018}.booking-modal-actions{justify-content:flex-end;align-items:center;gap:10px;width:100%;display:flex}.workorder-modal-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.workorder-footer-primary{flex-wrap:wrap;flex:280px;align-items:center;gap:8px;display:flex}.workorder-footer-more{flex:none;position:relative}.workorder-footer-more>summary{border:1px solid var(--edge);min-height:44px;color:var(--text);cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:0 11px;list-style:none;display:flex}.workorder-footer-more>summary::-webkit-details-marker{display:none}.workorder-footer-more>summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transform:rotate(45deg)translateY(-2px)}.workorder-footer-more[open]>summary:after{transform:rotate(225deg)translate(-1px,-1px)}.workorder-footer-more>summary:focus-visible,.dashboard-job-board-summary:focus-visible{outline:2px solid var(--ice);outline-offset:2px}.workorder-footer-more-actions{z-index:3;border:1px solid var(--edge);background:var(--surface);border-radius:10px;gap:8px;min-width:190px;padding:10px;display:grid;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 12px 36px #00000035}.workorder-delete-action{text-align:left;min-height:44px;color:var(--red);font-weight:600}.text-button.text-danger,.text-button.text-danger:hover{color:var(--red)}.workorder-schedule-meta{margin-top:4px;display:block}.dashboard-top,.dashboard-middle{align-items:start}.metric-actionable{border-color:var(--red)}.metric-actionable .metric-number{color:var(--red)}.metric-action{min-height:30px;color:var(--red);align-items:center;gap:5px;margin-top:7px;font-size:11px;font-weight:650;display:inline-flex}.metric-link:focus-visible{outline:2px solid var(--ice);outline-offset:3px}.dashboard-job-board>summary{list-style:none}.dashboard-job-board>summary::-webkit-details-marker{display:none}.dashboard-job-board-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:14px 19px;display:flex}.dashboard-job-board-title{align-items:center;gap:11px;min-width:0;display:flex}.dashboard-job-board-title>svg,.dashboard-job-board-summary>svg{color:var(--ice);flex:none}.dashboard-job-board-title>span{gap:4px;display:grid}.dashboard-job-board-title strong{color:var(--text);font-size:13px;font-weight:600}.dashboard-job-board-title small{color:var(--muted);font-size:11px;line-height:1.45}.dashboard-job-board[open]>summary>svg{transform:rotate(180deg)}.dashboard-job-board-content>.tab-bar{border-top:1px solid var(--edge);padding:12px 16px}.dashboard-job-board-content>.dispatch-foot{border-top:1px solid var(--edge)}@media(max-width:520px){.modal-scroll>form,.modal-scroll>.modal-body{padding:18px}.modal-footer{padding:12px 18px}.booking-modal-actions .btn{flex:1 1 0}.workorder-modal-actions{grid-template-columns:minmax(0,1fr);display:grid}.workorder-footer-primary{min-width:0}.workorder-footer-primary .btn{flex:1 1 0}.workorder-footer-more>summary{justify-content:space-between;width:100%}.workorder-footer-more-actions{min-width:min(260px,100vw - 72px);left:0;right:auto}}@media print{.arctic-modal{overflow:visible}.modal-content{max-height:none}.modal-scroll{overflow:visible}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--motion-short: .16s;--motion-standard: .2s;--motion-continuous: 1s;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--chart-completed: #5eb9e5;--chart-progress: #3a88bb;--chart-scheduled: #648ea4;--report-completed: #69c8a7;--report-progress: #459cd2}.app{background:radial-gradient(ellipse 920px 360px at 70% 0%,#19435165 0%,transparent 100%),var(--bg)}:root[data-theme=light]{color-scheme:light;--bg: #f3f7f9;--surface: #ffffff;--surface-inset: #f5f8fa;--edge: #d7e3e8;--text: #19343f;--muted: #526b77;--ice: #236f91;--cyan: #147f9e;--mint: #176e50;--amber: #7d5016;--red: #963b36;--surface-hover: #eaf2f6;--edge-strong: #bacdd6;--chart-completed: #16799d;--chart-progress: #317392;--chart-scheduled: #6c8591;--report-completed: #176c4e;--report-progress: #276f92;--color-slate-50: #f4f8fa;--color-slate-100: #eaf1f4;--color-slate-200: #dce7eb;--color-slate-300: #b4c6ce;--color-slate-400: #849aa4;--color-slate-500: #617782;--color-slate-600: #4e636d;--color-slate-700: #344c57;--color-slate-800: #223b46;--color-slate-900: #19343f;--color-white: #ffffff}:root[data-theme=light] body,:root[data-theme=light] .app,:root[data-theme=light] .login-page{background:var(--bg);color:var(--text)}:root[data-theme=light] .app{background:radial-gradient(ellipse 920px 360px at 70% 0%,#ddecf2 0%,transparent 100%),var(--bg)}:root[data-theme=light] .sidebar{background:linear-gradient(160deg,#fff,#f5f9fb 75%);border-color:var(--edge)}:root[data-theme=light] .brand,:root[data-theme=light] .page-header h1,:root[data-theme=light] .panel-header h2,:root[data-theme=light] .empty-state h3,:root[data-theme=light] .login-form-wrap h2{color:var(--text)}:root[data-theme=light] .brand-caption,:root[data-theme=light] .nav-label,:root[data-theme=light] .sidebar-tagline small,:root[data-theme=light] .breadcrumb,:root[data-theme=light] .account small,:root[data-theme=light] .eyebrow,:root[data-theme=light] .page-header p,:root[data-theme=light] .panel-header p,:root[data-theme=light] .metric-note,:root[data-theme=light] .job-description,:root[data-theme=light] .chart-axis,:root[data-theme=light] .chart-column small,:root[data-theme=light] .chart-summary small,:root[data-theme=light] .dispatch-person p,:root[data-theme=light] .dispatch-foot,:root[data-theme=light] .client-cell small,:root[data-theme=light] .attention-row small,:root[data-theme=light] .payment-row small,:root[data-theme=light] .app-footer,:root[data-theme=light] .field-hint,:root[data-theme=light] .detail-grid dt,:root[data-theme=light] .empty-state,:root[data-theme=light] .error-state p,:root[data-theme=light] .modal-header p,:root[data-theme=light] .search-result small,:root[data-theme=light] .calendar-event small,:root[data-theme=light] .calendar-meta,:root[data-theme=light] .calendar-empty,:root[data-theme=light] .login-story-content>p,:root[data-theme=light] .login-benefits div,:root[data-theme=light] .login-note,:root[data-theme=light] .login-brand-footer,:root[data-theme=light] .data-table td>small,:root[data-theme=light] .workorder-heading p,:root[data-theme=light] .history-entry small{color:var(--muted)}:root[data-theme=light] .breadcrumb span{color:var(--muted)}:root[data-theme=light] .nav-item{color:#405b67}:root[data-theme=light] .nav-item:hover,:root[data-theme=light] .icon-button:hover,:root[data-theme=light] .search-result:hover{color:var(--text);background:var(--surface-hover)}:root[data-theme=light] .nav-item.active{color:#19495f;background:linear-gradient(110deg,#dcecf3,#eaf3f7);border-color:#c6dbe5}:root[data-theme=light] .sidebar-tagline,:root[data-theme=light] .topbar,:root[data-theme=light] .account,:root[data-theme=light] .panel-header,:root[data-theme=light] .today-job,:root[data-theme=light] .dispatch-person,:root[data-theme=light] .data-table th,:root[data-theme=light] .data-table td,:root[data-theme=light] .attention-row,:root[data-theme=light] .payment-row,:root[data-theme=light] .form-actions,:root[data-theme=light] .modal-actions,:root[data-theme=light] .work-order-summary,:root[data-theme=light] .calendar-header,:root[data-theme=light] .calendar-week-header,:root[data-theme=light] .calendar-day,:root[data-theme=light] .history-entry,:root[data-theme=light] .inspection-item{border-color:var(--edge)}:root[data-theme=light] .topbar{background:#ffffffed}:root[data-theme=light] .global-search,:root[data-theme=light] .date-chip,:root[data-theme=light] .btn-secondary,:root[data-theme=light] .chart-controls,:root[data-theme=light] .tab-bar button,:root[data-theme=light] .calendar-day-header button,:root[data-theme=light] .demo-card{color:#35515d;background:#f2f7f9;border-color:var(--edge)}:root[data-theme=light] .global-search,:root[data-theme=light] .chart-controls{color:var(--muted)}:root[data-theme=light] .btn-primary{color:#153544;background:linear-gradient(180deg,#cceafd,#a9d6ed);border-color:#a4cfe5;box-shadow:inset 0 1px #ffffffa8,0 2px 7px #1a57711a}:root[data-theme=light] .btn-primary:hover{background:#d8effb}:root[data-theme=light] .btn-secondary:hover,:root[data-theme=light] .chart-controls:hover,:root[data-theme=light] .calendar-day-header button:hover{background:#e7f0f4}:root[data-theme=light] .btn-danger{color:#8b302e;background:#fff2f0;border-color:#e8c4c0}:root[data-theme=light] .text-link,:root[data-theme=light] .text-button{color:#176b8d}:root[data-theme=light] .text-link:hover,:root[data-theme=light] .text-button:hover{color:#104d68}:root[data-theme=light] .text-button.text-danger,:root[data-theme=light] .text-button.text-danger:hover{color:var(--red)}:root[data-theme=light] .panel{color:var(--text);background:linear-gradient(135deg,#edf5f880,transparent 65%),#fff;border-color:var(--edge);box-shadow:0 5px 18px #274a5b0c,inset 0 1px #fff}:root[data-theme=light] .metric{background:linear-gradient(125deg,#fff,#f5f9fb 85%)}:root[data-theme=light] .metric-icon{color:#126c8b;background:#dff0f6;border-color:#c7e0ea}:root[data-theme=light] .metric-icon.green{color:#176c4e;background:#e0f2e9;border-color:#c5e4d3}:root[data-theme=light] .metric-icon.amber{color:#7d5016;background:#f7eddb;border-color:#ead7b4}:root[data-theme=light] .metric-icon.red{color:#963b36;background:#f8e6e3;border-color:#eccdca}:root[data-theme=light] .metric-label,:root[data-theme=light] .job-time,:root[data-theme=light] .detail-grid dd,:root[data-theme=light] .search-result,:root[data-theme=light] .inspection-item,:root[data-theme=light] .history-entry,:root[data-theme=light] .calendar-day-header{color:var(--text)}:root[data-theme=light] .today-job:hover,:root[data-theme=light] .data-table tbody tr:hover{background:#eff6f8}:root[data-theme=light] .badge{color:#405c68;background:#edf3f6;border-color:#d2e0e6}:root[data-theme=light] .status-completed,:root[data-theme=light] .payment-paid,:root[data-theme=light] .notice-success,:root[data-theme=light] .notice.notice-success{color:#195e46;background:#e4f3eb;border-color:#c6e3d3}:root[data-theme=light] .status-confirmed{color:#245d82;background:#e8f1f8;border-color:#cbdfea}:root[data-theme=light] .status-on_site{color:#185d7c;background:#e2f1f7;border-color:#c4e1eb}:root[data-theme=light] .status-pending,:root[data-theme=light] .payment-partial,:root[data-theme=light] .notice-warning{color:#72501a;background:#f8f0df;border-color:#eadab9}:root[data-theme=light] .status-cancelled{color:#536772;background:#eef2f4;border-color:#d8e1e5}:root[data-theme=light] .payment-unpaid,:root[data-theme=light] .notice.error,:root[data-theme=light] .error-message,:root[data-theme=light] .notice-error,:root[data-theme=light] .notice.notice-error{color:#893b35;background:#fbebea;border-color:#edcfcc}:root[data-theme=light] .chart-bars,:root[data-theme=light] .chart-legend{border-color:var(--edge)}:root[data-theme=light] .chart-bars{background:repeating-linear-gradient(to top,transparent 0,transparent 39px,#54717e1a 40px,transparent 41px)}:root[data-theme=light] .chart-stack{border-color:#c5d9e1}:root[data-theme=light] .chart-completed{background:linear-gradient(#46a6c9,#6ab3cd)}:root[data-theme=light] .chart-progress{background:var(--chart-progress)}:root[data-theme=light] .chart-scheduled{background:var(--chart-scheduled)}:root[data-theme=light] .chart-legend{color:var(--muted)}:root[data-theme=light] .data-table th{color:#49636e;background:#f3f7f9}:root[data-theme=light] .data-table td{color:var(--text)}:root[data-theme=light] .table-chevron{color:#56717d}:root[data-theme=light] .table-chevron:hover,:root[data-theme=light] .tab-bar button.active,:root[data-theme=light] .tab-bar button[aria-selected=true]{color:#194f68;background:#e3eff4;border-color:#bdd4df}:root[data-theme=light] .tab-count{background:#244f6812}:root[data-theme=light] .attention-row svg{color:#7d5016}:root[data-theme=light] .activity-dot{background:#2d8db0}:root[data-theme=light] .field label{color:#405b66}:root[data-theme=light] .field-input{color:var(--text);background:#fff;border-color:#bdcfd7}:root[data-theme=light] .field-input:focus{border-color:#297d9f;box-shadow:0 0 0 3px #2b86a322}:root[data-theme=light] .field-input::placeholder{color:#687e88}:root[data-theme=light] .notice{color:#72501a;background:#f8f0df;border-color:#eadab9}:root[data-theme=light] .arctic-modal{color:var(--text);background:linear-gradient(130deg,#fff,#f6f9fb);border-color:#c7d8df;box-shadow:0 20px 70px #15384726}:root[data-theme=light] .arctic-modal::backdrop,:root[data-theme=light] .drawer-dialog::backdrop,:root[data-theme=light] .nav-backdrop{background:#16354165}:root[data-theme=light] .modal-header,:root[data-theme=light] .search-result,:root[data-theme=light] .checkbox-row{border-color:var(--edge)}:root[data-theme=light] .search-result:hover{background:#edf4f7}:root[data-theme=light] .calendar-day.today,:root[data-theme=light] .calendar-day.is-today{background:#e8f2f6}:root[data-theme=light] .calendar-event{color:#244753;background:#edf5f8;border-color:#cfdee5}:root[data-theme=light] .calendar-event.event-completed{background:#e6f3ec;border-color:#338163}:root[data-theme=light] .calendar-event.event-on_site{background:#e7f2f7;border-color:#2f83a5}:root[data-theme=light] .calendar-event.event-pending{background:#f8f0df;border-color:#9a702b}:root[data-theme=light] .report-bar,:root[data-theme=light] .progress-track{background:#e3edf1}:root[data-theme=light] .report-bar>span{background:linear-gradient(90deg,#397f9b,#7eb8cc)}:root[data-theme=light] .progress-fill{background:#4088a6}:root[data-theme=light] .progress-completed{background:#378164}:root[data-theme=light] .progress-on_site{background:#377f9d}:root[data-theme=light] .progress-cancelled{background:#78909a}:root[data-theme=light] .login-page{background:radial-gradient(ellipse at 15% 0%,#dcecf1,transparent 65%),var(--bg)}:root[data-theme=light] .login-story,:root[data-theme=light] .login-form-side{background:transparent;border-color:var(--edge)}:root[data-theme=light] .login-story h1 span,:root[data-theme=light] .login-benefits svg,:root[data-theme=light] .login-brand-footer{color:#267596}:root[data-theme=light] .login-circles{border-color:#4e94ad38;box-shadow:0 0 0 60px #4e94ad0b,0 0 0 120px #4e94ad08,0 0 0 180px #4e94ad05}:root[data-theme=light] .demo-card{background:#fff;border-color:var(--edge)}:root[data-theme=light] .demo-card p,:root[data-theme=light] .demo-card strong{color:#405b66}:root[data-theme=light] .skip-link{color:#153544;background:#cceafd}:root[data-theme=light] .local-tag{color:#405b66;border-color:var(--edge)}:root[data-theme=light] .text-amber{color:#765017}:root[data-theme=light] .invoice-total{color:var(--text);background:#edf4f7}:root[data-theme=light] .theme-toggle{color:#355866}:root[data-theme=light] .theme-toggle[aria-pressed=true]{color:#155a78;background:#e2f0f5}:root[data-theme=light] :focus-visible{outline-color:#196f91}
