:root{font-family:system-ui,sans-serif;color:#182b35;background:#edf2f3}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:28px}header{display:flex;gap:18px;align-items:center;margin-bottom:24px}h1{margin:0;font-size:30px}header p{margin:4px 0;color:#51656e}.mark{background:#12645e;color:white;border-radius:16px;font-size:36px;padding:6px 23px;font-weight:800}.badge{margin-left:auto;font-size:13px;background:#d6e8e2;padding:8px;border-radius:8px}aside{background:#fff1ce;padding:16px}nav{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}button{border:0;border-radius:8px;background:#12645e;color:white;padding:12px 18px;font:inherit;cursor:pointer}nav button{background:white;color:#23424a}nav button[aria-pressed=true]{background:#12645e;color:white}button:disabled{opacity:.5;cursor:wait}article,section{background:white;border:1px solid #dce5e5;padding:24px;border-radius:14px;margin-bottom:16px}h2{font-size:21px}h3{margin-top:0}form{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:flex;flex-direction:column;gap:7px;font-size:14px}input,select,textarea{width:100%;padding:11px;border:1px solid #a7babc;border-radius:7px;font:inherit;background:white;color:#182b35}textarea{min-height:80px}.wide{grid-column:1/-1}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px}.description{white-space:pre-wrap}.description,article p{overflow-wrap:anywhere}.error{padding:16px;background:#ffe1df}footer{padding:30px 0;color:#596b73;font-size:13px}p{line-height:1.6}@media(max-width:600px){main{padding:16px}form{grid-template-columns:1fr}.badge{display:none}article,section{padding:18px}}.brand-header{background:#fff;border:1px solid #dce5e5;border-radius:14px;padding:20px 24px;flex-wrap:wrap}.brand{min-width:0;flex:1 1}.brand-title{line-height:1}.brand-logo{display:block;width:100%;max-width:440px;height:auto}.brand-header p{margin:8px 0 0;font-size:14px}.brand-header .badge{flex-shrink:0}@media(max-width:600px){.brand-header{padding:14px}.brand-logo{max-width:100%}.brand-header p{font-size:12px}}.photo-report{margin-top:20px;border-top:1px solid #dce5e5;padding-top:14px}.photo-report summary{cursor:pointer;font-weight:650;padding:6px 0}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin:14px 0}.photo-grid figure{margin:0;min-width:0}.photo-grid img{width:100%;height:140px;object-fit:cover;border-radius:8px;background:#edf2f3}.photo-grid figcaption{font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.photo-grid time{display:block;font-size:11px;color:#596b73;margin-top:4px}.photo-form{grid-template-columns:1fr;gap:12px}.photo-form input{min-width:0}.photo-help{font-size:12px;color:#596b73;margin:0}.photo-form button{justify-self:start}.cards>article{min-width:0}.login-form,.single-form{display:grid;grid-template-columns:1fr;gap:12px;margin:16px 0}.single-form h4{margin:0}.login-panel{max-width:540px;padding-top:8vh}.login-form button{margin-bottom:16px}.secondary{background:#edf2f3;color:#23424a;border:1px solid #a7babc}.money-panel{padding:14px 0;border-top:1px solid #dce5e5}.client-access summary,.money-panel summary{cursor:pointer;font-weight:600}.client-access{margin-top:18px}.access-record{padding:14px;margin-top:12px;background:#f6f8f8}.access-record h4{overflow-wrap:anywhere}.access-record .secondary{margin-top:8px}.actions{display:flex;gap:8px;flex-wrap:wrap}.pay{background:#d6e8e2;padding:12px;border-radius:8px}.notice{padding:14px;margin-top:12px}.notice.unread{border-left:4px solid #ed1c24;background:#fff7f7}article:target{outline:3px solid #12645e;outline-offset:4px}.assignment-picker{border:1px solid #dce5e5;border-radius:8px;padding:14px;min-width:0}.assignment-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;padding:8px 0}.check-label{flex-direction:row;align-items:center;overflow-wrap:anywhere}.check-label input{width:auto;min-width:18px;height:18px}.danger{background:#a53232;margin-top:20px}fieldset:disabled{opacity:.65}.materials-panel{border-top:1px solid #dce5e5;margin-top:18px;padding-top:14px}.materials-panel summary{font-weight:600;cursor:pointer}.material-line{padding:14px;margin:12px 0;background:#f6f8f8}.material-line h4{margin:0;overflow-wrap:anywhere}.material-fields{display:grid;gap:12px;padding:0;border:0;min-width:0}.material-fields input{min-width:0}.material-fields button{justify-self:start}.brand-header{gap:16px;align-items:center}.brand-logo{max-width:650px}.brand-header>.actions{gap:6px;flex-shrink:0}.brand-header>.actions button{font-size:13px;padding:7px 10px;min-height:36px}@media(max-width:600px){.brand-header{gap:10px}.brand-header .brand{flex-basis:100%}.brand-header>.actions{margin-left:auto}.brand-header>.actions button{min-height:40px;padding:8px 12px}.brand-logo{max-width:100%}}.deleted-materials{margin:16px 0}.deleted-material{background:#fff1ef;border-color:#e0b9b1}.deleted-material h4{color:#993c2c}.drilling-plan{min-width:0;border:1px solid #c8d7d8;border-radius:10px;padding:14px}.drilling-row{padding:12px;display:grid;gap:10px}.drilling-plan [aria-pressed=false]{background:#edf2f3;color:#23424a;border:1px solid #a7babc}.drilling-plan [aria-pressed=true]{outline:2px solid #12645e;outline-offset:2px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.estimates details{margin:18px 0}.estimates summary{cursor:pointer;font-weight:600;padding:8px 0}.estimates .actions h2{margin:0;flex:1 1}.quote-groups{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.quote-groups button{background:#edf2f3;color:#23424a}.quote-groups button[aria-pressed=true]{background:#12645e;color:#fff}.quote-catalog{max-height:460px;overflow:auto;border:1px solid #dce5e5;border-radius:10px;margin:12px 0}.quote-catalog-item{padding:14px;display:grid;grid-template-columns:1fr auto;gap:6px 16px;border-bottom:1px solid #dce5e5}.quote-catalog-item small,.quote-catalog-item span,.quote-catalog-item strong{grid-column:1;overflow-wrap:anywhere}.quote-catalog-item small{color:#78500f}.quote-catalog-item button{grid-column:2;grid-row:1/4;align-self:center}.quote-line{border:1px solid #dce5e5;border-radius:12px;padding:16px;margin:16px 0;background:#f8fafb}.quote-line>.actions{justify-content:space-between;align-items:center}.quote-line .secondary{padding:6px 12px;font-size:13px}.quote-totals{padding:16px;margin:18px 0;background:#e9f2ef;border-radius:10px}.button-link{display:inline-block;border-radius:8px;background:#12645e;color:white;padding:12px 18px;text-decoration:none}.button-link.disabled{opacity:.5;pointer-events:none}.estimates input,.estimates textarea{min-width:0}.quote-print{max-width:1100px}.quote-paper{padding:36px;background:white;color:#172c35}.quote-letterhead{justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:2px solid #192e3a}.quote-letterhead img{max-width:45%;height:auto}.quote-letterhead>div{max-width:50%;font-size:12px}.quote-print h1{font-size:26px}.quote-print h2{font-size:19px}.quote-customer{padding:12px 0}.quote-customer p{margin:4px 0}.quote-print-table{border-collapse:collapse;width:100%;font-size:12px;margin:16px 0;table-layout:fixed}.quote-print-table th{background:#edf2f3;text-align:left}.quote-print-table td,.quote-print-table th{border:1px solid #a9b9c0;padding:8px;vertical-align:top;overflow-wrap:anywhere}.quote-print-table th:nth-child(2){width:43%}.quote-print-table th:nth-child(3){width:10%}.quote-print-table th:nth-child(4){width:8%}.quote-print-table th:nth-child(5),.quote-print-table th:nth-child(6){width:17%}.quote-print-table td:nth-child(n+3){text-align:right}.quote-print-table small{color:#52646d}.quote-print-totals{text-align:right}.quote-print-totals p{margin:4px 0}.quote-requisites{padding:16px 0;color:inherit;font-size:12px;border-top:1px solid #a9b9c0;margin-top:24px}.quote-requisites p{margin:5px 0}.print-actions{margin-bottom:20px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}.print-actions p{width:100%;font-size:13px}.quote-print tr{page-break-inside:avoid;break-inside:avoid}.quote-print thead{display:table-header-group}@media(max-width:600px){.quote-catalog-item,.quote-grid{grid-template-columns:1fr}.quote-catalog-item button{grid-column:1;grid-row:auto;justify-self:start}.quote-paper{padding:16px}.quote-letterhead{flex-direction:column;align-items:flex-start}.quote-letterhead img,.quote-letterhead>div{max-width:100%}.quote-print-table{font-size:10px}.quote-print-table td,.quote-print-table th{padding:4px}}@media print{@page{size:A4;margin:13mm}body:has(.quote-print){background:white}.quote-print{padding:0;max-width:none}.quote-paper{padding:0}.print-actions{display:none}.quote-letterhead{flex-direction:row}.quote-letterhead img{max-width:43%}.quote-letterhead>div{max-width:53%}.quote-print-table{font-size:10px}.quote-print-table td,.quote-print-table th{padding:5px}.quote-print h1{font-size:22px}.quote-print h2{font-size:17px}.quote-print p{font-size:11px}.quote-print-totals,.quote-requisites{page-break-inside:avoid;break-inside:avoid}:root,body,html{background:#fff!important}}.photo-batch{margin:16px 0;padding:12px;background:#f1f6f5;border-radius:8px}.photo-batch progress{width:100%;height:18px;accent-color:#12645e}.photo-batch ul{padding-left:20px}.photo-batch li{margin:7px 0;overflow-wrap:anywhere}.client-payment{padding:12px;background:#f0f5f4;border-radius:8px;margin:16px 0}.client-payment button{font-size:14px;padding:9px 12px}.cards>article.job-overdue{border:2px solid #b42318;background:#fff0ef}.overdue-label{display:inline-block;background:#b42318;color:#fff;padding:6px 10px;border-radius:7px;font-size:13px;font-weight:600}.planner-toolbar{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:16px}.planner-toolbar label{min-width:130px}.planner-toolbar [aria-pressed=true]{background:#12645e;color:#fff}.planner-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.planner-layout>section{min-width:0}.planner-list-view{grid-template-columns:1fr}.planner-calendar,.planner-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.planner-week{text-align:center;font-size:13px;margin-bottom:8px}.planner-calendar button{padding:8px 2px;min-height:66px;background:#edf2f3;color:#23424a;border:1px solid transparent;border-radius:7px}.planner-calendar button small,.planner-calendar button strong{display:block}.planner-calendar button small{font-size:9px;margin-top:6px}.planner-calendar button[aria-pressed=true]{background:#12645e;color:white}.planner-calendar .outside-month{opacity:.5}.planner-calendar .today{border:2px solid #12645e}.planner-event{padding:14px;margin:12px 0}.planner-event h4{margin:8px 0;overflow-wrap:anywhere}.planner-event p{margin:6px 0}.planner-event small{color:#53666f}.planner-event button{font-size:13px;padding:8px 10px}.planner-event .actions{gap:6px}.planner-late{border:2px solid #b42318;background:#fff0ef}.planner-done{background:#f3f6f6}.planner-done h4{color:#5b6d71}.planner>section>.actions{align-items:center;justify-content:space-between}@media(max-width:760px){.planner-layout{grid-template-columns:1fr}.planner-calendar button{min-height:54px}.planner-toolbar input[type=month]{max-width:180px}}.planner-event button{max-width:100%;overflow-wrap:anywhere}.planner-calendar button small{font-size:10px;margin:5px auto 0;padding:2px 5px;width:fit-content;border-radius:10px;background:#d9e6e4}.planner-calendar button[aria-pressed=true] small{background:#fff;color:#12645e}.client-name{font-weight:750;color:#0b625d;background:#dff5ec;padding:3px 6px;border-radius:5px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.client-name-input{font-weight:750!important;background:#f0faf6!important;border:2px solid #168579!important}.quote-sharing,.requisites-import{background:#f1f7f6;padding:16px;border-radius:12px;margin:16px 0}.ocr-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow:auto;font-size:13px}.quote-print-table td:last-child,.quote-print-table th:last-child{text-align:right}.quote-print .print-actions{max-width:1000px;margin:10px auto}@media(max-width:600px){.quote-paper{padding:14px!important}.quote-print-table{font-size:11px}.quote-letterhead{flex-wrap:wrap}.quote-letterhead img{max-width:100%;height:auto}}@media print{.client-name{background:none;color:#000}}.quote-print-table th:first-child{width:5%}.quote-print-table th:nth-child(2){width:42%}.quote-print-table th:nth-child(3){width:14%}.quote-print-table th:nth-child(4){width:9%}.quote-print-table th:nth-child(5){width:30%}.quote-print-table td:last-child,.quote-print-table td:nth-child(3),.quote-print-table td:nth-child(4){white-space:nowrap;overflow-wrap:normal}@media print{.quote-paper{padding:0!important}}.app-home{max-width:1520px}.app-shell{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;margin-top:24px}.app-shell>nav{align-self:start;position:sticky;top:15px;margin:0;gap:18px;padding:14px;border:1px solid #dce5e5;border-radius:12px}.app-shell>nav,.nav-group{display:flex;flex-direction:column}.nav-group{gap:5px}.nav-group>strong{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#63787e;padding:4px 9px}.nav-group button{text-align:left;font-size:14px;padding:10px 9px}.workspace-content{min-width:0}.stock-scroll{overflow:auto}.stock-table{border-collapse:collapse;width:100%;min-width:550px}.stock-table td,.stock-table th{padding:10px;border-bottom:1px solid #dce5e5;text-align:left}.stock-table th{background:#eff6f3}.stock-table button{font-size:12px;padding:6px}.survey-image{position:relative;width:100%;line-height:0}.survey-image>img{display:block;width:100%;height:auto!important;max-width:100%;object-fit:contain!important}.survey-image>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.survey-thumb{width:100%;background:transparent}.survey-modal{position:fixed;inset:0;background:#12232bd9;z-index:1000;padding:16px;overflow:auto;line-height:normal}.survey-dialog{background:#fff;border-radius:12px;max-width:1000px;margin:auto;padding:20px}.survey-canvas{margin:16px 0;-webkit-user-select:none;user-select:none}.survey-photos{margin:18px 0}.survey-photos>summary{font-weight:650;cursor:pointer}.survey-dialog .actions{flex-wrap:wrap}.survey-dialog h3{margin:0;flex:1 1}.survey-dialog button[aria-pressed=true]{outline:2px solid #162c34;outline-offset:2px}@media(max-width:800px){.app-shell{display:block}.app-shell>nav{position:static;margin-bottom:20px;padding:10px;gap:12px}.app-shell>nav,.nav-group{flex-direction:row;flex-wrap:wrap}.nav-group{align-items:center}.nav-group>strong{width:100%}.nav-group button{font-size:12px;padding:8px}.survey-modal{padding:6px}.survey-dialog{padding:12px}.survey-dialog button{font-size:12px;padding:8px}}.button-link,button{border-radius:4px;min-height:44px;line-height:1.25;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;text-align:center;vertical-align:middle;transition:background .15s,box-shadow .15s}.button-link:focus-visible,button:focus-visible{outline:3px solid #6ebdb4}.button-link.secondary,button.secondary{border-radius:4px}.actions{gap:10px;align-items:stretch}.workspace-content .actions>.button-link,.workspace-content .actions>button{min-width:136px;flex:1 1 136px}.workspace-content .actions>h2,.workspace-content .actions>h3{align-self:center;margin:0;flex:2 1 220px}form>button{align-self:end;min-height:44px;margin:0}.app-shell .nav-group button{min-height:42px;justify-content:flex-start;border:1px solid transparent}.app-shell .nav-group button[aria-pressed=true]{box-shadow:inset 3px 0 0 #75d8bf}.brand-header>.actions>button{min-height:34px;border-radius:4px;padding:7px 12px;font-size:12px}.survey-dialog .actions>button{flex:0 1 auto;min-width:0}.survey-dialog button[aria-label^="Цвет"]{min-width:40px;width:40px;padding:6px}.survey-thumb{display:block;padding:0}.photo-grid button{max-width:100%}.planner-calendar button{display:block}.quote-catalog-item button{min-width:120px}.stock-table button{min-width:96px;min-height:36px}@media(max-width:800px){.app-shell .nav-group button{width:auto;min-height:40px;flex:1 1 auto}.nav-group{width:100%}.nav-group>strong{flex-basis:100%}.workspace-content .actions>.button-link,.workspace-content .actions>button{min-width:0;flex-basis:calc(50% - 10px);white-space:normal}.brand-header>.actions>button{min-height:36px}.survey-dialog .actions>button{flex:0 1 auto}.quote-catalog-item button{width:100%}}.catalog-name{position:relative;min-width:0}.catalog-suggestions{position:absolute;top:100%;left:0;right:0;z-index:30;background:#fff;border:1px solid #9ab6b4;border-radius:4px;box-shadow:0 8px 24px #18342c24;max-height:360px;overflow:auto}.catalog-suggestions>button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;border-radius:0;border-bottom:1px solid #dbe8e3;background:#fff;color:#182b35;text-align:left;font-size:13px;padding:12px}.catalog-suggestions>button:focus,.catalog-suggestions>button:hover{background:#e6f4ed}.catalog-suggestions small{color:#4d6962;font-size:11px;line-height:1.4}.quote-catalog-item span{font-size:13px}.catalog-suggestions strong{overflow-wrap:anywhere}.app-shell .nav-group{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%}.app-shell .nav-group>strong{grid-column:1/-1;padding:2px 0 4px}.app-shell .nav-group button{display:flex;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #a7babc;border-radius:4px;background:#edf2f3;color:#23424a;justify-content:center;text-align:center;font-size:14px;font-weight:600;line-height:1.3;box-shadow:none}.app-shell .nav-group button:hover{background:#dce9e7;border-color:#6c9994}.app-shell .nav-group button[aria-pressed=true]{background:#12645e;color:#fff;border-color:#12645e;box-shadow:none}.app-shell .nav-group button:focus-visible{outline:3px solid #6ebdb4;outline-offset:2px}@media(max-width:800px){.app-shell>nav{gap:16px;padding:14px}.app-shell .nav-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-shell .nav-group button{width:100%;min-height:46px;padding:10px;font-size:14px}.app-shell .nav-group>button:last-child:nth-child(2n){grid-column:1/-1}}.app-shell .nav-group button{background:#cde7df;border-color:#82aaa0;color:#164e43}.app-shell .nav-group button:hover{background:#b4dfcf;border-color:#5eaa91}.app-shell .nav-group button[aria-pressed=true]{background:#83d6b8;border-color:#328f75;color:#123f33}.app-shell .nav-group button:active{background:#65caa8;border-color:#23765f;color:#10382d}.planner{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--plan-accent:#087bf5;--plan-line:#e6e8ed;--plan-muted:#77818f}.planner .planner-controls{border:1px solid var(--plan-line);border-radius:20px;padding:24px;box-shadow:0 4px 20px #17254206}.planner-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.planner-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--plan-muted);margin-bottom:7px}.planner-heading h2{font-size:25px;line-height:1.18;letter-spacing:-.045em;margin:0;color:#1c2430;font-weight:750}.planner .planner-add{flex:none;background:var(--plan-accent);color:#fff;border:1px solid #087bf5;border-radius:12px;padding:11px 18px;min-height:46px;font-size:14px;gap:8px;white-space:nowrap;box-shadow:0 2px 4px #087bf51a}.planner-add>span{font-size:22px;line-height:18px;font-weight:400}.planner-intro{font-size:13px;color:#687383;margin:16px 0 22px;line-height:1.6}.planner-intro>span{display:block;font-size:11px;color:#929aa6;margin-top:3px}.planner .planner-toolbar{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,.85fr);gap:14px;align-items:end;margin:0}.planner-toolbar label{min-width:0}.planner-date-row{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:10px;min-width:0}.planner-month-control{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;background:#f3f5f8;border:1px solid var(--plan-line);border-radius:12px;min-height:46px;overflow:hidden}.planner .planner-month-control>button{color:#465468;border:0;border-radius:0;padding:0;min-width:0;min-height:44px;font-size:26px;font-weight:400;line-height:1}.planner-month-label{position:relative;display:flex;align-items:center;justify-content:center;align-self:stretch;padding:0;cursor:pointer;overflow:hidden}.planner-month-label>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%;font-size:14px;font-weight:650;color:#263347;text-align:center}.planner .planner-month-label>input{position:absolute;inset:0;width:100%;height:100%;min-width:0;max-width:none;padding:0;margin:0;border:0;opacity:0;cursor:pointer;font-size:16px}.planner-month-label:focus-within{box-shadow:inset 0 0 0 2px #8cbdf2}.planner .planner-today{background:#eaf3ff;color:#0871de;border:1px solid #d8e9fd;border-radius:12px;padding:10px;min-height:46px;font-size:13px}.planner-segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;gap:4px;border-radius:12px;background:#eef0f4;border:1px solid #e9ebef;min-height:46px}.planner .planner-segments>button{display:flex;justify-content:center;align-items:center;border:0;color:#67717f;min-width:0;min-height:36px;padding:7px 10px;font-size:13px;border-radius:9px;line-height:1.3;box-shadow:none}.planner .planner-segments>button[aria-pressed=true]{color:#202b3b;box-shadow:0 2px 5px #18253612}.planner-filter{gap:6px;font-size:11px;color:#7e8794;font-weight:600}.planner .planner-filter select{display:block;width:100%;min-width:0;min-height:46px;font-size:14px;color:#364253;padding:11px 12px;background:#f8f9fb;border:1px solid var(--plan-line);border-radius:12px;font-weight:500}.planner-layout>section{border-radius:20px;border-color:var(--plan-line);padding:22px}.planner-week{color:#929aa6;font-size:11px;font-weight:650;margin-bottom:12px}.planner-calendar{gap:6px}.planner .planner-calendar button{border-radius:12px;background:#f5f6f8;color:#374355;border:1px solid transparent;min-height:64px;font-weight:600;font-size:14px}.planner .planner-calendar button.today{border:1px solid #70aff2;background:#eaf3ff;color:#0871de}.planner .planner-calendar button[aria-pressed=true]{background:var(--plan-accent);border-color:var(--plan-accent);box-shadow:0 2px 5px #087bf524}.planner-calendar button small{background:#e3e9f1;color:#5d6d82;font-weight:600}.planner-calendar button[aria-pressed=true] small{color:#0871de}.planner-agenda>h3{font-size:17px;letter-spacing:-.025em;margin-bottom:16px}.planner-event{border-radius:14px;border-color:var(--plan-line);padding:16px}.planner-event h4{font-size:16px;letter-spacing:-.02em}.planner .planner-late{border-color:#dd7b75;background:#fff4f3}.planner .planner-done{background:#f5f7f9}.planner button:focus-visible{outline-color:#88bdf5}.planner #planner-editor{border-radius:20px;border-color:var(--plan-line)}@media(max-width:1250px){.planner .planner-toolbar{grid-template-columns:1fr 1fr}.planner-filter{grid-column:1/-1}}@media(max-width:760px){.planner .planner-controls{padding:20px;border-radius:18px}.planner-heading{flex-direction:column;align-items:stretch;gap:18px}.planner-heading h2{font-size:25px}.planner .planner-add{width:100%;justify-content:center}.planner-intro{margin:14px 0 20px}.planner .planner-toolbar{grid-template-columns:minmax(0,1fr);gap:14px}.planner-filter{grid-column:auto}.planner .planner-segments>button{min-height:38px;font-size:14px}.planner-month-label>span{font-size:14px}.planner .planner-filter select{font-size:16px}.planner-layout>section{padding:18px;border-radius:18px}.planner .planner-calendar button{min-height:52px;font-size:13px}.planner-calendar,.planner-week{gap:4px}}@media(max-width:360px){.planner-date-row{grid-template-columns:minmax(0,1fr)}.planner .planner-today{width:100%}}.estimates{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.estimates>section,.new-job-panel{border-radius:20px;border-color:#e6e8ed;padding:24px;box-shadow:0 4px 20px #17254206}.estimates h2,.new-job-panel h2{letter-spacing:-.035em}.estimates label,.new-job-panel label{font-size:12px;color:#667282;font-weight:550;gap:7px}.estimates input,.estimates select,.estimates textarea,.new-job-panel input,.new-job-panel select,.new-job-panel textarea{border-radius:10px;border-color:#dde3eb;min-height:44px;background:#fafbfc;color:#243145;font-size:15px;padding:11px 12px}.estimates .quote-grid{gap:16px}.estimates .button-link,.estimates button,.new-job-panel button{border-radius:11px;min-height:44px}.estimates .button-link,.estimates button:not(.secondary),.new-job-panel button:not(.secondary){background:#087bf5}.estimates button.secondary,.new-job-panel button.secondary{background:#f0f3f8;border-color:#e0e5ed;color:#36516c}.estimates .quote-line{border-radius:16px;border-color:#e2e7ee;background:#f8fafc;padding:20px}.estimates .quote-totals{border-radius:16px;background:#edf5ff}.estimates .quote-sharing,.estimates .requisites-import{border-radius:16px;background:#f1f5fa}.estimates .quote-catalog{border-radius:14px;border-color:#e2e7ee}.estimates .catalog-suggestions>button{border-radius:0;background:#fff!important;color:#243145!important}.estimates .catalog-suggestions>button:hover{background:#edf5ff!important}.estimates .actions{gap:10px}.site-picker{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;min-width:0}.site-picker>.photo-help{grid-column:1/-1;margin:0}.client-choice label,.site-picker label{min-width:0}.site-picker input[readonly]{background:#edf5f4;color:#24574c}.client-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.client-choice>button{min-height:44px}.quick-client{padding:18px;border-radius:14px;background:#f1f6fc;border:1px solid #dfe8f4;margin:16px 0}.quick-client h4{margin:0}.site-hub{border:1px solid #dce9e3;background:#f6faf8;padding:14px 16px;border-radius:14px;margin:18px 0}.site-hub>summary{font-weight:650;color:#285c50;cursor:pointer;overflow-wrap:anywhere}.site-links{display:grid;gap:8px;margin-top:16px}.site-links h4,.site-links p{margin:6px 0}.site-links>a{display:block;border:1px solid #d5e5dd;background:white;padding:10px 12px;color:#216a58;border-radius:8px;text-decoration:none;overflow-wrap:anywhere}.site-links>a:hover{background:#eaf5ef}.new-job-client{min-width:0}.estimates details>summary{color:#43546b}.estimates .notice{border-radius:12px}.new-job-panel input[type=checkbox]{min-height:0}@media(max-width:600px){.estimates>section,.new-job-panel{padding:20px;border-radius:18px}.client-choice,.site-picker{grid-template-columns:minmax(0,1fr)}.client-choice>button{width:100%}.estimates input,.estimates select,.estimates textarea,.new-job-panel input,.new-job-panel select,.new-job-panel textarea{font-size:16px}.estimates .quote-line{padding:16px}.site-hub{padding:12px}.site-picker label{width:100%}}:root{--brand:#302b8a;--brand-dark:#252065;--brand-orange:#ff8515;--brand-light:#f0effa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#272544}:root,body{background:#f5f5fa}.button-link,button{background:var(--brand);color:#fff;border-radius:9px;border-color:var(--brand);font-weight:600}.button-link:hover,button:hover{background:#3c36a4}.secondary,button.secondary{background:#f1f0fa;color:var(--brand);border:1px solid #d4d1ee}button.secondary:hover{background:#e7e4fa;border-color:#a6a0d6}.button-link:focus-visible,button:focus-visible{outline:3px solid #ffb870;outline-offset:2px}input,select,textarea{border-color:#d8d6e8;border-radius:9px;color:#292640}input:focus,select:focus,textarea:focus{outline:2px solid #b2acd9;outline-offset:1px}article,section{border-color:#e2e0ed}.brand-header{position:relative;overflow:hidden;border:1px solid #e0deeb;border-top:4px solid var(--brand-orange);border-radius:18px;box-shadow:0 6px 26px #302b8a07}.brand-header:after{content:"";position:absolute;right:0;top:0;bottom:0;width:160px;background:linear-gradient(135deg,transparent 30%,#ff851514 30% 45%,#302b8a0d 45% 58%,transparent 58%);pointer-events:none}.brand-header>.actions,.brand-header>.brand{position:relative;z-index:1}.brand-logo{max-width:560px}.brand-header>.actions button{background:#f2f0fb;color:var(--brand);border:1px solid #c7c1e6;border-radius:7px}aside{background:#efedf9;border:1px solid #ded9f0;color:#514975;border-radius:12px}.app-shell>nav{border-color:#dedbeb;background:#fff}.app-shell .nav-group>strong{color:#6d6689;letter-spacing:.1em}.app-shell .nav-group button{background:#eeecfa;border:1px solid #c8c2e8;color:#302b8a;border-radius:7px}.app-shell .nav-group button:hover{background:#e1dcf7;border-color:#9a8fce}.app-shell .nav-group button:active,.app-shell .nav-group button[aria-pressed=true]{background:#ff951f;border-color:#eb7a0b;color:#28205d}.client-name{background:#fff0dc;color:#302b8a}.client-name-input{background:#fff8ee!important;border-color:#efb66e!important}.notice,.pay{background:#efedf9;color:#403877;border-radius:12px}.money-panel{border-color:#e1dceb}.button-link{color:#fff}.photo-help{color:#77718a}.site-hub{border-color:#dbd5ef;background:#f8f7fd}.site-hub>summary{color:#3c327f}.site-links>a{border-color:#d5cfeb;color:#302b8a;background:#fff}.site-links>a:hover{background:#eeebfb}.site-picker input[readonly]{background:#f0edfa;color:#302b8a}.quick-client{background:#f5f1fc;border-color:#dfd6f0}.estimates>section,.new-job-panel{border-color:#e3dfed}.estimates label,.new-job-panel label{color:#736a85}.estimates input,.estimates select,.estimates textarea,.new-job-panel input,.new-job-panel select,.new-job-panel textarea{border-color:#ded8e9;background:#fcfbfe;color:#302647}.estimates .button-link,.estimates button:not(.secondary),.new-job-panel button:not(.secondary){background:var(--brand);color:#fff}.estimates button.secondary,.new-job-panel button.secondary{background:#eeebf9;color:var(--brand);border-color:#d4cdea}.estimates .quote-line{background:#faf9fe;border-color:#dfd9ed}.estimates .quote-totals{background:#fff1df;border-left:4px solid var(--brand-orange)}.estimates .quote-sharing,.estimates .requisites-import{background:#f2effa}.catalog-suggestions>button:hover,.estimates .catalog-suggestions>button:hover{background:#fff1df!important}.estimates .catalog-suggestions strong{color:var(--brand)}.planner{--plan-accent:#302b8a;--plan-line:#e4dfef;--plan-muted:#81778f}.planner .planner-add{background:var(--brand);border-color:var(--brand);box-shadow:0 2px 5px #302b8a18}.planner-agenda>h3,.planner-heading h2{color:#2c2447}.planner-eyebrow{color:#8e7b99}.planner .planner-today{background:#fff0dc;color:#6d3a08;border-color:#f2d0a1}.planner-month-control{background:#f4f1fa;border-color:#e4deee}.planner .planner-month-control>button{background:transparent;color:var(--brand)}.planner-month-label>span{color:#362956}.planner-segments{background:#efebf7;border-color:#e4ddef}.planner .planner-segments>button{background:transparent;color:#7b6c91}.planner .planner-segments>button[aria-pressed=true]{background:#fff;color:var(--brand);box-shadow:0 2px 5px #302b8a12}.planner .planner-filter select{background:#faf8fd;border-color:#e4dfed;color:#4d3b67}.planner .planner-calendar button{background:#f5f2fa;color:#4d3d66}.planner .planner-calendar button.today{border-color:#f3af56;background:#fff3e2;color:#7d4511}.planner .planner-calendar button[aria-pressed=true]{background:#302b8a;border-color:#302b8a;color:white}.planner-calendar button small{background:#e8e1f3;color:#615079}.planner-calendar button[aria-pressed=true] small{color:var(--brand)}.planner-event button:not(.secondary){background:var(--brand)}.planner button:focus-visible{outline-color:#f3b268}.planner-intro{color:#81748e}.planner-intro>span{color:#a095aa}.planner-month-label:focus-within{box-shadow:inset 0 0 0 2px #ffac53}.quote-print{color:#272244}.quote-print .quote-letterhead{border-bottom-color:var(--brand-orange)}.quote-print .quote-print-table th{background:#eeebf8;color:#302b8a}.quote-print .quote-print-totals h2{color:#302b8a}.survey-thumb{background:transparent!important}.job-overdue,.planner .planner-late{border-color:#d75d54;background:#fff2f0}.error{background:#ffebe8;color:#8f2622}@media print{.quote-print .client-name{background:none;color:#302b8a}.quote-print .quote-paper{box-shadow:none}}@media(max-width:600px){.brand-header{border-radius:16px}.brand-logo{max-width:100%}}.sms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px}.sms-checks{display:grid;gap:12px;margin:18px 0}.sms-checks label,.sms-consent{display:flex;gap:10px;align-items:center}.sms-settings input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:0}.sms-contact,.sms-log{padding:16px;border:1px solid #d6d7ea;border-radius:10px;margin:12px 0;background:#f9f9ff;overflow-wrap:anywhere}.sms-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;align-items:end}.sms-contact strong{grid-column:1/-1}.sms-log p{margin:8px 0}.sms-status{background:#fff2e2;padding:14px;border-radius:10px}.estimate-survey{background:#f6f5ff;border:1px solid #d9d6f0;border-left:4px solid #ff8515;padding:18px;border-radius:10px;margin:18px 0}.estimate-survey-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}.estimate-survey-actions button{min-height:52px}.estimate-survey .survey-photos{background:white;padding:14px;margin:16px 0;border-radius:9px}.survey-mark-button{width:52px;min-width:52px;height:48px;min-height:48px;padding:7px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.survey-mark-button svg{display:block;flex-shrink:0}.survey-mark-button:focus-visible{outline:3px solid #ff8515;outline-offset:3px}.survey-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.survey-tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:9px 4px;min-height:64px;font-size:13px;border:2px solid #d6d2f2;background:#efedff;color:#302b8a}.survey-tools button[aria-pressed=true]{background:#ff8515;color:#211d56;border-color:#ff8515}.survey-tools svg{max-width:28px;flex-shrink:0}.survey-tools{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:600px){.survey-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.survey-tools>button:first-child{grid-column:1/-1}}.employee-payments{border-top:1px solid #d6d2ed;margin-top:14px;padding-top:12px}.employee-payment{padding:12px;background:#f6f5ff;border:1px solid #dedaf1;border-radius:9px;margin:10px 0}.payment-history p{overflow-wrap:anywhere}.survey-tools svg>g{fill:none}.equipment-records{margin:12px 0;padding:10px;border:1px solid #d8d4ee;border-radius:9px}.device-record{padding:12px;margin:12px 0;background:#f6f5ff;border-radius:9px}.device-record h5{font-size:15px;margin:0 0 12px}.device-record fieldset{display:grid;gap:10px;min-width:0;border:0;padding:0}.device-record input,.device-record select{max-width:100%;min-width:0}