:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#182e3f;background:#f3f6f7;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.52;cursor:not-allowed}a{color:#086e78}a:hover{text-decoration:none}:focus-visible{outline:3px solid #e8a527;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.04em;margin-bottom:.3rem}h2{font-size:1.14rem;letter-spacing:-.025em;margin-bottom:0}h3{font-size:.95rem;margin-bottom:1rem}small{font-size:.76rem}.eyebrow{font-size:.69rem;font-weight:800;letter-spacing:.12em;color:#547c87}.muted,.help{color:#607584}.help{font-size:.78rem;line-height:1.5}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}input,select{color:#173246;background:#fff;border:1px solid #c4d1d8;border-radius:8px;min-height:40px;padding:.5rem .7rem;max-width:100%}label{font-size:.79rem;font-weight:700;display:grid;gap:.4rem}button{border:1px solid #cad6dc;background:#fff;border-radius:8px;color:#21394a;padding:.57rem .83rem;font-weight:700}button:hover:not(:disabled){border-color:#16818a;background:#f2faf9}.primary{background:#08767e;color:#fff;border-color:#08767e}.primary:hover:not(:disabled){background:#075b63;color:#fff}.text-button{border:0;background:none;color:inherit}.icon-button{font-size:1.5rem;padding:.2rem .55rem}.topbar{height:66px;background:#12283c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,3vw,2.8rem);gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;font-weight:800;font-size:1.1rem;letter-spacing:-.03em;white-space:nowrap}.brand small{font-weight:500;color:#b9cdd4;font-size:.82rem}.brand-mark{width:32px;height:32px;border-radius:9px;background:#15a6a3;display:grid;place-items:center;color:#fff}.top-actions{display:flex;align-items:center;gap:1rem}.org-select{display:flex;align-items:center;gap:.7rem;color:#bbd2d8}.org-select select{background:#233d4f;color:#fff;border-color:#4c6575;max-width:260px}.sign-out{color:#e3edf0}.workspace{max-width:1800px;margin:auto;padding:2.2rem clamp(1rem,3vw,2.8rem) 4rem}.workspace-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap}.workspace-heading p{color:#647986;margin:.3rem 0 0}.date-actions{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.date-actions input{width:155px}.today-button{color:#08767e}.meta-line{color:#667a85;font-size:.78rem;margin:1.05rem 0 1.5rem}.summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1.15rem}.summary>div{background:#fff;border:1px solid #dce5e9;border-radius:12px;padding:1rem 1.2rem;display:grid;gap:.25rem;box-shadow:0 2px 8px #203b4808}.summary span{font-size:.78rem;font-weight:700;color:#58727e}.summary strong{font-size:1.85rem;line-height:1.1;letter-spacing:-.05em}.summary small{color:#728792}.desk{display:grid;grid-template-columns:minmax(260px,310px) minmax(0,1fr);gap:1rem}.panel{background:#fff;border:1px solid #dce5e9;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #203b4808}.panel-title{padding:1.1rem 1.2rem;display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #e4ebed;gap:.5rem}.panel-title .muted{font-size:.76rem}.panel-title .eyebrow{display:block;margin-bottom:.45rem}.count{font-size:.75rem;background:#e7f3f2;border-radius:30px;padding:.2rem .5rem;color:#086d74;vertical-align:middle;margin-left:.2rem}.queue-scroll{max-height:590px;overflow:auto;padding:.7rem;display:grid;align-content:start;gap:.6rem}.job-card{text-align:left;display:grid;width:100%;gap:.43rem;padding:.85rem;border-color:#dce6ea;border-left:3px solid #e1aa47;border-radius:8px}.job-card strong{font-size:.91rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-card .muted,.job-card .card-time{font-size:.79rem}.card-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.priority{font-size:.66rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8d5a08;background:#fff2d8;border-radius:4px;padding:.2rem .38rem}.priority.emergency,.priority.urgent,.priority.high{color:#9c3c20;background:#ffebe4}.priority.low{color:#3d6570;background:#eaf3f5}.status{text-transform:capitalize;color:#486675;font-size:.73rem;font-weight:700}.selected{outline:2px solid #08767e;outline-offset:-2px}.timeline-scroll{overflow-x:auto}.grid-head,.grid-row{display:grid;grid-template-columns:220px 1fr}.grid-head{height:48px;align-items:center;color:#758a94;font-size:.68rem;font-weight:800;letter-spacing:.06em;border-bottom:1px solid #e5ebed}.grid-head>span{padding-left:1rem}.hours{display:grid;grid-template-columns:repeat(14,94px);height:100%;align-items:center}.hours span{padding-left:.4rem;border-left:1px solid #e5ebed;height:100%;display:flex;align-items:center}.grid-row{min-height:91px;border-bottom:1px solid #e5ebed}.member-name{padding:.8rem;display:flex;align-items:center;gap:.65rem;border-right:1px solid #e5ebed;overflow:hidden}.member-name strong,.member-name small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-name strong{font-size:.83rem}.member-name small{color:#718591;text-transform:capitalize}.avatar{width:32px;height:32px;flex:none;background:#d8eff0;color:#087179;border-radius:50%;display:grid;place-items:center;font-size:.71rem;font-weight:800}.track{position:relative;background:repeating-linear-gradient(to right,#fff 0 93px,#e8edef 93px 94px);height:91px}.slot{position:absolute;top:13px;height:64px;text-align:left;background:#dbf1ee;color:#10545e;border:1px solid #60aca9;border-left:4px solid #0e827e;overflow:hidden;border-radius:6px;padding:.4rem .55rem;display:grid;align-content:center;gap:.2rem;min-width:8px}.slot:hover:not(:disabled){background:#c6e6e3}.slot strong,.slot small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot strong{font-size:.76rem}.slot small{font-size:.65rem}.timeline-foot{color:#738791;font-size:.72rem;margin:0;padding:.9rem 1.1rem}.agenda{margin-top:1rem}.agenda-list{max-height:420px;overflow:auto}.agenda-row{display:grid;grid-template-columns:90px 1fr auto;gap:1rem;align-items:center;width:100%;text-align:left;border:0;border-bottom:1px solid #edf1f2;border-radius:0;padding:.8rem 1.2rem}.agenda-row strong,.agenda-row small{display:block}.agenda-row strong{font-size:.87rem}.agenda-row small{color:#718591;margin-top:.2rem}.agenda-time{font-size:.78rem;font-weight:800;color:#086e78}.empty-small{color:#728690;font-size:.84rem;padding:1rem}.empty{padding:4rem;text-align:center;color:#607683}.notice,.warning,.banner{padding:.8rem 1.2rem;line-height:1.5;font-size:.85rem}.notice{background:#e4f5ef;color:#215c48;display:flex;justify-content:space-between}.notice button{background:none;border:0;padding:0 .5rem}.warning{background:#fff5df;color:#684d16}.error{color:#9c332e;font-size:.85rem}.banner{background:#fff0ed;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.state-page{max-width:640px;margin:8vh auto;padding:2rem;line-height:1.6}.sign-in{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at 83% 20%,#167885 0,transparent 38%),#12283c}.sign-in-card{background:#fff;border-radius:16px;padding:clamp(1.5rem,5vw,3rem);max-width:430px;width:100%;box-shadow:0 25px 60px #05192355}.sign-in-card h1{margin:.5rem 0}.sign-in-card>p{color:#67808a;line-height:1.6;font-size:.9rem;margin-bottom:2rem}.sign-in-card form{display:grid;gap:1rem}.sign-in-card .primary{margin-top:.5rem}.drawer-scrim{position:fixed;inset:0;background:#0e263987;display:flex;justify-content:flex-end;z-index:10}.drawer{background:#fff;width:min(100%,490px);height:100%;display:flex;flex-direction:column;box-shadow:-12px 0 40px #0b233540}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.4rem;border-bottom:1px solid #e3e9ed}.drawer-body{overflow-y:auto;padding:1.6rem 1.4rem 3rem}.drawer-body h2{font-size:1.55rem;line-height:1.22}.drawer-badges{display:flex;gap:.6rem;align-items:center;margin:1rem 0 2rem}.detail-section{padding:1.25rem 0;border-top:1px solid #e3e9ed}.detail-section dl{display:grid;grid-template-columns:100px 1fr;gap:.9rem;margin:0;line-height:1.4;font-size:.84rem;overflow-wrap:anywhere}.detail-section dt{color:#6d828e}.detail-section dd{margin:0;font-weight:600}.booking>p{font-size:.81rem;color:#6d818c;line-height:1.5}.booking form{display:grid;gap:1rem}.form-times{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.form-times input{width:100%}.checkbox{display:flex;align-items:center;gap:.6rem;font-size:.84rem}.checkbox input{min-height:auto;width:18px;height:18px;accent-color:#08767e}.booking .primary{justify-self:start}.confirmation{padding:1rem;border:1px solid #72b6b0;border-radius:10px;background:#f2faf9;font-size:.82rem;line-height:1.5}.confirmation p{margin:.8rem 0}.confirmation .warning{padding:.7rem;border-radius:6px}.confirm-actions{display:flex;gap:.5rem;justify-content:flex-end}@media(max-width:1000px){.desk{grid-template-columns:260px minmax(0,1fr)}.summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:740px){.topbar{height:auto;min-height:60px;padding:.7rem 1rem;flex-wrap:wrap}.top-actions{width:100%;justify-content:space-between}.org-select{font-size:.68rem}.org-select select{max-width:min(68vw,250px)}.workspace{padding:1.3rem 1rem 3rem}.workspace-heading{align-items:start}.date-actions{width:100%}.desk{display:block}.timeline{display:none}.queue-scroll{max-height:260px}.summary{gap:.5rem}.summary>div{padding:.8rem}.summary strong{font-size:1.5rem}.agenda-row{grid-template-columns:65px 1fr;gap:.55rem;padding:.85rem}.agenda-row .status{grid-column:2}.form-times{grid-template-columns:1fr}.drawer-body{padding:1.2rem 1rem 3rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.track.drop-target{box-shadow:inset 0 0 0 3px #08767e}.availability-band{position:absolute;inset:0;pointer-events:none;background:#edf1f3}.availability-window{position:absolute;top:0;bottom:0;background:#f5fbf8;border-inline:1px solid #c6e2d7}.availability-absence{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,#c5d1d5 0 5px,#edf0f1 5px 10px)}.availability-band+.slot{z-index:1}.grid-row.has-conflict .member-name{border-left:4px solid #ba5b32}.availability-summary{display:flex;flex-wrap:wrap;gap:.4rem .8rem;padding:.55rem .8rem;color:#466371;font-size:.74rem;border-top:1px solid #e9eff0}.availability-summary strong{color:#255949}.availability-summary .absence{color:#864628}.availability-workspace{display:grid;gap:1rem}.availability-workspace>.panel{overflow:visible}.availability-controls,.availability-form{padding:1.1rem 1.2rem;display:grid;gap:1rem}.availability-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-days{display:grid;gap:.65rem;padding:0 1.2rem 1.2rem}.availability-day{display:grid;grid-template-columns:minmax(95px,130px) minmax(0,1fr);gap:1rem;align-items:start;padding:.9rem;border:1px solid #e0e8ea;border-radius:9px}.availability-week-preview{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;padding:0 1.2rem 1rem}.availability-week-preview button{text-align:left;display:grid;align-content:start;gap:.35rem;min-width:0;padding:.7rem;border-color:#e0e8ea;font-weight:400;overflow-wrap:anywhere}.availability-week-preview strong{font-size:.75rem}.availability-week-preview span,.availability-week-preview small{font-size:.69rem;line-height:1.35;color:#53727a}.availability-week-preview small{color:#08767e}.availability-day>strong{padding-top:.6rem}.availability-day-slots{display:grid;gap:.5rem;min-width:0}.availability-slot{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.availability-slot label{flex:0 0 156px;min-width:156px}.availability-slot input[type=time]{display:block;width:100%;min-width:0;max-width:none;cursor:pointer}.availability-slot button{min-height:38px}.availability-day-actions{display:flex;gap:.5rem;flex-wrap:wrap}.availability-day-actions button{font-size:.76rem}.availability-absence-list{display:grid;gap:.5rem;padding:0 1.2rem 1.2rem}.availability-absence-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid #e0e8ea;border-radius:8px;font-size:.82rem}.availability-absence-row span{overflow-wrap:anywhere}@media(max-width:1050px){.availability-week-preview{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:740px){.availability-controls{grid-template-columns:1fr}.availability-week-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-day{grid-template-columns:1fr}.availability-day>strong{padding-top:0}.availability-slot label{flex-basis:145px;min-width:145px}.availability-absence-row{align-items:flex-start;flex-direction:column}}.job-card[draggable=true],.slot[draggable=true]{cursor:grab}.job-card[draggable=true]:active,.slot[draggable=true]:active{cursor:grabbing}.drop-note{background:#e5f5f1;color:#205c55;padding:.8rem;border-radius:8px;line-height:1.5}.workspace-tabs{display:flex;gap:.3rem;border-bottom:1px solid #cddce1;margin:-.7rem 0 2rem}.workspace-tabs button{border:0;border-radius:8px 8px 0 0;background:transparent;color:#59717b;padding:.8rem 1.2rem}.workspace-tabs button[aria-current=page]{border-bottom:3px solid #08767e;color:#075f68;background:#e5f3f1}.timecard-toolbar{display:flex;gap:.7rem;align-items:end;flex-wrap:wrap;margin:1.3rem 0}.timecard-toolbar .help{margin:0}.timecard-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.timecard-status{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding:1.2rem;line-height:1.5}.timecard-status strong,.timecard-status small{display:block}.timecard-status strong{font-size:1.2rem}.timecard-status small{color:#607584}.timecard-status .timecard-actions{margin:0 0 0 auto}.timecard-list{display:grid;gap:.55rem;padding:1rem}.timecard-entry{display:grid;grid-template-columns:minmax(130px,1fr) minmax(160px,1.4fr) minmax(105px,.65fr) auto;align-items:center;gap:.8rem;border:1px solid #e1e9ec;border-radius:8px;padding:.9rem;font-size:.85rem}.timecard-entry strong,.timecard-entry small{display:block}.timecard-entry small{color:#607584;margin-top:.2rem}.timecard-entry .status{justify-self:end}.timecard-form{display:grid;gap:.9rem;padding:1.1rem;max-width:700px}.timecard-form form{display:grid;gap:.85rem}.timecard-form .form-times{grid-template-columns:repeat(2,minmax(0,1fr))}.team-picker{display:grid;gap:.65rem;border:1px solid #d9e4e7;border-radius:8px;padding:1rem;max-height:230px;overflow:auto}.team-picker legend{font-size:.85rem;font-weight:700}.team-picker p{font-size:.78rem;color:#6d818c;margin:0 0 .2rem}.team-picker .checkbox{cursor:pointer}.queue.drop-target{box-shadow:inset 0 0 0 3px #08767e;background:#f2faf9}.queue-drop-hint{font-size:.75rem;color:#58727e;padding:0 1rem;margin:.8rem 0 0}.timecard-form textarea{width:100%;min-height:80px;border:1px solid #c4d1d8;border-radius:8px;padding:.7rem;font:inherit}.timecard-form .confirm-actions{justify-content:start}.timecard-presence{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.7rem;margin:1rem 0}.timecard-presence>div{background:#fff;border:1px solid #dce5e9;border-radius:10px;padding:1rem}.timecard-presence strong,.timecard-presence small{display:block}.timecard-presence small{color:#607584;margin-top:.3rem}@media(max-width:740px){.workspace-tabs{margin:-.2rem 0 1.5rem}.timecard-status .timecard-actions{margin:0;width:100%}.timecard-actions button{flex:1}.timecard-entry{grid-template-columns:1fr auto}.timecard-entry .status{grid-column:2;grid-row:1}.timecard-entry .timecard-hours{grid-column:1 / -1}.timecard-form .form-times{grid-template-columns:1fr}}.customer-layout{display:grid;grid-template-columns:minmax(270px,390px) minmax(0,1fr);gap:1rem;align-items:start}.customer-filters{padding:1rem;display:grid;gap:1rem}.customer-filter-note{padding:0 1rem;margin:0 0 .6rem}.customer-list{max-height:620px;overflow-y:auto}.customer-row{display:grid;gap:.35rem;text-align:left;border:0;border-top:1px solid #e4ebed;border-radius:0;width:100%;padding:.9rem 1.1rem}.customer-row span,.customer-row small,.customer-properties small{display:block;color:#607584;font-size:.77rem}.customer-more{padding:1rem}.customer-detail dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:.8rem;margin:1.1rem;line-height:1.5;font-size:.87rem;overflow-wrap:anywhere}.customer-detail dt{color:#607584}.customer-detail dd{margin:0}.customer-properties>div{border-top:1px solid #e4ebed;padding:.85rem 1.1rem;display:grid;gap:.25rem}.customer-form{margin:1rem 0}.customer-form form{display:grid;gap:1rem;padding:1.2rem;max-width:730px}.customer-form .help{margin:0}@media(max-width:740px){.customer-layout{grid-template-columns:1fr}.customer-list{max-height:350px}.customer-form .form-times{grid-template-columns:1fr}.workspace-tabs{overflow-x:auto}}.site-form{display:grid;gap:.85rem;padding:1.1rem;border-bottom:1px solid #e4ebed}.job-equipment-picker{min-width:0;border:1px solid #dce5e9;border-radius:8px;padding:.9rem}.job-equipment-picker legend{padding:0 .3rem;font-weight:700}.job-equipment-picker>.help{margin:.1rem 0 .9rem}.job-equipment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.workspace .customer-form .job-equipment-option{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:.7rem;padding:.8rem;border:1px solid #dce5e9;border-radius:8px;font-weight:400;cursor:pointer;min-width:0}.job-equipment-option:hover{background:#f2faf9}.job-equipment-option:has(input:checked){border-color:#16818a;background:#eef9f7}.workspace .customer-form .job-equipment-option input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;padding:0;margin:.15rem 0 0}.job-equipment-label{min-width:0;overflow-wrap:anywhere}.job-equipment-label strong,.job-equipment-label small{display:block}.job-equipment-label small{margin-top:.2rem;color:#607584;font-size:.76rem;line-height:1.4}@media(max-width:680px){.job-equipment-options{grid-template-columns:minmax(0,1fr)}}.site-form textarea{width:100%;min-height:86px;border:1px solid #c4d1d8;border-radius:8px;padding:.7rem;font:inherit}.site-detail{border-top:1px solid #dce5e9}.site-detail .panel-title{align-items:center}.customer-properties .customer-row{padding:.85rem 1.1rem}.equipment-group-title{background:#eaf3f5;padding:.75rem 1rem;margin:0;font-size:.86rem;display:flex;align-items:center;justify-content:space-between;color:#214555}.equipment-group-title button{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;padding:0;text-align:left;border:0;background:none;color:inherit;font:inherit}.equipment-group-title button:hover:not(:disabled){background:none;color:#08767e}.equipment-site-group{border-left:2px solid #dce5e9;margin-left:1rem}.equipment-site-group .equipment-group-title{background:#f4f9f8}.address-lookup{display:grid;gap:.45rem}.address-lookup .help,.address-lookup .error{margin:0}.address-suggestions{border:1px solid #c4d1d8;border-radius:8px;overflow:hidden;max-height:245px;overflow-y:auto}.address-suggestions button{display:block;width:100%;text-align:left;border:0;border-radius:0;border-bottom:1px solid #e4ebed;font-size:.83rem;font-weight:500}.address-suggestions button:last-child{border-bottom:0}.site-equipment{border-top:1px solid #dce5e9}.site-equipment .panel-title{align-items:center}.site-equipment h3{margin:0}.site-equipment-card .customer-row{padding:.85rem 1.2rem}.site-equipment-details{background:#f5f9f9;padding:1rem;margin:0!important}.site-equipment h4{margin:0}.estimate-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem .9rem;border-top:1px solid #e4ebed;padding:.9rem 1.1rem;font-size:.84rem;overflow-wrap:anywhere}.estimate-line span{grid-column:1;color:#607584;font-size:.77rem}.estimate-line strong:last-child{grid-column:2;grid-row:1 / -1;align-self:center;white-space:nowrap}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#102638a6;display:grid;place-items:center;padding:1rem}.form-dialog{width:min(100%,820px);max-height:calc(100vh - 2rem);overflow:auto}.form-dialog form{display:grid;gap:1rem;padding:1.25rem}.form-dialog textarea{font:inherit;color:#173246;border:1px solid #c4d1d8;border-radius:8px;min-height:75px;padding:.65rem}.form-dialog label:has(input[type=checkbox]){display:flex;align-items:center}.form-dialog input[type=checkbox]{min-height:auto}.form-dialog .meta-line{margin:1rem 1.25rem}.estimate-edit-line{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(80px,1fr)) auto;gap:.6rem;align-items:end;border-top:1px solid #e4ebed;padding-top:.8rem}.estimate-edit-line button{grid-column:1/-1;justify-self:start}.form-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.invoice-payment-action{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;padding:0 1.2rem 1.2rem}.invoice-payment-action .help{margin:0}.invoice-payment-dialog{width:min(100%,490px);max-height:calc(100dvh - 2rem);overflow:auto;padding:1.4rem;display:grid;gap:1rem}.invoice-payment-dialog>.panel-title{margin:-1.4rem -1.4rem 0}.invoice-payment-dialog>.help{margin:0;line-height:1.5}.invoice-payment-dialog input[name=payment-amount]{width:100%;font-size:1.35rem;font-weight:700}.invoice-payment-due{display:flex;justify-content:space-between;gap:.7rem;align-items:center;background:#edf7f6;padding:1rem;border-radius:8px}.invoice-payment-due strong{font-size:1.3rem;white-space:nowrap}.invoice-payment-methods{min-width:0;border:0;padding:0;margin:0}.invoice-payment-methods legend{font-size:.8rem;font-weight:700;margin-bottom:.5rem}.invoice-payment-methods>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.invoice-payment-methods label{display:flex;align-items:center;gap:.55rem;padding:.65rem;border:1px solid #cad6dc;border-radius:8px;cursor:pointer}.invoice-payment-methods label:has(input:checked){background:#edf7f6;border-color:#16818a}.invoice-payment-methods input{min-height:auto;width:auto;margin:0;accent-color:#16818a}.invoice-payment-remaining{margin:0;font-size:.86rem}.invoice-payment-dialog .confirm-actions{justify-content:flex-end;margin:0}@media(max-width:460px){.invoice-payment-dialog{padding:1rem}.invoice-payment-dialog>.panel-title{margin:-1rem -1rem 0}.invoice-payment-methods>div{grid-template-columns:minmax(0,1fr)}}@media(max-width:740px){.estimate-edit-line{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-edit-line label:first-child{grid-column:1/-1}}.estimate-plan{display:grid;gap:.7rem;border:1px solid #dce5e9;border-radius:8px;padding:1rem}.estimate-plan h3{margin:0}.estimate-plan .checkbox{display:flex;align-items:center;gap:.6rem}.estimate-proposed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;padding:1rem;border:1px solid #dce5e9;border-radius:8px}.estimate-proposed button{justify-self:start}.customer-detail section[aria-label="Private internal work"],.customer-detail section[aria-label="Estimate equipment plan"]{border-top:1px solid #e4ebed;padding-bottom:1rem}.customer-detail section[aria-label="Private internal work"]>p,.customer-detail section[aria-label="Estimate equipment plan"]>p,.estimate-private-group{margin:.6rem 1.2rem;font-size:.82rem;line-height:1.5}.estimate-private-group{padding:.7rem;border:1px solid #e4ebed;border-radius:8px}.estimate-private-group p{margin:.4rem 0 0}@media(max-width:740px){.estimate-proposed{grid-template-columns:1fr}}.estimate-workflow{border-top:1px solid #dce5e9}.estimate-workflow-actions{display:grid;gap:.7rem;padding:1rem 1.2rem}.estimate-workflow-actions>.help{margin:0}.estimate-workflow .confirmation{margin:.5rem 0}.estimate-share-event{padding:.7rem 1.2rem;margin:0;border-top:1px solid #edf1f2;font-size:.8rem;line-height:1.5}.price-book{display:grid;gap:1.15rem;min-width:0}.price-book>.meta-line,.price-book>.help,.price-book>.warning,.price-book>.banner,.price-book>.notice{margin:0}.price-book .panel-title{align-items:center;flex-wrap:wrap}.price-book .customer-row{min-width:0;overflow-wrap:anywhere}.price-book .customer-row small{line-height:1.45}.price-book-rates>.help{margin:0;padding:1rem 1.2rem;max-width:90ch}.price-book-rates>.customer-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));align-content:start;gap:.75rem;padding:.75rem 1.2rem 1.2rem;max-height:330px}.price-book-rates .customer-row{border:1px solid #dce5e9;border-radius:9px;padding:1rem;align-content:start}.price-book-rate-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.2rem;border-block:1px solid #e4ebed}.price-book-rate-form>.panel-title,.price-book-rate-form>.warning,.price-book-rate-form>.banner,.price-book-rate-form>.price-book-impact-preview,.price-book-rate-form>button{grid-column:1/-1}.price-book-rate-form>.panel-title{padding:0 0 .8rem;align-items:center}.price-book-rate-form>.panel-title h3{margin:0}.price-book-rate-form>.warning,.price-book-rate-form>.banner{margin:0;border-radius:8px}.price-book-rate-form>button{justify-self:start}.price-book-rate-form input,.price-book-rate-form select,.price-book-detail form input,.price-book-detail form select,.price-book-detail form textarea{width:100%;min-width:0}.price-book-impact-preview{min-width:0;background:#f5f9f8;border:1px solid #cee3e2;border-radius:10px;padding:1rem}.price-book-impact-preview h3{margin:0 0 .8rem}.price-book-impact-preview .estimate-line{grid-template-columns:minmax(0,1fr);gap:.35rem;border:1px solid #dce8e7;border-radius:8px;background:#fff;margin-top:.6rem;padding:.9rem 1rem}.price-book-impact-preview .estimate-line span,.price-book-impact-preview .estimate-line strong{grid-column:1;grid-row:auto;white-space:normal}.price-book-impact-preview .help{margin:0}.price-book-detail form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.2rem}.price-book-detail form>.panel-title,.price-book-detail form>h3,.price-book-detail form>.help,.price-book-detail form>.banner,.price-book-detail form>.estimate-line,.price-book-detail form>.form-actions,.price-book-detail form>label:has(textarea),.price-book-detail form>label.checkbox{grid-column:1/-1}.price-book-detail form>.panel-title{margin:-1.2rem -1.2rem .15rem}.price-book-detail form>h3{margin:1rem 0 0;padding-top:1rem;border-top:1px solid #e4ebed}.price-book-detail form>.help{margin:0;line-height:1.55}.price-book-detail form>label textarea{min-height:84px;padding:.65rem .7rem;border:1px solid #c4d1d8;border-radius:8px;font:inherit}.price-book-detail form>.estimate-line{border:1px solid #dce5e9;border-radius:10px;background:#f7faf9;padding:1rem;margin:0}.price-book-detail form>.price-book-cost-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;align-items:end}.price-book-detail form>.price-book-cost-row label{min-width:0}.price-book-detail form>.price-book-cost-row button{grid-column:1/-1;justify-self:start}.price-book-detail form>.price-book-projection{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem}.price-book-detail form>.price-book-projection>*{grid-column:1!important;grid-row:auto!important;white-space:normal!important}.price-book-detail form>.banner{margin:0;border-radius:8px}.price-book-detail form>.form-actions{padding-top:.5rem;border-top:1px solid #e4ebed}.price-book-detail>h3{margin:1.4rem 1.2rem .8rem}.price-book-detail>p{margin:1rem 1.2rem;line-height:1.55}.price-book-detail>.form-actions{padding:0 1.2rem 1.2rem}.price-book-history{border-top:1px solid #e4ebed;padding:1.1rem 1.2rem 1.3rem}.price-book-history>.estimate-line{display:grid;grid-template-columns:minmax(0,1fr);gap:.45rem;margin-top:.7rem;border:1px solid #e4ebed;border-radius:8px;padding:.9rem 1rem}.price-book-history>.estimate-line>*{grid-column:1!important;grid-row:auto!important;white-space:normal!important}.price-book-history details{min-width:0}.price-book-history summary{cursor:pointer;font-weight:700;color:#086e78;line-height:1.5}.price-book-history details p{margin:.6rem 0 0;overflow-wrap:anywhere}@media(max-width:900px){.price-book .customer-layout{grid-template-columns:minmax(0,1fr)}.price-book .customer-list{max-height:370px}}@media(max-width:620px){.price-book{gap:1rem}.price-book .workspace-heading .form-actions{width:100%}.price-book .workspace-heading .form-actions button{flex:1}.price-book .panel-title{gap:.8rem;padding:.95rem 1rem}.price-book-rates>.help{padding:.9rem 1rem}.price-book-rates>.customer-list{grid-template-columns:minmax(0,1fr);padding:.7rem 1rem 1rem}.price-book-rate-form,.price-book-detail form{grid-template-columns:minmax(0,1fr);padding:1rem}.price-book-rate-form>.panel-title{padding:0 0 .7rem}.price-book-detail form>.panel-title{margin:-1rem -1rem .1rem}.price-book-detail form>.price-book-cost-row{grid-template-columns:minmax(0,1fr)}.price-book-rate-form>button,.price-book-detail form>button,.price-book-detail form>.form-actions button{width:100%}.price-book-detail>h3,.price-book-detail>p{margin-inline:1rem}.price-book-detail>.form-actions{padding-inline:1rem}.price-book-history{padding:1rem}}.workspace-tabs{overflow-x:auto;white-space:nowrap;scrollbar-gutter:stable}.workspace-tabs button{flex:none}.workspace-heading>div{min-width:0}.workspace-heading h1{overflow-wrap:anywhere}.workspace .customer-layout,.workspace .customer-layout>.panel{min-width:0}.workspace .customer-filters input,.workspace .customer-filters select,.workspace .customer-form input,.workspace .customer-form select,.workspace .timecard-form input,.workspace .timecard-form select,.workspace .form-dialog input,.workspace .form-dialog select{width:100%;min-width:0}.workspace .form-times>*{min-width:0}.workspace .customer-detail>.form-actions{padding:0 1.2rem 1.2rem}.workspace .customer-detail>p.help{margin:1rem 1.2rem;line-height:1.55}.workspace .panel>.empty-small{margin:0}.workspace .panel>.error.banner{margin:1rem 1.2rem;border-radius:8px}.workspace .timecard-entry>*{min-width:0}.workspace .customer-row strong{overflow-wrap:anywhere}.workspace .customer-detail>.invoice-status-actions{gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid #e4ebed}.invoice-status-actions button{min-width:0;white-space:normal}@media(max-width:1000px){.workspace .estimate-edit-line{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace .estimate-edit-line label:first-child{grid-column:1/-1}}@media(max-width:740px){.workspace .workspace-heading>.date-actions,.workspace .workspace-heading>.form-actions{width:100%}.workspace .workspace-heading>.date-actions button,.workspace .workspace-heading>.form-actions button{flex:1}.workspace .customer-layout{gap:.8rem}.workspace .panel-title{flex-wrap:wrap}.workspace .customer-form form,.workspace .timecard-form,.workspace .form-dialog form{padding:1rem}.workspace .form-actions,.workspace .confirm-actions{flex-wrap:wrap;gap:.6rem}.workspace .estimate-line{grid-template-columns:minmax(0,1fr);gap:.35rem}.workspace .estimate-line>strong:last-child{grid-column:1;grid-row:auto;white-space:normal}.workspace .estimate-line>span{grid-column:1}}@media(max-width:420px){.workspace .workspace-heading>.form-actions button,.workspace .confirm-actions button{flex:1 1 100%}.workspace .timecard-entry{grid-template-columns:minmax(0,1fr)}.workspace .timecard-entry .status,.workspace .timecard-entry .timecard-hours{grid-column:1;grid-row:auto;justify-self:start}.workspace .customer-detail dl{grid-template-columns:minmax(75px,90px) minmax(0,1fr);margin:1rem;gap:.6rem}}.price-book-impact-preview{max-height:min(65vh,680px);overflow-y:auto}.price-book-impact-preview h3{position:sticky;top:0;background:#f5f9f8;padding:.25rem 0;z-index:1}.workspace>.panel.site-form{margin-bottom:1.2rem}.workspace>.panel.site-form>.panel-title{margin:-1.1rem -1.1rem .2rem}.timecards>.panel,.timecards>.warning,.timecards>section[aria-label="Team overview"]{margin-bottom:1rem}.timecards>.timecard-form>.panel-title{margin:-1.1rem -1.1rem 1rem}.timecards>.panel.timecard-form{max-width:760px}.workspace .site-form details>.site-form,.workspace .customer-form details>.site-form{margin-top:.75rem;background:#f7faf9;border:1px solid #e4ebed;border-radius:8px}.workspace .site-form summary,.workspace .customer-form summary{cursor:pointer;font-size:.83rem;font-weight:700;line-height:1.5}@media(max-width:740px){.workspace>.panel.site-form>.panel-title{margin:-1.1rem -1.1rem .2rem}.timecards>.timecard-form>.panel-title{margin:-1rem -1rem .9rem}.timecards>.timecard-status{align-items:flex-start}.timecard-toolbar{gap:.65rem}.timecard-toolbar label{width:100%}.workspace .site-form details>.site-form,.workspace .customer-form details>.site-form{padding:.9rem}}.templates-workspace{padding:1.5rem;width:100%}.template-categories,.template-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.template-categories [aria-current=page]{font-weight:700;text-decoration:underline}.template-layout{display:grid;grid-template-columns:minmax(15rem,1fr) minmax(19rem,1fr);gap:1.5rem}.template-list{list-style:none;padding:0}.template-list>li{border:1px solid #ccc;border-radius:.5rem;padding:1rem;margin:.5rem 0}.template-list>li>span{display:block;margin:.3rem 0}.template-editor{display:grid;gap:.75rem;align-content:start}.template-editor label{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.template-editor textarea{width:100%;min-height:4rem}.template-editor fieldset label{display:block;margin:.35rem 0}.template-item{border:1px solid #d2d8df;border-radius:.5rem;padding:.75rem;margin:.5rem 0}.template-item h3{margin:0 0 .5rem;font-size:1rem}.template-editor fieldset{min-width:0}.template-editor input:not([type=checkbox]),.template-editor select{max-width:100%}.template-layout{grid-template-columns:minmax(13rem,1fr) minmax(20rem,1.5fr);align-items:start}.template-layout.has-editor{grid-template-columns:minmax(12rem,.8fr) minmax(19rem,1.2fr) minmax(24rem,1.5fr)}.report-preview-panel{min-width:0}.report-preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.report-preview-toolbar h2{margin-bottom:.2rem}.report-preview-toolbar p{margin-top:0}.report-preview-paper{background:#fff;border:1px solid #cbd5e1;box-shadow:0 6px 24px #14253622;padding:2rem;font-size:12pt;line-height:1.45;overflow-wrap:anywhere}.report-preview-paper section{margin:1.1rem 0;break-inside:avoid}.report-preview-paper h3,.report-preview-paper h4{color:var(--preview-accent)}.report-preview-paper h4{font-size:1.05em;border-bottom:1px solid #cbd5e1;padding-bottom:.35rem;margin:0 0 .5rem}.report-preview-paper p{margin:.35rem 0;white-space:pre-wrap}.report-preview-paper ul{padding-left:1.4rem}.report-preview-paper table{width:100%;border-collapse:collapse;font-size:.85em}.report-preview-paper th,.report-preview-paper td{border-bottom:1px solid #cbd5e1;text-align:left;padding:.4rem}.report-preview-paper footer{margin-top:1.8rem;padding-top:.75rem;border-top:1px solid #cbd5e1}.report-preview-header{text-align:center;border-bottom:3px solid var(--preview-accent);padding-bottom:1rem}.report-preview-header h3{margin:.5rem 0}.report-preview-logo{display:inline-block;padding:.6rem 1rem;border:1px dashed #9aa8b8;font:9pt system-ui,sans-serif}.report-preview-title{text-align:left;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--preview-accent);margin:1rem 0 .4rem}.report-preview-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;text-align:left;font-size:.8em}.report-preview-address{border:1px solid #cbd5e1;border-radius:.4rem;padding:.7rem}.report-preview-row strong{margin-right:.3rem}.report-preview-totals{max-width:19rem;margin-left:auto!important}.report-preview-totals .report-preview-row{display:flex;justify-content:space-between}.report-preview-due{border-top:2px solid var(--preview-accent);font-weight:700}.report-preview-photo{border:1px dashed #9aa8b8;padding:1rem;text-align:center;font-size:.8em}.equipment-template-layout{display:grid;grid-template-columns:minmax(21rem,1.2fr) minmax(19rem,1fr);gap:1.5rem;align-items:start;margin-top:1rem}.equipment-template-layout .report-preview-panel{position:sticky;top:1rem}.template-group{border:1px solid #cbd5e1;border-radius:.5rem;min-width:0}.template-group>summary{cursor:pointer;padding:.8rem 1rem;font-weight:700}.template-group>summary:focus-visible,.report-preview-panel:focus-visible{outline:3px solid #19709c;outline-offset:2px}.template-group-fields{display:grid;gap:.75rem;padding:.5rem 1rem 1rem}.template-group-fields fieldset{min-width:0}.report-settings-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5rem}.report-settings-heading h2{margin:0}.report-settings-pane{min-width:0}.template-save-bar{background:#fff;padding:.75rem;margin:0;border-top:1px solid #cbd5e1;z-index:2}.report-preview-toolbar{position:sticky;top:0;z-index:1;padding:.35rem 0;background:#fff}@media(min-width:781px){.template-save-bar{position:sticky;bottom:0}}@media(min-width:781px){.template-layout.has-editor>.report-preview-panel,.equipment-template-layout>.report-preview-panel{position:sticky;top:1rem}}@media(max-width:1250px){.template-layout.has-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.template-layout.has-editor>div:first-child{display:none}.template-layout.has-editor .report-preview-panel{grid-column:auto}.equipment-template-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.template-layout,.template-layout.has-editor{grid-template-columns:minmax(0,1fr)}.template-layout.has-editor>div:first-child{display:block}.template-layout.has-editor .report-preview-panel{grid-column:auto}.equipment-template-layout{grid-template-columns:minmax(0,1fr)}.equipment-template-layout .report-preview-panel{position:static}.report-preview-paper{padding:1rem}}@media print{@page{size:letter;margin:14mm}body *{visibility:hidden!important}.report-preview-paper,.report-preview-paper *{visibility:visible!important}.report-preview-paper{position:absolute;inset:0 auto auto 0;width:100%;border:0;box-shadow:none;padding:0}.report-preview-paper section{break-inside:avoid}}@media(max-width:780px){.template-layout{grid-template-columns:1fr}}
