@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";
:root{--ink:#172033;--muted:#687188;--line:#e6e9ef;--paper:#fff;--wash:#f5f7fa;--nav:#172238;--blue:#2f6fed;--blue-dark:#2256bb;--green:#0f9c74;--amber:#d68b16;--rose:#d65361;--shadow:0 18px 50px #1e2b451c}*{box-sizing:border-box}html,body{background:var(--wash);min-height:100%;color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{color:inherit}.app{grid-template-columns:238px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#dce4f2;z-index:20;flex-direction:column;width:238px;padding:24px 14px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand,.public-brand,.mobile-brand{align-items:center;gap:11px;display:flex}.brand{padding:0 10px 27px}.logo-mark,.mark{color:#fff;background:linear-gradient(145deg,#75a1ff,#2f6fed);border-radius:10px;place-items:center;width:34px;height:34px;font:700 22px/1 Manrope;display:grid;box-shadow:0 8px 22px #2f6fed59}.brand strong,.public-brand{font:800 19px/1 Manrope}.brand small{color:#8d9aaf;text-transform:uppercase;letter-spacing:.11em;margin-top:4px;font-size:10px;display:block}.sidebar nav{gap:4px;display:grid}.sidebar button{color:#aeb9cc;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;min-height:43px;padding:0 12px;font-weight:600;display:flex}.sidebar button>span{text-align:center;width:21px;font-size:17px}.sidebar button:hover,.sidebar button.active{color:#fff;background:#25324a}.sidebar button.active{box-shadow:inset 3px 0 #70a0ff}.sidebar nav button b{background:var(--blue);color:#fff;border-radius:20px;margin-inline-start:auto;padding:2px 7px;font-size:10px}.sidebar-bottom{gap:12px;margin-top:auto;display:grid}.account{border-top:1px solid #ffffff17;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;padding:15px 6px 0;display:grid}.account>span,.avatar{color:#2f5fc2;background:#e7edff;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:grid}.account strong,.account small{white-space:nowrap;text-overflow:ellipsis;max-width:120px;display:block;overflow:hidden}.account strong{font-size:12px}.account small{color:#8997ad;margin-top:3px;font-size:10px}.account a{color:#8d9aaf;text-decoration:none}.workspace{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:12;background:#fff;justify-content:space-between;align-items:center;gap:18px;height:72px;padding:0 32px;display:flex;position:sticky;top:0}.search{border:1px solid var(--line);background:#f8f9fb;border-radius:9px;align-items:center;gap:10px;width:min(470px,48vw);height:40px;padding:0 13px;display:flex}.search span{color:#788196;font-size:22px}.search input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.top-actions{gap:9px;display:flex}.lang{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:0 13px}.new-button,.drawer-primary{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:11px 16px;font-weight:700;box-shadow:0 5px 12px #2f6fed33}.new-button:hover,.drawer-primary:hover{background:var(--blue-dark)}.new-button:disabled,.drawer-primary:disabled{opacity:.55;cursor:wait}.mobile-brand{display:none}.content{max-width:1510px;margin:auto;padding:31px 34px 60px}.page-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.page-head.compact{align-items:flex-end}.page-head h1{letter-spacing:-.035em;margin:5px 0 8px;font:800 clamp(24px,2.2vw,34px)/1.15 Manrope}.page-head p{color:var(--muted);margin:0;font-size:14px}.eyebrow{text-transform:uppercase!important;letter-spacing:.12em!important;color:#8790a2!important;font-size:10px!important;font-weight:800!important}.trial-chip{background:#eef3ff;border:1px solid #d9e4ff;border-radius:25px;align-items:center;gap:9px;padding:7px 13px;font-size:11px;display:flex}.trial-chip span{background:var(--blue);color:#fff;border-radius:12px;padding:3px 7px;font-weight:800}.trial-chip strong{color:#416199}.metrics{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:19px;display:grid}.metric{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:139px;padding:18px;position:relative;overflow:hidden}.metric:after{content:"";opacity:.045;background:currentColor;border-radius:50%;width:100px;height:100px;position:absolute;inset:auto -22px -42px auto}.metric-icon{float:right;width:35px;height:35px;color:var(--blue);background:#edf2ff;border-radius:9px;place-items:center;font-weight:800;display:grid}.metric.amber .metric-icon{color:var(--amber);background:#fff5df}.metric.rose .metric-icon{color:var(--rose);background:#fff0f2}.metric.green .metric-icon{color:var(--green);background:#eafaf4}.metric p{color:var(--muted);margin:2px 0 10px;font-size:12px;font-weight:600}.metric>strong{letter-spacing:-.04em;font:800 25px/1 Manrope;display:block}.metric small{color:#8a93a5;margin-top:12px;font-size:10px;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:12px}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:19px 21px;display:flex}.panel-head h2,.settings-form h2,.integrations h2{margin:3px 0;font:800 17px Manrope}.panel-head>span{color:var(--muted);font-size:11px}.schedule-row{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0f4;grid-template-columns:76px minmax(170px,1fr) 128px 95px 10px;align-items:center;gap:13px;width:100%;padding:15px 19px;display:grid}.schedule-row:last-child{border:0}.schedule-row:hover,.jobs-table>button:hover{background:#fafbfe}.time strong,.time span{display:block}.time strong{font:700 13px Manrope}.time span{color:var(--blue);margin-top:4px;font-size:8px;font-weight:800}.schedule-main strong,.assignee small{display:block}.schedule-main strong{font-size:13px}.schedule-main p,.assignee small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:10px;overflow:hidden}.assignee{grid-template-columns:28px 1fr;align-items:center;gap:7px;display:grid}.assignee>span{color:#2f5fc2;background:#e8edff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:9px;font-weight:800;display:grid}.assignee .unassigned{color:#788196;background:#f0f2f6;font-size:14px}.status,.status-pill{color:#606a7c;text-transform:uppercase;letter-spacing:.04em;background:#eef1f5;border-radius:20px;justify-content:center;align-items:center;width:max-content;padding:5px 8px;font-size:9px;font-style:normal;font-weight:800;display:inline-flex}.status.draft,.status.sent,.status-pill.sent{color:#9d660e;background:#fff4dc}.status.approved,.status.assigned,.status-pill.approved,.status-pill.assigned{color:#2d61c9;background:#edf2ff}.status.en_route,.status.on_site,.status-pill.en_route,.status-pill.on_site{color:#137b9d;background:#e8f7ff}.status.completed,.status-pill.completed{color:#bd4451;background:#fff0f2}.status.paid,.status-pill.paid{color:#087a5b;background:#e9f9f3}.pulse{padding-bottom:8px}.pulse-list{padding:8px 19px}.pulse-item{border-bottom:1px solid #edf0f4;align-items:center;gap:12px;padding:14px 0;display:flex}.pulse-item:last-child{border:0}.pulse-item>span{width:38px;height:38px;color:var(--blue);background:#f0f4ff;border-radius:10px;place-items:center;font:800 16px Manrope;display:grid}.pulse-item strong{font-size:12px}.pulse-item p{color:var(--muted);margin:4px 0 0;font-size:10px}.empty{text-align:center;color:var(--muted);width:100%;padding:45px 20px}.empty>span{width:44px;height:44px;color:var(--blue);background:#eef2f8;border-radius:50%;place-items:center;margin:0 auto 12px;font-weight:800;display:grid}.empty strong{color:var(--ink);font-size:13px;display:block}.empty p{margin:5px 0 0;font-size:11px}.filters{gap:6px;margin-bottom:12px;display:flex;overflow:auto}.filters button{border:1px solid var(--line);white-space:nowrap;cursor:pointer;background:#fff;border-radius:20px;padding:7px 12px;font-size:11px;font-weight:600}.filters button.active{background:var(--nav);border-color:var(--nav);color:#fff}.table-head,.jobs-table>button{grid-template-columns:1.1fr 1fr 1fr .9fr .7fr .75fr 10px;align-items:center;gap:14px;display:grid}.table-head{color:#8992a4;text-transform:uppercase;letter-spacing:.08em;background:#f9fafc;border-radius:12px 12px 0 0;padding:12px 18px;font-size:9px;font-weight:800}.jobs-table>button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;width:100%;padding:15px 18px}.jobs-table>button span strong,.jobs-table>button span small{text-overflow:ellipsis;display:block;overflow:hidden}.jobs-table>button span strong{white-space:nowrap;font-size:11px}.jobs-table>button span small{color:var(--muted);white-space:nowrap;margin-top:4px;font-size:9px}.customer-grid,.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.customer-card,.team-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;padding:18px}.customer-card{cursor:pointer}.customer-card:hover{border-color:#bbcaf0;box-shadow:0 9px 28px #1e2b4512}.customer-top{align-items:center;gap:10px;display:flex}.customer-top>span:nth-child(2){min-width:0}.customer-top strong,.customer-top small{display:block}.customer-top strong{font-size:13px}.customer-top small{color:var(--muted);margin-top:3px;font-size:10px}.customer-top b{margin-left:auto}.customer-card>p{color:var(--muted);border-bottom:1px solid var(--line);margin:0;padding:15px 0;font-size:10px}.customer-card>div:last-child{grid-template-columns:repeat(3,1fr);padding-top:14px;display:grid}.customer-card>div:last-child span+span{border-left:1px solid var(--line);padding-left:12px}.customer-card>div:last-child strong,.customer-card>div:last-child small{display:block}.customer-card>div:last-child strong{font-size:11px}.customer-card>div:last-child small{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:8px}.payment-summary{grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:16px;display:grid}.payment-summary article{border:1px solid var(--line);background:#fff;border-radius:12px;padding:19px}.payment-summary span,.payment-summary small{color:var(--muted);font-size:10px;display:block}.payment-summary strong{margin:8px 0;font:800 25px Manrope;display:block}.ledger{overflow:hidden}.ledger button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;grid-template-columns:40px 1fr 160px 100px;align-items:center;gap:12px;width:100%;padding:15px 18px;display:grid}.payment-icon{width:34px;height:34px;color:var(--rose);background:#fff0f2;border-radius:50%;place-items:center;display:grid}.payment-icon.paid{color:var(--green);background:#e9f9f3}.ledger strong,.ledger small{display:block}.ledger strong{font-size:11px}.ledger small{color:var(--muted);margin-top:4px;font-size:9px}.team-card>div:first-child{align-items:center;gap:10px;display:flex}.team-card>div:first-child>span:nth-child(2){flex:1}.team-card strong,.team-card small{display:block}.team-card small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:9px}.team-card i{color:var(--green);background:#e9f9f3;border-radius:20px;padding:4px 7px;font-size:8px;font-style:normal}.team-card>p{color:var(--muted);margin:16px 0;font-size:11px}.team-stats{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px;padding:14px 0;display:grid!important}.team-card>button{color:var(--blue);cursor:pointer;background:#f0f4ff;border:0;border-radius:7px;width:100%;margin-top:14px;padding:10px;font-size:10px;font-weight:700}.settings-grid{grid-template-columns:1.05fr .95fr;gap:17px;display:grid}.settings-form,.integrations{padding:23px}.settings-form h2,.integrations h2{margin-bottom:18px}.settings-form label,.modal label,.assign-select{color:#687188;gap:6px;margin-bottom:14px;font-size:10px;font-weight:700;display:grid}.settings-form input,.settings-form textarea,.settings-form select,.modal input,.modal textarea,.modal select,.assign-select select{color:var(--ink);background:#fff;border:1px solid #dfe3ea;border-radius:8px;outline:0;padding:10px 11px}.settings-form input:focus,.settings-form textarea:focus,.modal input:focus,.modal textarea:focus{border-color:#7398e8;box-shadow:0 0 0 3px #eef3ff}.settings-form textarea,.modal textarea{resize:vertical;min-height:74px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.integration{border-bottom:1px solid var(--line);grid-template-columns:37px 1fr auto;align-items:center;gap:11px;padding:16px 0;display:grid}.integration>span{width:37px;height:37px;color:var(--blue);background:#eef3ff;border-radius:9px;place-items:center;display:grid}.integration strong{font-size:12px}.integration p{color:var(--muted);margin:4px 0;font-size:9px}.integration i{border-radius:20px;padding:5px 8px;font-size:8px;font-style:normal}.integration i.connected{color:var(--green);background:#e9f9f3}.integration i.pending{color:var(--amber);background:#fff4dc}.integration-help{background:#f4f7ff;border:1px solid #dbe5fc;border-radius:9px;margin-top:20px;padding:14px}.integration-help strong{font-size:11px}.integration-help p{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.5}.integration-note{color:#8c620f;background:#fff4dc;border-radius:20px;padding:7px 10px;font-size:10px}.inbox{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:330px 1fr;height:calc(100vh - 215px);min-height:540px;display:grid;overflow:hidden}.inbox aside{border-right:1px solid var(--line);overflow:auto}.inbox aside button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;grid-template-columns:38px 1fr auto;gap:9px;width:100%;padding:14px;display:grid;position:relative}.inbox aside button.active{background:#f2f6ff}.inbox aside button>div{min-width:0}.inbox aside strong,.inbox aside p{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.inbox aside strong{font-size:11px}.inbox aside p{color:var(--muted);margin:5px 0;font-size:9px}.inbox aside time{color:#8b94a5;font-size:8px}.inbox aside b{background:var(--blue);color:#fff;border-radius:20px;padding:2px 6px;font-size:8px;position:absolute;bottom:11px;right:12px}.chat{grid-template-rows:62px 1fr 66px;min-width:0;display:grid}.chat header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:0 18px;display:flex}.chat header strong{font-size:12px}.chat header p{color:var(--muted);margin:3px 0 0;font-size:9px}.messages{background:#f8f9fb;flex-direction:column;gap:12px;padding:24px;display:flex;overflow:auto}.messages>div{background:#fff;border-radius:12px;max-width:70%;padding:11px 13px;box-shadow:0 2px 7px #1e2b450f}.messages>div.out{background:#e8f0ff;align-self:flex-end}.messages p{margin:0;font-size:11px;line-height:1.45}.messages span{color:#8a93a5;margin-top:6px;font-size:8px;display:block}.chat form{border-top:1px solid var(--line);gap:9px;padding:12px;display:flex}.chat form input{border:1px solid var(--line);border-radius:8px;outline:0;flex:1;padding:0 12px}.chat form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:0 19px;font-weight:700}.overlay{z-index:50;background:#11192861;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#fff;width:min(520px,100vw);height:100%;overflow:auto;box-shadow:-20px 0 50px #17203326}.drawer>header{justify-content:space-between;align-items:flex-start;padding:22px 24px 17px;display:flex}.drawer>header h2{margin:5px 0 9px;font:800 21px Manrope}.drawer>header button,.modal header>button{cursor:pointer;background:#f0f2f6;border:0;border-radius:50%;width:32px;height:32px;font-size:20px}.drawer>nav{border-bottom:1px solid var(--line);padding:0 24px;display:flex}.drawer>nav button{text-transform:capitalize;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 12px;font-size:10px;font-weight:700}.drawer>nav button.active{color:var(--blue);border-color:var(--blue)}.drawer-body{padding:21px 24px}.job-customer{border:1px solid var(--line);border-radius:10px;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:14px;display:grid}.job-customer strong,.job-customer p,.job-customer small{display:block}.job-customer strong{font-size:12px}.job-customer p,.job-customer small{color:var(--muted);margin:3px 0;font-size:9px}.job-customer a{color:var(--green);font-size:9px;font-weight:800;text-decoration:none}.detail-grid{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.detail-grid>div{background:#f8f9fb;border-radius:8px;padding:12px}.detail-grid span,.detail-grid strong{display:block}.detail-grid span{text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-size:8px}.detail-grid strong{font-size:10px}.quote-block{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:16px}.quote-block>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:11px;display:flex}.quote-block h3{margin:0;font:800 14px Manrope}.quote-block>div span{color:var(--muted);font-size:9px}.quote-block p{justify-content:space-between;margin:11px 0;font-size:10px;display:flex}.quote-block .quote-total{border-top:1px solid var(--line);padding-top:12px;font-size:13px}.share-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.share-actions button,.proof-upload button{color:var(--blue);cursor:pointer;background:#f3f6ff;border:1px solid #d9e3fb;border-radius:8px;padding:10px;font-size:9px;font-weight:800}.drawer-primary{width:100%;margin-top:10px}.proof-upload{border:1px dashed #c7d1e3;border-radius:10px;padding:16px}.proof-upload h3{margin:0 0 12px;font-size:12px}.proof-upload>div{grid-template-columns:90px 1fr 70px;gap:7px;display:grid}.proof-upload select,.proof-upload input{border:1px solid var(--line);border-radius:6px;min-width:0;padding:7px;font-size:9px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.photo-grid figure{border:1px solid var(--line);background:#fff;border-radius:9px;margin:0;overflow:hidden}.photo-grid img{object-fit:cover;width:100%;height:145px;display:block}.photo-grid figcaption{color:var(--muted);text-transform:capitalize;padding:8px;font-size:8px}.timeline{padding:4px 0}.timeline>div{grid-template-columns:15px 1fr;gap:10px;min-height:58px;display:grid;position:relative}.timeline>div:after{content:"";background:#dfe3ea;width:1px;position:absolute;top:16px;bottom:-2px;left:5px}.timeline>div:last-child:after{display:none}.timeline i{background:var(--blue);border:3px solid #dfe8ff;border-radius:50%;width:11px;height:11px}.timeline p{margin:0}.timeline strong,.timeline span,.timeline small{display:block}.timeline strong{text-transform:capitalize;font-size:10px}.timeline span,.timeline small{color:var(--muted);margin-top:4px;font-size:8px}.modal{width:min(650px,100vw - 28px);max-height:90vh;box-shadow:var(--shadow);color:var(--ink);border:0;border-radius:14px;padding:0}.modal::backdrop{background:#11192880}.modal.small{width:min(460px,100vw - 28px)}.modal header,.modal footer{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:19px 22px;display:flex}.modal h2{margin:4px 0;font:800 20px Manrope}.modal-body{max-height:calc(90vh - 145px);padding:20px 22px;overflow:auto}.modal-body h3{margin:18px 0 11px;font:800 12px Manrope}.modal-body h3:first-child{margin-top:0}.modal footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;gap:9px}.modal footer>button:first-child{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px}.item-row{grid-template-columns:1fr 65px 90px 29px;gap:6px;margin-bottom:7px;display:grid}.item-row input{min-width:0}.item-row button{cursor:pointer;background:#f2f3f6;border:0;border-radius:7px}.add-line{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:10px;font-weight:800}.quote-preview{background:#f4f7ff;border-radius:8px;justify-content:space-between;margin:8px 0 14px;padding:12px 13px;font-size:11px;display:flex}.form-error{color:#b53b48;background:#fff0f2;border-radius:7px;padding:9px;font-size:10px}.toast,.tech-toast{color:#fff;box-shadow:var(--shadow);z-index:100;background:#172238;border-radius:9px;padding:12px 16px;font-size:11px;font-weight:700;position:fixed;bottom:22px;right:22px}.loading,.fatal{text-align:center;place-content:center;justify-items:center;gap:12px;min-height:100vh;display:grid}.loading p,.fatal p{color:var(--muted);font-size:12px}.fatal h1{font:800 23px Manrope}.fatal button{background:var(--blue);color:#fff;border:0;border-radius:8px;padding:10px 15px;font-weight:700}.loading-dot{border:3px solid #dce5f8;border-top-color:var(--blue);border-radius:50%;width:25px;height:25px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.public-shell{background:#f1f4f8;min-height:100vh;padding:22px 16px 45px}.public-top{color:#7a8496;justify-content:space-between;align-items:center;max-width:720px;margin:0 auto 18px;font-size:10px;display:flex}.public-brand{color:var(--ink);text-decoration:none}.public-card{background:#fff;border:1px solid #e3e7ee;border-radius:16px;max-width:720px;margin:auto;overflow:hidden;box-shadow:0 18px 55px #1e2b4517}.public-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:29px 30px 22px;display:flex}.public-hero h1{letter-spacing:-.04em;margin:7px 0;font:800 clamp(23px,5vw,32px) Manrope}.muted{color:var(--muted);font-size:11px}.status-pill{white-space:nowrap;gap:6px}.status-pill i{background:currentColor;border-radius:50%;width:6px;height:6px}.public-summary{border-bottom:1px solid var(--line);background:#fafbfd;grid-template-columns:repeat(3,1fr);padding:18px 30px;display:grid}.public-summary>div{padding-right:17px}.public-summary>div+div{border-left:1px solid var(--line);padding-left:17px}.public-summary span,.public-summary strong{display:block}.public-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:8px}.public-summary strong{font-size:10px}.live-strip{background:#f0fbf7;border:1px solid #cfe8df;border-radius:10px;align-items:center;gap:11px;margin:22px 30px 0;padding:14px;display:flex}.live-pulse{background:var(--green);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 5px #0f9c741f}.live-strip strong{font-size:11px}.live-strip p{color:#52756a;margin:4px 0 0;font-size:9px}.public-section{border-bottom:1px solid var(--line);padding:24px 30px}.public-section h2{margin:0 0 13px;font:800 14px Manrope}.scope-note{color:var(--muted);margin:0 0 16px;font-size:10px;line-height:1.55}.line-items{gap:11px;display:grid}.line-item{justify-content:space-between;font-size:11px;display:flex}.line-item small{color:var(--muted)}.line-item.total{border-top:1px solid var(--line);padding-top:13px;font-size:14px}.warranty{color:var(--green);background:#effaf6;border-radius:7px;margin:15px 0 0;padding:9px;font-size:9px}.public-message{color:#157359;background:#eef8f4;border-radius:8px;margin:19px 30px 0;padding:12px;font-size:10px}.public-actions{gap:9px;padding:24px 30px;display:grid}.public-actions>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:13px;font-weight:800}.public-actions .secondary-public{color:var(--blue);background:#eff3fb}.whatsapp-button{color:#31576b;text-align:center;border:1px solid #dbe1e9;border-radius:9px;padding:11px;font-size:10px;font-weight:700;text-decoration:none}.paid-receipt{background:#effaf6;border-radius:9px;align-items:center;gap:12px;padding:13px;display:flex}.paid-receipt>span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.paid-receipt strong,.paid-receipt p{display:block}.paid-receipt strong{font-size:11px}.paid-receipt p{color:#52756a;margin:3px 0;font-size:9px}.public-foot{text-align:center;color:#8b94a4;margin:18px;font-size:9px}.public-error{text-align:center;padding:55px}.public-error .mark,.public-error .loading-dot{margin:auto}.public-error h1{font:800 22px Manrope}.public-error p{color:var(--muted);font-size:11px}.tech-shell{background:#eef2f7;min-height:100vh;padding-bottom:30px}.tech-header{background:var(--nav);color:#fff;justify-content:space-between;align-items:center;height:68px;padding:0 max(18px,50vw - 350px);display:flex}.tech-header .public-brand{color:#fff}.tech-header>div:last-child{text-align:right}.tech-header strong,.tech-header span{display:block}.tech-header strong{font-size:11px}.tech-header span{color:#9eabc0;margin-top:3px;font-size:8px}.job-tabs{gap:7px;max-width:700px;margin:15px auto 0;padding:0 14px;display:flex;overflow:auto}.job-tabs button{text-align:left;cursor:pointer;background:#fff;border:1px solid #dce1e8;border-radius:9px;min-width:145px;padding:10px}.job-tabs button.active{border-color:var(--blue);box-shadow:0 0 0 2px #dfe8ff}.job-tabs span,.job-tabs strong{display:block}.job-tabs span{color:var(--muted);font-size:8px}.job-tabs strong{margin-top:4px;font-size:10px}.tech-job{background:#fff;border:1px solid #dfe3ea;border-radius:13px;max-width:672px;margin:11px auto;overflow:hidden}.tech-title{justify-content:space-between;align-items:flex-start;gap:10px;padding:21px;display:flex}.tech-title h1{letter-spacing:-.03em;margin:6px 0;font:800 22px Manrope}.tech-customer{border:1px solid var(--line);border-radius:10px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;margin:0 21px;padding:13px;display:grid}.tech-customer strong{font-size:11px}.tech-customer p{color:var(--muted);margin:4px 0;font-size:9px}.tech-customer a{color:var(--blue);background:#eef3ff;border:0;border-radius:7px;padding:8px 12px;font-size:9px;font-weight:800;text-decoration:none}.tech-details{grid-template-columns:1fr 2fr;gap:10px;padding:14px 21px;display:grid}.tech-details div{background:#f7f8fa;border-radius:8px;padding:11px}.tech-details span,.tech-details strong{display:block}.tech-details span{text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-size:8px}.tech-details strong{font-size:10px;line-height:1.45}.tech-actions{grid-template-columns:1fr 1fr;gap:8px;padding:0 21px 19px;display:grid}.tech-actions button,.tech-actions a,.tech-upload button{background:var(--blue);color:#fff;text-align:center;cursor:pointer;border:0;border-radius:8px;padding:12px;font-size:10px;font-weight:800;text-decoration:none}.tech-actions a{color:var(--blue);background:#eff3fb}.tech-upload{border-top:1px solid var(--line);padding:18px 21px}.tech-upload h2{margin:0 0 11px;font:800 13px Manrope}.tech-upload>div{grid-template-columns:80px 1fr 70px;gap:7px;display:grid}.tech-upload select,.tech-upload input{border:1px solid var(--line);border-radius:7px;min-width:0;padding:8px;font-size:9px}.tech-empty{text-align:center;place-content:center;justify-items:center;min-height:70vh;display:grid}.tech-empty h1{font:800 22px Manrope}.tech-empty p{color:var(--muted);font-size:11px}.tech-done{width:54px;height:54px;color:var(--green);background:#e8f8f2;border-radius:50%;place-items:center;font-size:24px;display:grid}.tech-toast{text-align:center;max-width:350px;margin:8px auto -52px;position:sticky;top:8px}[dir=rtl] .sidebar{left:auto;right:0}[dir=rtl] .workspace{grid-column:1}[dir=rtl] .sidebar button{text-align:right}[dir=rtl] .sidebar button.active{box-shadow:inset -3px 0 #70a0ff}[dir=rtl] .customer-top b{margin-left:0;margin-right:auto}@media (max-width:1050px){.app{grid-template-columns:76px 1fr}.sidebar{width:76px;padding-inline:10px}.brand{padding-inline:10px}.brand>div,.sidebar button:not(.active){font-size:0}.sidebar button{justify-content:center;padding:0}.sidebar button>span{font-size:18px}.sidebar button.active{font-size:0}.account>div,.account a{display:none}.account{grid-template-columns:1fr;justify-items:center}.workspace{grid-column:2}.customer-grid,.team-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.pulse-list{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}[dir=rtl] .workspace{grid-column:1}}@media (max-width:760px){.app{display:block}.sidebar{z-index:40;width:100%;height:62px;padding:7px 8px;display:block;position:fixed;inset:auto 0 0}.brand,.sidebar-bottom{display:none}.sidebar nav{grid-template-columns:repeat(6,1fr);gap:3px;display:grid}.sidebar button,.sidebar button:not(.active),.sidebar button.active{min-height:48px;font-size:0}.sidebar button>span{font-size:17px}.topbar{height:61px;padding:0 14px}.mobile-brand{display:flex}.mobile-brand .logo-mark{width:29px;height:29px;font-size:18px}.mobile-brand strong{font:800 16px Manrope}.search{display:none}.top-actions .new-button{padding:10px 12px;font-size:0}.top-actions .new-button:first-letter{font-size:16px}.content{padding:23px 14px 90px}.page-head{display:block}.page-head .trial-chip,.page-head>.new-button,.integration-note{display:none}.metrics{grid-template-columns:1fr 1fr}.metric{min-height:126px;padding:15px}.metric>strong{font-size:21px}.schedule-row{grid-template-columns:56px 1fr 78px 8px;padding:13px}.schedule-row .assignee{display:none}.dashboard-grid{display:block}.pulse{margin-top:14px}.pulse-list{display:block}.jobs-table{overflow:auto}.table-head,.jobs-table>button{min-width:690px}.customer-grid,.team-grid{grid-template-columns:1fr}.payment-summary{grid-template-columns:1fr 1fr}.payment-summary article:last-child{grid-column:1/-1}.ledger button{grid-template-columns:38px 1fr 110px}.ledger .status{display:none}.settings-grid{grid-template-columns:1fr}.inbox{grid-template-columns:94px 1fr;height:calc(100vh - 175px);min-height:0}.inbox aside button{grid-template-columns:38px;justify-content:center}.inbox aside button>div,.inbox aside time,.inbox aside b{display:none}.messages{padding:14px}.messages>div{max-width:88%}.public-summary{grid-template-columns:1fr;padding:9px 22px}.public-summary>div{padding:10px 0}.public-summary>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.public-hero,.public-section,.public-actions{padding-left:22px;padding-right:22px}.public-hero{display:block}.public-hero .status-pill{margin-top:10px}.live-strip,.public-message{margin-left:22px;margin-right:22px}.form-row{grid-template-columns:1fr}.drawer{width:100%}.modal-body{padding:17px}.item-row{grid-template-columns:1fr 54px 74px 28px}.tech-job{margin:11px 10px}.tech-details{grid-template-columns:1fr}.photo-grid img{height:120px}}@media (max-width:430px){.metrics{gap:8px}.metric{min-height:120px}.metric-icon{width:30px;height:30px}.page-head h1{font-size:26px}.payment-summary{grid-template-columns:1fr}.payment-summary article:last-child{grid-column:auto}.share-actions,.tech-upload>div,.proof-upload>div{grid-template-columns:1fr}.tech-upload input{width:100%}.public-shell{padding:12px 8px 30px}.public-top{padding:0 7px}.public-card{border-radius:12px}.photo-grid{grid-template-columns:1fr}}.payment-offline{background:#fff7e8;border:1px solid #f1dfba;border-radius:9px;padding:13px}.payment-offline strong{font-size:11px}.payment-offline p{color:#8a6a2a;margin:4px 0 0;font-size:9px;line-height:1.45}.auth{background:radial-gradient(1100px 520px at 50% -8%,#e7eeff 0%,var(--wash) 62%);place-items:center;min-height:100vh;padding:28px 16px;display:grid}.auth-card{border:1px solid var(--line);width:min(452px,100%);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:30px}.auth-brand{align-items:center;gap:11px;margin-bottom:22px;display:flex}.auth-brand strong{font:800 19px/1 Manrope;display:block}.auth-brand small{color:#8790a2;text-transform:uppercase;letter-spacing:.11em;margin-top:4px;font-size:10px;display:block}.auth-card h1{letter-spacing:-.035em;margin:0 0 7px;font:800 25px/1.15 Manrope}.auth-sub{color:var(--muted);margin:0 0 22px;font-size:12px}.auth-card label{color:#687188;gap:6px;margin-bottom:14px;font-size:10px;font-weight:700;display:grid}.auth-card input:not([type=checkbox]){color:var(--ink);background:#fff;border:1px solid #dfe3ea;border-radius:8px;outline:0;width:100%;padding:11px}.auth-card input:focus{border-color:#7398e8;box-shadow:0 0 0 3px #eef3ff}.auth-card label.checkbox{color:var(--muted);align-items:flex-start;gap:9px;font-size:10px;font-weight:600;line-height:1.5;display:flex}.auth-card label.checkbox input{accent-color:var(--blue);flex:none;margin-top:1px}.auth-submit{width:100%;margin-top:6px;padding:13px}.auth-switch{text-align:center;color:var(--muted);margin:19px 0 0;font-size:11px}.auth-switch button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:800}.auth-switch button:hover{text-decoration:underline}.signout{color:#8d9aaf;cursor:pointer;background:0 0;border:0;padding:4px;font-size:14px}.signout:hover{color:#fff}.integration-action{width:100%;color:var(--blue);cursor:pointer;background:#f3f6ff;border:1px solid #d9e3fb;border-radius:8px;margin-top:14px;padding:11px;font-size:10px;font-weight:800}.integration-action.subtle{border-color:var(--line);color:var(--muted);background:#f7f8fa}.integration-form{background:#f8faff;border:1px solid #dbe5fc;border-radius:9px;margin-top:14px;padding:15px}.integration-form label{color:#687188;gap:6px;margin-bottom:12px;font-size:10px;font-weight:700;display:grid}.integration-form input{color:var(--ink);background:#fff;border:1px solid #dfe3ea;border-radius:8px;outline:0;width:100%;padding:10px}.integration-form input:focus{border-color:#7398e8;box-shadow:0 0 0 3px #eef3ff}.integration-hint{color:var(--muted);margin:0 0 12px;font-size:9px;line-height:1.6}.integration-hint code{color:#2f5fc2;word-break:break-all;background:#eaf0ff;border-radius:4px;padding:2px 5px;font-size:9px}.integration-buttons{justify-content:flex-end;gap:8px;display:flex}.integration-buttons button:first-child{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px}
