:root{color:#16181d;font-synthesis:none;background:#f3f5f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{color:#fff;background:#111318;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex}.brand{align-items:center;gap:13px;display:flex}.brand-mark{color:#111318;background:#fff;border-radius:12px;place-items:center;width:42px;height:42px;font-size:21px;font-weight:900;display:grid}.brand strong{letter-spacing:-.02em;font-size:18px;display:block}.brand span{color:#aeb4bd;margin-top:2px;font-size:12px;display:block}.version{color:#d4d7dc;border:1px solid #343943;border-radius:999px;padding:7px 11px;font-size:12px}.page{max-width:1500px;margin:0 auto;padding:46px 34px 70px}.intro{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:27px;display:flex}.eyebrow{letter-spacing:.16em;color:#737b86;font-size:11px;font-weight:800}h1{letter-spacing:-.045em;margin:8px 0;font-size:clamp(32px,4vw,48px);line-height:1}.intro p{color:#656c76;max-width:650px;margin:0;line-height:1.55}.system-status{color:#176b36;background:#eaf7ee;border-radius:999px;flex:none;align-items:center;gap:8px;padding:9px 13px;font-size:13px;font-weight:700;display:flex}.status-dot{background:#27a458;border-radius:50%;width:8px;height:8px}.layout{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:22px;display:grid}.panel{background:#fff;border:1px solid #e2e5e9;border-radius:22px;box-shadow:0 6px 28px #12161d0b}.form-panel{padding:30px}.projects-panel{padding:25px}.panel-heading,.section-divider{align-items:center;gap:12px;display:flex}.panel-heading{justify-content:space-between;margin-bottom:25px}.panel-heading>div:first-child,.section-divider{align-items:center;gap:12px;display:flex}.panel-heading h2,.section-divider h2{letter-spacing:-.025em;margin:0;font-size:19px}.step{color:#555d68;background:#f0f2f4;border-radius:9px;place-items:center;width:31px;height:31px;font-size:11px;font-weight:800;display:inline-grid}.required-note{color:#9298a1;font-size:12px}.grid{gap:17px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}label{margin-bottom:18px;display:block}label>span{color:#555c66;margin:0 0 7px 2px;font-size:12px;font-weight:750;display:block}input,select,textarea{color:#171a1f;background:#fff;border:1px solid #d9dde2;border-radius:12px;outline:none;width:100%;padding:12px 13px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:108px}input:focus,select:focus,textarea:focus{border-color:#777f8a;box-shadow:0 0 0 3px #1e222812}::placeholder{color:#adb2ba}.section-divider{border-top:1px solid #eceef1;margin:7px 0 21px;padding-top:25px}.actions{justify-content:space-between;align-items:center;gap:20px;padding-top:4px;display:flex}.actions>span{color:#858b94;font-size:12px}.actions button{color:#fff;background:#111318;border:0;border-radius:12px;min-width:180px;padding:13px 20px;font-weight:750}.actions button:hover{background:#262a31}.actions button:disabled{cursor:wait;opacity:.55}.message{border-radius:10px;margin:5px 0 18px;padding:12px 14px;font-size:13px;font-weight:650}.message.success{color:#176b36;background:#edf8f0}.message.error{color:#a92525;background:#fff0f0}.panel-heading.compact{margin-bottom:18px}.counter{color:#fff;background:#111318;border-radius:9px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:12px;font-weight:800;display:grid}.empty{text-align:center;color:#9aa0a8;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:230px;display:flex}.empty-icon{color:#676e78;background:#f2f3f5;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:5px;font-size:23px;display:grid}.empty strong{color:#555c65}.empty span{max-width:220px;font-size:12px;line-height:1.45}.project-list{gap:11px;display:grid}.project-card{border:1px solid #e6e8eb;border-radius:14px;padding:15px}.project-top{justify-content:space-between;gap:12px;display:flex}.project-top strong{font-size:14px}.project-top>span{color:#999fa7;font-size:11px}.address{color:#737a83;margin-top:5px;font-size:12px}.project-meta{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.project-meta span{color:#5e6570;background:#f1f3f5;border-radius:7px;padding:5px 7px;font-size:10px;font-weight:700}.phone{margin-top:11px;font-size:12px;font-weight:750}@media (width<=1050px){.layout{grid-template-columns:1fr}.projects-panel{order:2}}@media (width<=700px){.topbar{height:68px;padding:0 18px}.brand span{display:none}.page{padding:28px 15px 50px}.intro{flex-direction:column;align-items:flex-start}.system-status{align-self:flex-start}.form-panel,.projects-panel{border-radius:17px;padding:20px}.grid.two,.grid.three{grid-template-columns:1fr}.actions{flex-direction:column;align-items:stretch}.actions button{width:100%}.required-note{display:none}}.project-button{text-align:left;cursor:pointer;background:#fff;width:100%}.project-button:hover{border-color:#aeb4bd;box-shadow:0 6px 18px #12161d0f}.back-button{color:#5d6570;background:0 0;border:0;margin:0 0 24px;padding:0;font-weight:700}.project-intro{margin-bottom:24px}.project-summary{margin-top:22px;padding:25px 30px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.summary-grid>div{background:#f6f7f8;border-radius:12px;padding:15px}.summary-grid span{color:#818892;margin-bottom:5px;font-size:11px;display:block}.summary-grid strong{font-size:13px}.measurement-status{color:#808791;margin-top:11px;font-size:11px}@media (width<=800px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=500px){.summary-grid{grid-template-columns:1fr}}.measurement-button{text-align:left;cursor:pointer;background:#fff;width:100%}.measurement-button:hover{border-color:#aeb4bd;box-shadow:0 6px 18px #12161d0f}.measurement-workspace{max-width:1500px}.measurement-intro{align-items:center}.measurement-badges{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.measurement-badges span{color:#4e5661;background:#e9ecef;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:750}.measurement-info-panel,.analysis-placeholder{padding:30px}.analysis-placeholder{margin-top:22px}.measurement-step-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.measurement-step-heading>div:first-child{align-items:flex-start;gap:12px;display:flex}.measurement-step-heading h2{letter-spacing:-.025em;margin:1px 0 4px;font-size:19px}.measurement-step-heading p{color:#7b828c;margin:0;font-size:12px}.measurement-progress{color:#626a75;background:#f0f2f4;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:800}.upload-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.upload-section{background:#fafbfc;border:1px solid #e3e6e9;border-radius:17px;min-width:0;padding:20px}.upload-section-heading{justify-content:space-between;gap:16px;min-height:62px;display:flex}.upload-section-heading h3{margin:0 0 5px;font-size:16px}.upload-section-heading p{color:#818892;max-width:440px;margin:0;font-size:12px;line-height:1.45}.document-count{color:#5c6470;background:#e9ecef;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.upload-zone{text-align:center;cursor:pointer;background:#fff;border:1.5px dashed #cbd0d6;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:155px;margin-top:16px;padding:20px;transition:border-color .15s,background .15s;display:flex;position:relative}.upload-zone:hover{background:#f8f9fa;border-color:#7f8791}.upload-zone.uploading{cursor:wait;opacity:.6}.upload-zone input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-icon{color:#fff;background:#111318;border-radius:11px;place-items:center;width:38px;height:38px;margin-bottom:9px;font-size:21px;display:grid}.upload-zone strong{font-size:13px}.upload-zone span{color:#808792;margin-top:4px;font-size:11px}.upload-zone small{color:#a2a8b0;margin-top:10px;font-size:10px}.document-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.document-card{min-width:0;color:inherit;background:#fff;border:1px solid #e2e5e9;border-radius:11px;text-decoration:none;overflow:hidden}.document-preview{background:#eceff2;place-items:center;height:105px;display:grid;overflow:hidden}.document-preview img{object-fit:cover;width:100%;height:100%}.file-placeholder{letter-spacing:.08em;color:#656d78;font-size:12px;font-weight:900}.document-name{white-space:nowrap;text-overflow:ellipsis;padding:8px;font-size:10px;font-weight:650;overflow:hidden}.document-empty{text-align:center;color:#a1a7af;margin-top:13px;font-size:10px}.document-loading{text-align:center;color:#9299a2;padding:40px}.analysis-empty{text-align:center;color:#858c96;border:1px dashed #d5d9de;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:145px;display:flex}.analysis-empty strong{color:#555d67;font-size:14px}.analysis-empty span{max-width:450px;font-size:12px}@media (width<=950px){.upload-layout{grid-template-columns:1fr}}@media (width<=700px){.measurement-info-panel,.analysis-placeholder{padding:20px}.measurement-step-heading{align-items:flex-start}.document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.measurement-badges{justify-content:flex-start}}.geometry-engine{gap:22px;display:grid}.geometry-note{background:#f3f5f7;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.geometry-note strong{font-size:13px}.geometry-note span{color:#737b85;font-size:11px;line-height:1.45}.geometry-form{gap:8px;display:grid}.geometry-input-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;display:grid}.geometry-input-grid label{margin:0}.geometry-input-grid small{color:#949aa3;margin-top:6px;font-size:10px;line-height:1.4;display:block}.geometry-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:12px;display:flex}.geometry-actions>span{color:#878e97;font-size:11px}.geometry-actions button{color:#fff;background:#111318;border:0;border-radius:12px;min-width:180px;padding:13px 19px;font-weight:750}.geometry-actions button:disabled{cursor:not-allowed;opacity:.4}.geometry-results{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.result-card{background:#fff;border:1px solid #e2e5e9;border-radius:14px;min-width:0;padding:16px}.result-card.primary{color:#fff;background:#111318;border-color:#111318}.result-card>span{color:#7d858f;font-size:10px;font-weight:700;display:block}.result-card.primary>span,.result-card.primary>small{color:#aeb4bd}.result-card strong{letter-spacing:-.035em;margin-top:8px;font-size:23px;display:block}.result-card small{color:#989ea7;margin-top:5px;font-size:9px;line-height:1.35;display:block}.geometry-rule-info{color:#858c95;border-top:1px solid #eceef1;padding-top:14px;font-size:10px}.geometry-loading{text-align:center;color:#9299a2;padding:35px}@media (width<=1150px){.geometry-results{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=800px){.geometry-input-grid{grid-template-columns:1fr}.geometry-results{grid-template-columns:repeat(2,minmax(0,1fr))}.geometry-actions{flex-direction:column;align-items:stretch}.geometry-actions button{width:100%}}@media (width<=500px){.geometry-results{grid-template-columns:1fr}}.result-card-top{justify-content:space-between;align-items:center;gap:7px;display:flex}.result-card-top>span{color:#7d858f;font-size:10px;font-weight:700}.result-card.primary .result-card-top>span{color:#aeb4bd}.result-card-top em{color:#96651c;background:#fff2d9;border-radius:5px;flex:none;padding:3px 5px;font-size:8px;font-style:normal;font-weight:800}.result-controls{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}.result-controls button{color:#59616b;background:#f7f8f9;border:1px solid #dde1e5;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:700}.result-card.primary .result-controls button{color:#e5e7ea;background:#24272d;border-color:#3b4048}.result-editor{margin-top:11px}.result-editor>input{border-radius:8px;width:100%;padding:8px 9px;font-size:15px;font-weight:750}.result-editor>span{color:#888f98;margin-top:4px;font-size:9px;display:block}.result-editor-actions{gap:5px;margin-top:7px;display:flex}.result-editor-actions button{background:#f5f6f7;border:1px solid #dce0e4;border-radius:7px;flex:1;padding:6px;font-size:9px;font-weight:750}.result-card.primary .result-editor-actions button{color:#fff;background:#24272d;border-color:#3d424a}.geometry-unsaved{color:#876019;background:#fff5dd;border-radius:10px;padding:11px 13px;font-size:10px;font-weight:650}.ai-review-panel{background:#fbfbfc;border:1px solid #e1e4e8;border-radius:16px;margin-bottom:18px;padding:18px}.ai-review-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.ai-review-header h3{margin:3px 0 5px;font-size:18px}.ai-review-header p{color:#69717b;max-width:660px;margin:0;font-size:11px;line-height:1.55}.ai-review-kicker{color:#8b929a;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.ai-review-count{color:#fff;text-align:center;background:#17191d;border-radius:11px;min-width:72px;padding:9px 11px;font-size:18px;font-weight:800}.ai-review-count span{color:#aeb4bc;margin-top:1px;font-size:8px;font-weight:700;display:block}.ai-geometry-ready{background:#fff;border:1px solid #e1e4e8;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:13px;display:flex}.ai-geometry-ready>div>strong{margin-bottom:8px;font-size:11px;display:block}.ai-geometry-slots{flex-wrap:wrap;gap:6px;display:flex}.ai-geometry-slots>span{color:#7a828b;background:#f0f2f4;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:700}.ai-geometry-slots>span.ready{color:#307443;background:#e9f7ed}.ai-geometry-slots b{font-weight:850}.ai-apply-button{color:#fff;cursor:pointer;background:#17191d;border:0;border-radius:9px;flex:none;padding:9px 12px;font-size:10px;font-weight:800}.ai-apply-button:disabled{color:#8d949c;cursor:not-allowed;background:#d7dade}.ai-review-documents{gap:14px;display:grid}.ai-document-group{border-top:1px solid #e5e7ea;padding-top:14px}.ai-document-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.ai-document-title strong{font-size:11px;display:block}.ai-document-title span{color:#868d95;margin-top:2px;font-size:9px;display:block}.ai-document-title em{color:#858c95;font-size:9px;font-style:normal;font-weight:700}.ai-observation-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px;display:grid}.ai-observation-card{background:#fff;border:1px solid #e0e3e7;border-radius:12px;padding:12px}.ai-observation-card.accepted,.ai-observation-card.edited{border-color:#bddfc6}.ai-observation-card.rejected{opacity:.58}.ai-observation-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.ai-observation-top strong{font-size:22px;line-height:1;display:block}.ai-observation-top span{color:#8b929a;margin-top:4px;font-size:8px;font-weight:700;display:block}.ai-observation-top em{color:#39764a;background:#edf5ef;border-radius:6px;padding:4px 6px;font-size:9px;font-style:normal;font-weight:800}.ai-source-row{justify-content:space-between;gap:8px;margin-top:11px;font-size:9px;display:flex}.ai-source-row span{color:#969ca3}.ai-source-row b{color:#59616a;font-weight:750}.ai-crop-badges{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.ai-crop-badges span{color:#686f77;background:#f0f1f3;border-radius:5px;padding:3px 5px;font-size:8px;font-weight:800}.ai-location{color:#737a82;margin:8px 0 0;font-size:9px;line-height:1.4}.ai-review-field{margin-top:10px;display:block}.ai-review-field>span{color:#777f88;margin-bottom:4px;font-size:8px;font-weight:750;display:block}.ai-review-field select,.ai-review-field input{box-sizing:border-box;background:#fff;border:1px solid #d9dde1;border-radius:8px;width:100%;padding:7px 8px;font-size:10px}.ai-review-field input{font-size:13px;font-weight:750}.ai-approved-value{color:#347445;background:#eaf7ed;border-radius:7px;margin-top:9px;padding:7px 8px;font-size:9px;font-weight:800}.ai-review-actions{gap:5px;margin-top:10px;display:flex}.ai-review-actions button{color:#fff;cursor:pointer;background:#1b1e22;border:0;border-radius:7px;flex:1;padding:7px;font-size:9px;font-weight:800}.ai-review-actions button.secondary{color:#646b73;background:#f4f5f6;border:1px solid #dde0e4}.ai-review-actions button:disabled{opacity:.55;cursor:wait}.ai-review-loading,.ai-review-empty{color:#687079;background:#f4f5f6;border-radius:10px;padding:15px;font-size:10px}.ai-review-empty strong,.ai-review-empty span{display:block}.ai-review-empty span{color:#8b929a;margin-top:3px}@media (width<=700px){.ai-review-header,.ai-geometry-ready{flex-direction:column;align-items:stretch}.ai-review-count{align-self:flex-start}.ai-apply-button{width:100%}.ai-observation-grid{grid-template-columns:1fr}}.ai-candidate-intro{margin:4px 0 11px}.ai-candidate-intro strong{font-size:13px;display:block}.ai-candidate-intro span{color:#7e858d;margin-top:3px;font-size:9px;line-height:1.45;display:block}.ai-candidate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:15px;display:grid}.ai-candidate-card{background:#fff;border:1px solid #dfe3e7;border-radius:13px;padding:14px;position:relative}.ai-candidate-number{color:#737a83;background:#f0f2f4;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;font-weight:850;display:grid;position:absolute;top:11px;right:11px}.ai-candidate-card h4{margin:1px 30px 13px 0;font-size:13px}.ai-candidate-card label{margin-top:9px;display:block}.ai-candidate-card label>span{color:#777f88;margin-bottom:4px;font-size:8px;font-weight:750;display:block}.ai-candidate-card select{box-sizing:border-box;color:#30353a;background:#fff;border:1px solid #d8dde2;border-radius:8px;width:100%;padding:8px;font-size:10px}.ai-candidate-evidence{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px;display:grid}.ai-candidate-evidence span{color:#8b9198;background:#f5f6f7;border-radius:7px;padding:7px;font-size:7px;font-weight:700}.ai-candidate-evidence strong{color:#4f565e;margin-top:2px;font-size:9px;display:block}.ai-conversion{color:#5b7562;background:#edf7ef;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:9px;padding:8px 9px;font-size:9px;font-weight:700;display:flex}.ai-conversion strong{color:#28723b;font-size:12px}.ai-candidate-card>button{color:#fff;cursor:pointer;background:#191c20;border:0;border-radius:8px;width:100%;margin-top:11px;padding:8px 10px;font-size:9px;font-weight:800}.ai-candidate-card>button:disabled{color:#8c939a;cursor:not-allowed;background:#d8dce0}.ai-technical-details{background:#fff;border:1px solid #e0e3e6;border-radius:12px;margin-top:14px;overflow:hidden}.ai-technical-details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;list-style:none;display:flex}.ai-technical-details>summary::-webkit-details-marker{display:none}.ai-technical-details>summary strong{color:#4c535a;font-size:10px;display:block}.ai-technical-details>summary span{color:#92989e;margin-top:2px;font-size:8px;display:block}.ai-technical-details>summary em{color:#6e757d;text-align:center;background:#f0f2f4;border-radius:7px;min-width:28px;padding:5px 7px;font-size:9px;font-style:normal;font-weight:800}.ai-technical-details[open]>summary{border-bottom:1px solid #e4e6e9}.ai-technical-body{padding:0 14px 14px}@media (width<=900px){.ai-candidate-grid{grid-template-columns:1fr}}.roof-ai-proposal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:15px;display:grid}.roof-ai-proposal{background:#fff;border:1px solid #dfe3e7;border-radius:14px;padding:15px}.roof-ai-proposal.approved{border-color:#afd7b8}.roof-ai-proposal-head{justify-content:space-between;gap:8px;display:flex}.roof-ai-proposal-head span{color:#92989f;text-transform:uppercase;font-size:8px;font-weight:800}.roof-ai-proposal-head h4{margin:3px 0 0;font-size:13px}.roof-ai-proposal-head b{color:#327746;background:#eaf6ed;border-radius:6px;height:fit-content;padding:4px 6px;font-size:9px}.roof-ai-value{margin-top:16px;font-size:30px;font-weight:850}.roof-ai-value small{color:#69717a;margin-left:3px;font-size:13px}.roof-ai-source-line,.roof-ai-status{color:#737b83;background:#f5f6f7;border-radius:7px;margin-top:8px;padding:7px;font-size:8px}.roof-ai-actions,.roof-ai-edit{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;display:grid}.roof-ai-edit{grid-template-columns:1fr auto auto}.roof-ai-edit input{border:1px solid #d8dde2;border-radius:8px;min-width:0;padding:8px}.roof-ai-actions button,.roof-ai-edit button{color:#fff;background:#191c20;border:0;border-radius:8px;padding:8px;font-size:9px;font-weight:800}.roof-ai-actions .secondary,.roof-ai-edit .secondary{color:#626a72;background:#f4f5f6;border:1px solid #dce0e4}.roof-ai-proof{color:#687078;border-top:1px solid #e8ebed;margin-top:10px;padding-top:9px;font-size:8px}.roof-ai-proof summary{cursor:pointer;font-weight:800}.roof-ai-proof p{line-height:1.5}.roof-ai-proof a{color:#343a40;margin-top:8px;font-weight:800;display:inline-block}.roof-ai-proof img{object-fit:contain;border:1px solid #e0e4e7;border-radius:8px;width:100%;max-height:250px;margin-top:8px;display:block}@media (width<=900px){.roof-ai-proposal-grid{grid-template-columns:1fr}}.roof-ai-evidence-viewport{background:#f4f5f6;border:1px solid #dfe3e7;border-radius:9px;width:100%;margin-top:8px;position:relative;overflow:hidden}.roof-ai-evidence-viewport>img{object-fit:fill;border:0;border-radius:0;max-width:none;max-height:none;margin:0;display:block;position:absolute}.roof-ai-number-marker{box-sizing:border-box;pointer-events:none;border:3px solid #ff4d4f;border-radius:3px;min-width:8px;min-height:8px;position:absolute;box-shadow:0 0 0 2px #ffffffeb,0 2px 8px #0000002e}.roof-ai-evidence-confidence{color:#737b83;background:#f4f5f6;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding:6px 8px;font-size:8px;font-weight:700;display:flex}.roof-ai-evidence-confidence strong{color:#327746;font-size:9px}.roof-ai-localization-note{color:#6f777f;margin-top:6px;font-size:8px;line-height:1.45}.roof-ai-number-zoom-wrap{margin-top:9px}.roof-ai-number-zoom-label{color:#555d65;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px;font-size:8px;font-weight:850}.roof-ai-number-zoom{background:#fff;border:1px solid #dfe3e7;border-radius:8px;width:100%;max-height:115px;position:relative;overflow:hidden}.roof-ai-number-zoom-stage{position:absolute;inset:0;overflow:hidden}.roof-ai-number-zoom-stage>img{border:0;border-radius:0;max-width:none;max-height:none;margin:0;display:block;position:absolute}.roof-ai-number-zoom.vertical{max-height:105px}.roof-ai-number-zoom.vertical .roof-ai-number-zoom-stage{transform-origin:50%;transform:rotate(90deg)scale(.72)}.roof-ai-number-zoom-svg{background:#fff;border:1px solid #dfe3e7;border-radius:8px;width:100%;max-height:180px;display:block;overflow:hidden}.roof-ai-number-zoom-marker{fill:#ff4d4f14;stroke:#ff4d4f;stroke-width:3px;vector-effect:non-scaling-stroke}.roof-ai-number-orientation{color:#8a9198;text-align:center;margin-top:4px;font-size:7px}.material-takeoff-panel{background:#fff;border:1px solid #dfe3e7;border-radius:15px;margin-top:18px;padding:18px}.material-takeoff-header{justify-content:space-between;gap:18px;margin-bottom:16px;display:flex}.material-takeoff-header h3{margin:3px 0 4px;font-size:16px}.material-takeoff-header p{color:#747c84;margin:0;font-size:9px}.material-takeoff-kicker{color:#8c939a;text-transform:uppercase;font-size:8px;font-weight:800}.material-takeoff-count{text-align:center;background:#f1f3f4;border-radius:10px;min-width:52px;padding:8px;font-size:17px;font-weight:850}.material-takeoff-count span{color:#868d94;font-size:7px;display:block}.material-takeoff-section{margin-top:15px}.material-section-title{align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.material-section-title strong{font-size:11px}.material-section-title span{color:#92989e;font-size:8px}.material-takeoff-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.material-takeoff-grid.surface{grid-template-columns:repeat(2,minmax(0,1fr))}.material-takeoff-card{background:#fff;border:1px solid #e0e3e6;border-radius:11px;padding:12px}.material-takeoff-card.manual{background:#fffdf8;border-color:#e5cf9b}.material-takeoff-card-head{justify-content:space-between;gap:6px;display:flex}.material-takeoff-card h4{margin:0;font-size:10px}.material-takeoff-card p{color:#8a9198;margin:3px 0 0;font-size:7px}.material-source-badge{border-radius:5px;padding:3px 5px;font-size:7px;font-weight:800}.material-source-badge.automatic{color:#327746;background:#eaf6ed}.material-source-badge.manual{color:#886319;background:#fff0c9}.material-takeoff-value{margin-top:11px;font-size:22px;font-weight:850}.material-takeoff-value span{color:#757d85;margin-left:3px;font-size:10px}.material-takeoff-actions,.material-takeoff-editor>div{gap:5px;margin-top:9px;display:flex}.material-takeoff-actions button,.material-takeoff-editor button{color:#fff;background:#191c20;border:0;border-radius:7px;padding:6px 8px;font-size:8px;font-weight:800}.material-takeoff-actions .secondary,.material-takeoff-editor .secondary{color:#626a72;background:#f4f5f6;border:1px solid #dde1e4}.material-takeoff-editor input{box-sizing:border-box;border:1px solid #d7dce1;border-radius:7px;width:100%;margin-top:4px;padding:7px}.material-next-stage{background:#f5f6f7;border-radius:10px;margin-top:14px;padding:10px 12px;font-size:8px}.material-next-stage strong,.material-next-stage span{display:block}@media (width<=1050px){.material-takeoff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.material-takeoff-grid,.material-takeoff-grid.surface{grid-template-columns:1fr}}.membrane-panel{background:#f8faf9;border:1px solid #dfe3e7;border-radius:12px;margin-top:14px;padding:14px}.membrane-head span{color:#78817d;letter-spacing:.06em;font-size:7px;font-weight:850}.membrane-head p{color:#7d8581;margin:0;font-size:8px}.membrane-settings{grid-template-columns:1fr 1fr 1fr 1.4fr auto;align-items:end;gap:8px;margin-top:12px;display:grid}.membrane-settings label span{margin-bottom:4px;font-size:8px;font-weight:750;display:block}.membrane-settings input:not([type=checkbox]){box-sizing:border-box;background:#fff;border:1px solid #d6dcda;border-radius:7px;width:100%;padding:7px}.membrane-checkbox{align-items:center;gap:6px;padding-bottom:7px;display:flex}.membrane-checkbox span{margin:0!important}.membrane-settings button,.membrane-result-actions button,.membrane-edit button{color:#fff;background:#191c20;border:0;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:800}.membrane-info{background:#eef1ef;border-radius:8px;gap:20px;margin-top:10px;padding:8px 10px;font-size:8px;display:flex}.membrane-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:9px;display:grid}.membrane-results article{background:#fff;border:1px solid #dfe3e1;border-radius:9px;padding:10px}.membrane-results article.manual{background:#fffdf8;border-color:#e5cf9b}.membrane-result-head{justify-content:space-between;gap:5px;font-size:8px;display:flex}.membrane-result-head span{color:#668371;font-size:7px}.membrane-result-value{margin-top:8px;font-size:20px;font-weight:850}.membrane-result-value small{color:#78807c;margin-left:3px;font-size:9px}.membrane-result-actions,.membrane-edit{gap:5px;margin-top:8px;display:flex}.membrane-edit input{border:1px solid #d6dcda;border-radius:6px;width:70px;min-width:0;padding:5px}.membrane-result-actions .secondary,.membrane-edit .secondary{color:#5f6863;background:#f3f5f4;border:1px solid #dde1df}.membrane-ridge-note{color:#858d89;margin:9px 0 0;font-size:7px}@media (width<=1050px){.membrane-settings,.membrane-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.membrane-purchase{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:9px;display:grid}.membrane-purchase>div{background:#fff;border:1px solid #dfe3e1;border-radius:8px;padding:9px 10px}.membrane-purchase span,.membrane-purchase small{color:#818985;font-size:7px;display:block}.membrane-purchase strong{margin-top:3px;font-size:13px;display:block}.membrane-purchase small{margin-top:2px}@media (width<=1050px){.membrane-purchase{grid-template-columns:1fr}}.membrane-settings{grid-template-columns:repeat(4,minmax(0,1fr))}.membrane-purchase-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px;display:grid}.membrane-purchase-summary>article{background:#fff;border:1px solid #dfe3e1;border-radius:10px;padding:12px}.membrane-purchase-summary>article.selected{background:#f7fcf8;border-color:#9acbaa}.membrane-purchase-title{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.membrane-purchase-title span{color:#8b938f;letter-spacing:.05em;font-size:7px;font-weight:800;display:block}.membrane-purchase-title strong{margin-top:2px;font-size:10px;display:block}.membrane-purchase-title b{color:#347147;background:#e5f4e9;border-radius:5px;padding:3px 6px;font-size:7px}.membrane-purchase-main{margin-top:10px;font-size:20px;font-weight:850}.membrane-purchase-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin-top:9px;display:grid}.membrane-purchase-details span{color:#7c8480;font-size:7px}.membrane-purchase-details strong{color:#262b28}.membrane-roll-reference{background:#eef1ef;border-radius:8px;align-items:baseline;gap:8px;margin-top:8px;padding:8px 10px;font-size:8px;display:flex}.membrane-roll-reference>span:last-child{margin-left:auto}.membrane-purchase-impossible{color:#8b403a;background:#fff2f0;border-radius:7px;margin-top:10px;padding:8px;font-size:8px}@media (width<=1050px){.membrane-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.membrane-purchase-summary,.membrane-purchase-details{grid-template-columns:1fr}}.membrane-panel{padding:20px}.membrane-head span{font-size:10px}.membrane-head h4{margin:5px 0;font-size:18px}.membrane-head p{font-size:12px;line-height:1.45}.membrane-settings-card{background:#fff;border:1px solid #dfe4e1;border-radius:12px;margin-top:16px;padding:16px}.membrane-settings-title{margin-bottom:13px}.membrane-settings-title strong{font-size:14px;display:block}.membrane-settings-title span{color:#7d8581;margin-top:3px;font-size:11px;display:block}.membrane-input-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.membrane-input-grid label>span,.membrane-splice-overlap>span{color:#454c48;margin-bottom:6px;font-size:11px;font-weight:750;display:block}.membrane-input-with-unit{background:#fff;border:1px solid #ccd3cf;border-radius:8px;align-items:center;display:flex;overflow:hidden}.membrane-input-with-unit:focus-within{border-color:#6f9f7e}.membrane-input-with-unit input{box-sizing:border-box;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:10px 11px;font-size:14px;font-weight:700}.membrane-input-with-unit b{color:#77807b;padding:0 11px;font-size:11px}.membrane-mounting-title{margin-top:18px;margin-bottom:8px;font-size:12px;font-weight:800}.membrane-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.membrane-choice{color:#272c29;text-align:left;cursor:pointer;background:#f8f9f8;border:1px solid #d8ddda;border-radius:10px;width:100%;min-height:105px;padding:13px 15px;display:block}.membrane-choice:hover{border-color:#aeb8b2}.membrane-choice.active{background:#f2faf4;border:2px solid #69a47b}.membrane-choice>span{color:#646d68;font-size:11px;font-weight:750;display:block}.membrane-choice>strong{color:#202522;margin-top:5px;font-size:16px;display:block}.membrane-choice.active>strong{color:#317246}.membrane-choice>small{color:#747d78;margin-top:7px;font-size:10px;line-height:1.4;display:block}.membrane-settings-bottom{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;margin-top:12px;display:grid}.membrane-splice-overlap{max-width:380px}.membrane-splice-overlap>small{color:#828985;margin-top:5px;font-size:9px;display:block}.membrane-splice-overlap.disabled{opacity:.48}.membrane-save-button{color:#fff;cursor:pointer;background:#191c20;border:0;border-radius:8px;min-width:220px;min-height:42px;padding:10px 16px;font-size:11px;font-weight:800}.membrane-info{gap:28px;margin-top:12px;padding:11px 13px;font-size:11px}.membrane-purchase-summary{gap:12px;margin-top:12px}.membrane-purchase-summary>article{padding:16px}.membrane-purchase-title span{font-size:9px}.membrane-purchase-title strong{margin-top:3px;font-size:14px}.membrane-purchase-title b{padding:5px 8px;font-size:9px}.membrane-purchase-main{margin-top:12px;font-size:25px}.membrane-purchase-details{gap:8px 18px;margin-top:12px}.membrane-purchase-details span{font-size:10px;line-height:1.35}.membrane-roll-reference{gap:12px;padding:10px 12px;font-size:10px}.membrane-results{gap:10px;margin-top:11px}.membrane-results article{padding:13px}.membrane-result-head{font-size:10px}.membrane-result-head span{font-size:9px}.membrane-result-value{margin-top:10px;font-size:24px}.membrane-result-value small{font-size:11px}.membrane-result-actions button,.membrane-edit button{padding:7px 10px;font-size:10px}.membrane-ridge-note{color:#675b39;background:#fff8e6;border-radius:7px;margin-top:12px;padding:9px 11px;font-size:10px;line-height:1.4}@media (width<=1050px){.membrane-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.membrane-settings-bottom{grid-template-columns:1fr}.membrane-save-button{width:100%}}@media (width<=700px){.membrane-input-grid,.membrane-choice-grid{grid-template-columns:1fr}.membrane-info,.membrane-roll-reference{flex-direction:column;gap:4px}.membrane-roll-reference>span:last-child{margin-left:0}}.counterbatten-panel{background:#fafafa;border:1px solid #dfe3e7;border-radius:12px;margin-top:16px;padding:18px}.counterbatten-head>span{font-size:9px;font-weight:850}.counterbatten-head h4{margin:4px 0;font-size:16px}.counterbatten-head p{color:#777f84;margin:0;font-size:10px}.counterbatten-settings{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.counterbatten-settings label span{margin-bottom:5px;font-size:9px;font-weight:750;display:block}.counterbatten-settings input{box-sizing:border-box;border:1px solid #d6dade;border-radius:7px;width:100%;padding:8px;font-size:11px}.counterbatten-settings small{color:#858c91;margin-top:4px;font-size:7px;display:block}.counterbatten-save{color:#fff;background:#191c20;border:0;border-radius:7px;margin-top:10px;padding:8px 13px;font-size:9px;font-weight:800}.counterbatten-source{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.counterbatten-source>div,.counterbatten-results article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.counterbatten-source span,.counterbatten-results span{color:#777f84;font-size:8px;display:block}.counterbatten-source strong{margin-top:3px;font-size:17px;display:block}.counterbatten-source small,.counterbatten-results small{color:#858c91;margin-top:3px;font-size:7px;display:block}.counterbatten-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.counterbatten-results strong{margin-top:5px;font-size:20px;display:block}.counterbatten-results article.important{background:#f5fbf6;border-color:#91c5a0}.counterbatten-note{color:#858c91;margin:10px 0 0;font-size:8px}@media (width<=1050px){.counterbatten-settings{grid-template-columns:repeat(3,minmax(0,1fr))}.counterbatten-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.counterbatten-settings{grid-template-columns:repeat(7,minmax(0,1fr))}.counterbatten-stock{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:9px;display:grid}.counterbatten-stock>div{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.counterbatten-stock span{color:#777f84;font-size:8px;display:block}.counterbatten-stock strong{margin-top:4px;font-size:16px;display:block}.counterbatten-stock small{color:#858c91;margin-top:3px;font-size:7px;display:block}@media (width<=1050px){.counterbatten-settings{grid-template-columns:repeat(4,minmax(0,1fr))}.counterbatten-stock{grid-template-columns:repeat(2,minmax(0,1fr))}}.batten-panel{background:#fafafa;border:1px solid #dfe3e7;border-radius:12px;margin-top:16px;padding:18px}.batten-head>span{font-size:9px;font-weight:850}.batten-head h4{margin:4px 0;font-size:16px}.batten-head p{color:#777f84;margin:0;font-size:10px}.batten-settings{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.batten-settings label span{margin-bottom:5px;font-size:9px;font-weight:750;display:block}.batten-settings input{box-sizing:border-box;border:1px solid #d6dade;border-radius:7px;width:100%;padding:8px;font-size:11px}.batten-settings small{color:#858c91;margin-top:4px;font-size:7px;display:block}.batten-checkbox{align-items:center;gap:7px;margin-top:10px;font-size:9px;display:flex}.batten-checkbox input{margin:0}.batten-save{color:#fff;background:#191c20;border:0;border-radius:7px;margin-top:10px;padding:8px 13px;font-size:9px;font-weight:800}.batten-spacing-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.batten-spacing-summary article,.batten-results article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.batten-spacing-summary span,.batten-results span{color:#777f84;font-size:8px;display:block}.batten-spacing-summary strong{margin-top:4px;font-size:17px;display:block}.batten-spacing-summary small,.batten-results small{color:#858c91;margin-top:3px;font-size:7px;display:block}.batten-ridge-status{border-radius:7px;margin-top:8px;padding:9px 10px;font-size:9px}.batten-ridge-status.added{background:#f2faf4;border:1px solid #b7d9bf}.batten-ridge-status.skipped{background:#f5f5f5;border:1px solid #dedede}.batten-results{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.batten-results strong{margin-top:5px;font-size:18px;display:block}.batten-results article.important{background:#f5fbf6;border-color:#91c5a0}@media (width<=1050px){.batten-settings{grid-template-columns:repeat(4,minmax(0,1fr))}.batten-spacing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.batten-results{grid-template-columns:repeat(3,minmax(0,1fr))}}.batten-settings{grid-template-columns:repeat(8,minmax(0,1fr))}.batten-purchase-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.batten-fixing-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.batten-purchase-summary article,.batten-fixing-summary article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.batten-purchase-summary article.important,.batten-fixing-summary article.important{background:#f5fbf6;border-color:#91c5a0}.batten-purchase-summary span,.batten-fixing-summary span{color:#777f84;font-size:8px;display:block}.batten-purchase-summary strong,.batten-fixing-summary strong{margin-top:5px;font-size:18px;display:block}.batten-purchase-summary small,.batten-fixing-summary small{color:#858c91;margin-top:3px;font-size:7px;display:block}.batten-purchase-note{color:#777f84;margin:9px 0 0;font-size:8px}@media (width<=1050px){.batten-settings{grid-template-columns:repeat(4,minmax(0,1fr))}.batten-purchase-summary,.batten-fixing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.boarding-panel{background:#fafbfb;border:1px solid #dfe3e7;border-radius:12px;margin-top:14px;padding:14px}.boarding-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.boarding-head h3{margin:0}.boarding-head p{color:#747c81;margin:4px 0 0;font-size:9px}.boarding-save{flex:none}.boarding-settings{grid-template-columns:repeat(2,minmax(0,180px));gap:10px;margin-top:12px;display:grid}.boarding-settings label{flex-direction:column;gap:4px;display:flex}.boarding-settings span{color:#747c81;font-size:8px}.boarding-settings input{box-sizing:border-box;width:100%}.boarding-results{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.boarding-results article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.boarding-results article.important{background:#f5fbf6;border-color:#91c5a0}.boarding-results span{color:#777f84;font-size:8px;display:block}.boarding-results strong{margin-top:5px;font-size:18px;display:block}.boarding-results small{color:#858c91;margin-top:3px;font-size:7px;display:block}.boarding-formula{background:#fff;border:1px solid #e3e6e8;border-radius:8px;align-items:center;gap:7px;margin-top:9px;padding:8px 10px;font-size:9px;display:flex}.boarding-note{color:#777f84;margin:8px 0 0;font-size:8px}.boarding-error{color:#b42318;margin:8px 0 0;font-size:9px}@media (width<=1050px){.boarding-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.felt-panel{background:#fafbfb;border:1px solid #dfe3e7;border-radius:12px;margin-top:14px;padding:14px}.felt-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.felt-head h3{margin:0}.felt-head p{color:#747c81;margin:4px 0 0;font-size:9px}.felt-settings{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.felt-settings label{flex-direction:column;gap:4px;display:flex}.felt-settings label>span{color:#747c81;font-size:8px}.felt-settings input{box-sizing:border-box;width:100%}.felt-roll-buttons{gap:5px;display:flex}.felt-roll-buttons button{flex:1;padding:4px 8px;font-size:8px}.felt-checkbox{align-items:center;gap:7px;margin-top:10px;font-size:9px;display:flex}.felt-checkbox input{width:auto}.felt-results{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.felt-results article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.felt-results article.important{background:#f5fbf6;border-color:#91c5a0}.felt-results span{color:#777f84;font-size:8px;display:block}.felt-results strong{margin-top:5px;font-size:17px;display:block}.felt-results small{color:#858c91;margin-top:3px;font-size:7px;display:block}.felt-summary{background:#fff;border:1px solid #e3e6e8;border-radius:8px;flex-wrap:wrap;align-items:center;gap:7px;margin-top:9px;padding:8px 10px;font-size:9px;display:flex}.felt-note{color:#777f84;margin:8px 0 0;font-size:8px}.felt-error{color:#b42318;margin:8px 0 0;font-size:9px}@media (width<=1050px){.felt-settings,.felt-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.edge-boards-panel{background:#fafbfb;border:1px solid #dfe3e7;border-radius:12px;margin-top:14px;padding:14px}.edge-boards-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.edge-boards-head h3{margin:0}.edge-boards-head p{color:#747c81;margin:4px 0 0;font-size:9px}.edge-boards-settings{grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin-top:12px;display:grid}.edge-boards-settings label{flex-direction:column;gap:4px;display:flex}.edge-boards-settings span{color:#747c81;font-size:8px}.edge-board-group{margin-top:14px}.edge-board-group h4{margin:0 0 7px}.edge-board-results{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.edge-board-results article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:10px}.edge-board-results article.important{background:#f5fbf6;border-color:#91c5a0}.edge-board-results span{color:#777f84;font-size:8px;display:block}.edge-board-results strong{margin-top:5px;font-size:17px;display:block}.edge-board-results small{color:#858c91;margin-top:3px;font-size:7px;display:block}.edge-board-note{color:#777f84;margin:7px 0 0;font-size:8px}.edge-boards-error{color:#b42318;margin:8px 0 0;font-size:9px}@media (width<=1050px){.edge-board-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.flat-sheet-panel{background:#fafbfb;border:1px solid #dfe3e7;border-radius:12px;margin-top:14px;padding:14px}.flat-sheet-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.flat-sheet-head h3{margin:0}.flat-sheet-head p{color:#747c81;max-width:660px;margin:4px 0 0;font-size:9px}.flat-sheet-format{grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin-top:12px;display:grid}.flat-sheet-format label{flex-direction:column;gap:4px;display:flex}.flat-sheet-format span{color:#747c81;font-size:8px}.flat-sheet-format input,.flat-sheet-table input:not([type=checkbox]){box-sizing:border-box;width:100%}.flat-sheet-table-wrap{margin-top:14px;overflow-x:auto}.flat-sheet-table{border-collapse:collapse;width:100%;min-width:940px}.flat-sheet-table th,.flat-sheet-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e6e9eb;padding:7px 6px}.flat-sheet-table th{color:#697176;font-size:8px;font-weight:600}.flat-sheet-table th small{margin-top:2px;font-size:7px;font-weight:400;display:block}.flat-sheet-table td{font-size:9px}.flat-sheet-table td:first-child{min-width:150px}.flat-sheet-table td input:not([type=checkbox]){min-width:70px}.flat-sheet-table tr.disabled{opacity:.48}.flat-sheet-mode{align-items:center;gap:5px;display:flex}.flat-sheet-mode>span{text-align:center;border-radius:5px;min-width:48px;padding:3px 5px;font-size:7px;font-weight:700;display:inline-block}.flat-sheet-mode>span.auto{color:#276536;background:#edf7ef}.flat-sheet-mode>span.manual{color:#875515;background:#fff2df}.flat-sheet-mode button{padding:4px 7px;font-size:7px}.flat-sheet-enabled{align-items:center;gap:5px;display:flex}.flat-sheet-piece-count{font-weight:700}.flat-sheet-piece-count small{color:#81898e;margin-top:2px;font-size:7px;font-weight:400;display:block}.flat-sheet-warning{color:#b42318;margin-top:3px;font-size:7px;display:block}.flat-sheet-error{color:#b42318;margin:9px 0 0;font-size:9px}.flat-sheet-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.flat-sheet-summary article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;min-width:0;padding:10px}.flat-sheet-summary article.important{background:#f5fbf6;border-color:#91c5a0}.flat-sheet-summary span{color:#777f84;font-size:8px;display:block}.flat-sheet-summary strong{margin-top:5px;font-size:17px;display:block}.flat-sheet-summary small{color:#858c91;margin-top:3px;font-size:7px;display:block}.flat-sheet-note,.flat-sheet-footer-note{color:#777f84;margin:7px 0 0;font-size:8px}.flat-sheet-pattern-section{margin-top:15px}.flat-sheet-pattern-section h4{margin:0 0 8px}.flat-sheet-patterns{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.flat-sheet-patterns article{background:#fff;border:1px solid #dfe3e7;border-radius:8px;padding:9px}.flat-sheet-pattern-head{justify-content:space-between;gap:10px;display:flex}.flat-sheet-pattern-head span{color:#7a8287;font-size:8px}.flat-sheet-cut-line{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.flat-sheet-cut-line span{background:#f5f6f7;border:1px solid #d8dde0;border-radius:5px;padding:4px 6px;font-size:8px}.flat-sheet-patterns article>small{color:#7b8388;margin-top:6px;font-size:7px;display:block}@media (width<=1100px){.flat-sheet-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.flat-sheet-head{flex-direction:column}.flat-sheet-format{grid-template-columns:1fr}.flat-sheet-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.flat-sheet-patterns{grid-template-columns:1fr}}.flat-sheet-line-editor{border-top:1px solid #e0e4e6;margin-top:14px;padding-top:13px}.flat-sheet-line-editor-head h4{margin:0}.flat-sheet-line-editor-head p{color:#737c81;max-width:720px;margin:4px 0 0;font-size:8px}.flat-sheet-line-groups{gap:7px;margin-top:10px;display:grid}.flat-sheet-line-group{background:#fff;border:1px solid #dfe3e6;border-radius:8px}.flat-sheet-line-group>summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.flat-sheet-line-group>summary span{font-size:9px;font-weight:700}.flat-sheet-line-group>summary small{color:#7a8287;font-size:8px}.flat-sheet-line-list{gap:5px;padding:0 10px 9px;display:grid}.flat-sheet-line-row{background:#fafbfb;border:1px solid #e8ebed;border-radius:7px;grid-template-columns:48px minmax(90px,140px) 78px 54px 62px auto;align-items:end;gap:7px;padding:7px;display:grid}.flat-sheet-line-number,.flat-sheet-line-state,.flat-sheet-line-result,.flat-sheet-line-length{min-width:0}.flat-sheet-line-number span,.flat-sheet-line-state>span,.flat-sheet-line-result>span,.flat-sheet-line-length>span{color:#7b8388;margin-bottom:3px;font-size:7px;display:block}.flat-sheet-line-number strong,.flat-sheet-line-result strong{font-size:11px}.flat-sheet-line-length input{box-sizing:border-box;width:100%}.flat-sheet-line-state strong{border-radius:5px;padding:3px 5px;font-size:7px;display:inline-block}.flat-sheet-line-state strong.auto{color:#276536;background:#edf7ef}.flat-sheet-line-state strong.manual{color:#875515;background:#fff2df}.flat-sheet-line-state strong.parent{color:#5c666c;background:#eef1f3}.flat-sheet-line-save{white-space:nowrap;padding:6px 9px;font-size:8px}.flat-sheet-line-help{color:#7d858a;margin:0;padding:0 10px 9px;font-size:7px}@media (width<=850px){.flat-sheet-line-row{grid-template-columns:42px minmax(90px,1fr) 74px 48px 58px}.flat-sheet-line-save{grid-column:1/-1;justify-self:start}}@media (width<=560px){.flat-sheet-line-row{grid-template-columns:repeat(2,minmax(0,1fr))}.flat-sheet-line-save{grid-column:1/-1}}.multi-topology-panel{gap:18px;margin-top:18px;display:grid}.multi-topology-loading{color:#68707d;text-align:center;background:#fafbfc;border:1px solid #e3e6eb;border-radius:18px;padding:28px}.multi-topology-empty{background:#fafbfc;border:1px dashed #cfd5dd;border-radius:18px;gap:7px;padding:24px;display:grid}.multi-topology-empty strong{color:#20242a}.multi-topology-empty span{color:#6d7480;line-height:1.55}.multi-topology-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.multi-topology-heading h3{margin:4px 0 7px;font-size:22px}.multi-topology-heading p{color:#707783;max-width:720px;margin:0;line-height:1.55}.multi-topology-kicker{letter-spacing:.11em;color:#7b8491;font-size:11px;font-weight:800}.multi-topology-engine{flex:none;justify-items:end;gap:4px;display:grid}.multi-topology-engine span{color:#8a919b;font-size:11px}.multi-topology-engine strong{color:#3e4650;background:#eef2f6;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.multi-topology-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.multi-topology-status-card{background:#fff;border:1px solid #e1e5eb;border-radius:16px;gap:7px;min-height:126px;padding:17px;display:grid}.multi-topology-status-card>span{color:#707885;font-size:12px;font-weight:700}.multi-topology-status-card>strong{font-size:20px;line-height:1.1}.multi-topology-status-card>small{color:#767e89;line-height:1.45}.multi-topology-status-card.ready{background:#f4fbf6;border-color:#bbdfc9}.multi-topology-status-card.ready>strong{color:#237342}.multi-topology-status-card.pending{background:#f8f9fb;border-color:#e2e5e9}.multi-topology-status-card.pending>strong{color:#5d6671}.multi-topology-status-card.warning{background:#fff9ee;border-color:#eed8ad}.multi-topology-status-card.warning>strong{color:#8a6420}.multi-topology-count-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.multi-topology-count-grid>div{text-align:center;background:#fafbfc;border:1px solid #e5e8ed;border-radius:13px;gap:4px;padding:12px;display:grid}.multi-topology-count-grid span{color:#737b86;font-size:11px}.multi-topology-count-grid strong{color:#262b31;font-size:21px}.multi-topology-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.multi-topology-section{background:#fff;border:1px solid #e1e5ea;border-radius:16px;overflow:hidden}.multi-topology-section summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8f9fb;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;list-style:none;display:flex}.multi-topology-section summary::-webkit-details-marker{display:none}.multi-topology-section summary>span{color:#30363d;font-weight:800}.multi-topology-section summary>strong{color:#444c56;background:#e9edf2;border-radius:999px;place-items:center;min-width:30px;height:30px;padding:0 7px;font-size:12px;display:inline-grid}.multi-topology-item-list{max-height:420px;display:grid;overflow:auto}.multi-topology-item,.multi-topology-edge-item{border-top:1px solid #eef0f3}.multi-topology-item:first-child,.multi-topology-edge-item:first-child{border-top:0}.multi-topology-item{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 15px;display:grid}.multi-topology-item b,.multi-topology-edge-item b{color:#252b32;font-size:12px}.multi-topology-item>span{color:#555e69;min-width:0;font-size:13px}.multi-topology-item>em{color:#89909a;text-align:right;font-size:11px;font-style:normal}.multi-topology-edge-item{grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:12px 15px;display:grid}.multi-topology-edge-item>div{gap:9px;min-width:0;display:flex}.multi-topology-edge-item>div span{color:#555e69;min-width:0;font-size:13px}.multi-topology-edge-item>small{color:#89909a;grid-column:1;font-size:11px}.multi-topology-edge-item>em{color:#59626d;white-space:nowrap;grid-area:1/2/span 2;align-self:center;font-size:11px;font-style:normal;font-weight:700}.multi-topology-footer-note{background:#f7f8fa;border:1px solid #dde2e8;border-radius:14px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:15px 17px;display:grid}.multi-topology-footer-note strong{color:#353b43}.multi-topology-footer-note span{color:#69717c;line-height:1.5}@media (width<=1050px){.multi-topology-count-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=800px){.multi-topology-heading{display:grid}.multi-topology-engine{justify-items:start}.multi-topology-status-grid,.multi-topology-detail-grid{grid-template-columns:1fr}.multi-topology-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.multi-topology-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.multi-topology-item{grid-template-columns:45px minmax(0,1fr)}.multi-topology-item>em{text-align:left;grid-column:2}.multi-topology-edge-item{grid-template-columns:minmax(0,1fr)}.multi-topology-edge-item>em{grid-area:auto/1}.multi-topology-footer-note{grid-template-columns:1fr}}.multi-topology-ai-review{background:#fff;border:1px solid #e0e5eb;border-radius:18px;gap:14px;padding:18px;display:grid}.multi-topology-ai-review.stale{background:#f7f8fa;border-color:#d9dde4}.multi-topology-ai-review.blocked{background:#fff7f7;border-color:#edc9c9}.multi-topology-ai-review.review{background:#fffaf0;border-color:#ead8ad}.multi-topology-ai-review.ready{background:#f4fbf6;border-color:#badfc8}.multi-topology-ai-review.error{background:#fff7f7;border-color:#edc9c9}.multi-topology-ai-review.error span{color:#7b5f5f;line-height:1.5}.multi-topology-ai-review-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.multi-topology-ai-review-heading>div{min-width:0}.multi-topology-ai-review-heading>div>span{color:#7c8490;letter-spacing:.11em;font-size:10px;font-weight:800}.multi-topology-ai-review-heading h4{color:#252b32;margin:4px 0 6px;font-size:18px}.multi-topology-ai-review-heading p{color:#69717d;max-width:780px;margin:0;line-height:1.5}.multi-topology-ai-review-heading>strong{color:#49515c;background:#eceff3;border-radius:999px;flex:none;padding:7px 10px;font-size:12px}.multi-topology-ai-review.blocked .multi-topology-ai-review-heading>strong{color:#8a3939;background:#f7dddd}.multi-topology-ai-review.review .multi-topology-ai-review-heading>strong{color:#77581f;background:#f5e8c9}.multi-topology-ai-review.ready .multi-topology-ai-review-heading>strong{color:#236840;background:#dcefe3}.multi-topology-ai-counts{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.multi-topology-ai-counts>div{text-align:center;background:#ffffffb8;border:1px solid #e5e8ed;border-radius:12px;gap:3px;padding:10px 12px;display:grid}.multi-topology-ai-counts span{color:#777f8a;font-size:11px}.multi-topology-ai-counts strong{color:#292f36;font-size:18px}.multi-topology-ai-ambiguities{background:#ffffffc2;border:1px solid #e3e6eb;border-radius:13px;overflow:hidden}.multi-topology-ai-ambiguities summary{cursor:pointer;color:#4f5864;padding:11px 13px;font-size:12px;font-weight:800}.multi-topology-ai-ambiguities ul{color:#68717d;gap:8px;margin:0;padding:0 28px 14px 32px;font-size:12px;line-height:1.5;display:grid}.multi-topology-ai-review-footer{color:#7b838e;justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.multi-topology-ai-review-footer strong{color:#4f5863;font-size:11px}@media (width<=800px){.multi-topology-ai-review-heading,.multi-topology-ai-review-footer{display:grid}.multi-topology-ai-review-heading>strong{justify-self:start}.multi-topology-ai-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}.multi-topology-metric-review{background:#ffffffc7;border:1px solid #e1e5ea;border-radius:14px;gap:12px;padding:14px;display:grid}.multi-topology-metric-review.stale{background:#f7f8fa;border-color:#dfe3e8}.multi-topology-metric-review.review{background:#fffaf0;border-color:#ead8ad}.multi-topology-metric-review.blocked{background:#fff6f6;border-color:#ecc7c7}.multi-topology-metric-review>div:not(.multi-topology-metric-heading):first-child{gap:4px;display:grid}.multi-topology-metric-review>div:not(.multi-topology-metric-heading):first-child>strong{color:#333a43;font-size:13px}.multi-topology-metric-review>div:not(.multi-topology-metric-heading):first-child>span{color:#737b86;font-size:12px;line-height:1.45}.multi-topology-metric-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.multi-topology-metric-heading>div{gap:3px;display:grid}.multi-topology-metric-heading>div>strong{color:#2d343c;font-size:14px}.multi-topology-metric-heading>div>span{color:#737b86;font-size:11px;line-height:1.4}.multi-topology-metric-heading>b{color:#795a21;background:#f3e7c8;border-radius:999px;flex:none;padding:6px 9px;font-size:11px}.multi-topology-metric-review.blocked .multi-topology-metric-heading>b{color:#873b3b;background:#f5dddd}.multi-topology-metric-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.multi-topology-metric-values>div{background:#ffffffd1;border:1px solid #e4e8ed;border-radius:12px;gap:4px;padding:11px 12px;display:grid}.multi-topology-metric-values span{color:#777f8b;font-size:10px}.multi-topology-metric-values strong{color:#2c3239;font-size:16px}.multi-topology-metric-conflict{background:#fff7f7e6;border:1px solid #e7c5c5;border-radius:12px;gap:4px;padding:11px 12px;display:grid}.multi-topology-metric-conflict strong{color:#843b3b;font-size:12px}.multi-topology-metric-conflict span{color:#745c5c;font-size:11px;line-height:1.45}.multi-topology-metric-note{background:#ffffffb8;border:1px solid #e3e6eb;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:14px;padding:10px 12px;display:flex}.multi-topology-metric-note strong{color:#525b66;font-size:11px}.multi-topology-metric-note span{color:#7a828c;text-align:right;font-size:11px;line-height:1.4}@media (width<=800px){.multi-topology-metric-heading,.multi-topology-metric-note{display:grid}.multi-topology-metric-heading>b{justify-self:start}.multi-topology-metric-values{grid-template-columns:1fr}.multi-topology-metric-note span{text-align:left}}.topology-diagram-card{background:#fff;border:1px solid #e0e5eb;border-radius:18px;gap:16px;padding:18px;display:grid}.topology-diagram-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.topology-diagram-heading>div:first-child{max-width:760px}.topology-diagram-heading span{color:#7b8490;letter-spacing:.11em;font-size:10px;font-weight:800}.topology-diagram-heading h4{color:#262c33;margin:4px 0 5px;font-size:18px}.topology-diagram-heading p{color:#737b86;margin:0;line-height:1.5}.topology-diagram-summary{background:#f5f7f9;border-radius:13px;flex:none;grid-template-columns:auto auto;align-items:baseline;gap:2px 7px;padding:9px 12px;display:grid}.topology-diagram-summary strong{color:#292f36;font-size:16px}.topology-diagram-summary span{color:#7b838e;letter-spacing:0;font-size:10px;font-weight:600}.topology-diagram-canvas{background:radial-gradient(circle,#fff 0%,#fafbfc 100%);border:1px solid #e6e9ed;border-radius:16px;width:100%;overflow:hidden}.topology-diagram-canvas svg{width:100%;height:auto;min-height:360px;display:block}.topology-diagram-edge{stroke-width:2.2px;stroke-linecap:round}.topology-diagram-edge-eave{stroke:#9ba3ad;stroke-width:2.6px}.topology-diagram-edge-ridge{stroke:#3c4652;stroke-width:4px}.topology-diagram-edge-hip{stroke:#6684a2;stroke-width:3px}.topology-diagram-edge-valley{stroke:#9b6f7c;stroke-width:3px;stroke-dasharray:7 5}.topology-diagram-edge-verge,.topology-diagram-edge-wall_flashing,.topology-diagram-edge-other{stroke:#929aa4}.topology-diagram-node circle{stroke-width:2px}.topology-diagram-node text{pointer-events:none;font-size:11px;font-weight:800}.topology-diagram-node-outer_corner circle{fill:#fff;stroke:#68737e}.topology-diagram-node-outer_corner text{fill:#434c55}.topology-diagram-node-inner_corner circle{fill:#fff6f3;stroke:#a77a6d}.topology-diagram-node-inner_corner text{fill:#714c43}.topology-diagram-node-junction circle{fill:#eef6ff;stroke:#6684a2}.topology-diagram-node-junction text{fill:#405d78}.topology-diagram-node-other circle{fill:#f5f6f7;stroke:#858d96}.topology-diagram-node-other text{fill:#515861}.topology-diagram-legend{flex-wrap:wrap;align-items:center;gap:8px 15px;display:flex}.topology-diagram-legend>span{color:#69717c;align-items:center;gap:6px;font-size:11px;display:inline-flex}.topology-legend-item i{border-top:3px solid #999;width:24px;height:0;display:inline-block}.topology-legend-item.eave i{border-color:#9ba3ad}.topology-legend-item.ridge i{border-width:4px;border-color:#3c4652}.topology-legend-item.hip i{border-color:#6684a2}.topology-legend-item.valley i{border-color:#9b6f7c;border-top-style:dashed}.topology-legend-node i{border:2px solid;border-radius:50%;width:11px;height:11px;display:inline-block}.topology-legend-node.outer i{background:#fff;border-color:#68737e}.topology-legend-node.inner i{background:#fff6f3;border-color:#a77a6d}.topology-legend-node.junction i{background:#eef6ff;border-color:#6684a2}.topology-diagram-warning{color:#747c87;background:#f6f7f9;border-radius:11px;gap:9px;padding:10px 12px;font-size:11px;display:flex}.topology-diagram-warning strong{color:#3d444c;white-space:nowrap}@media (width<=800px){.topology-diagram-heading{display:grid}.topology-diagram-summary{justify-self:start}.topology-diagram-canvas svg{min-height:300px}}@media (width<=520px){.topology-diagram-card{padding:13px}.topology-diagram-canvas svg{min-height:260px}.topology-diagram-warning{display:grid}}.work-app{color:#17191d;background:#f4f5f7;min-height:100vh}.work-topbar{color:#fff;background:#111318;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:0 30px;display:flex}.work-brand{align-items:center;gap:13px;display:flex}.work-brand-mark{color:#111318;background:#fff;border-radius:13px;place-items:center;width:43px;height:43px;font-size:21px;font-weight:900;display:grid}.work-brand strong{font-size:18px;display:block}.work-brand span{color:#aeb4bd;margin-top:2px;font-size:12px;display:block}.work-top-actions{align-items:center;gap:10px;display:flex}.work-roof-link,.work-version{color:#d7dbe1;border:1px solid #343943;border-radius:999px;padding:8px 12px;font-size:12px}.work-roof-link{background:0 0}.work-roof-link:hover{background:#20242b}.work-nav{z-index:20;background:#fff;border-bottom:1px solid #e4e7eb;gap:5px;padding:0 30px;display:flex;position:sticky;top:0;overflow-x:auto}.work-nav button{color:#737a84;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:17px 14px 14px;font-size:13px;font-weight:750}.work-nav button.active{color:#17191d;border-bottom-color:#17191d}.work-page{width:min(1480px,100% - 44px);margin:0 auto;padding:38px 0 70px}.work-feedback{border-radius:14px;margin-bottom:18px;padding:13px 15px;font-size:13px;font-weight:700}.work-feedback.success{color:#176738;background:#e9f6ed}.work-feedback.error{color:#9a2b2b;background:#fff0f0}.work-hero{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.work-hero.payroll{margin-bottom:18px}.work-eyebrow{color:#858c96;letter-spacing:.17em;font-size:10px;font-weight:850;display:block}.work-hero h1{margin:7px 0;font-size:clamp(31px,4vw,46px);line-height:1}.work-hero p{color:#6d747e;margin:0}.work-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.work-stats article{background:#fff;border:1px solid #e1e4e8;border-radius:19px;min-height:118px;padding:21px 23px;box-shadow:0 6px 24px #12161d09}.work-stats article>span,.work-stats article>small{color:#7b828c;font-size:12px;display:block}.work-stats article>strong{letter-spacing:-.04em;margin:10px 7px 2px 0;font-size:29px;display:inline-block}.work-two-column{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:19px;display:grid}.work-two-column.wide-left{grid-template-columns:minmax(0,1.25fr) minmax(370px,.75fr)}.work-card{background:#fff;border:1px solid #e1e4e8;border-radius:21px;padding:25px;box-shadow:0 6px 26px #12161d0a}.work-card>h2{letter-spacing:-.03em;margin:7px 0 23px;font-size:22px}.work-card>h3{margin:18px 0 15px;font-size:16px}.work-card-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.work-card-heading h2{margin:5px 0 0;font-size:20px}.work-count{color:#616873;background:#f0f2f4;border-radius:999px;place-items:center;min-width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.work-field{margin:0;display:block}.work-field>span{color:#5e6570;margin:0 0 7px 2px;font-size:11px;font-weight:800;display:block}.work-field input,.work-field select,.work-field textarea{color:#17191d;background:#fff;border:1px solid #d8dde3;border-radius:12px;width:100%;padding:11px 12px}.work-field input:focus,.work-field select:focus,.work-field textarea:focus{border-color:#7d8590;box-shadow:0 0 0 3px #23282f12}.work-form{gap:15px;display:grid}.work-form.compact{grid-template-columns:1.4fr 1fr auto;align-items:end}.work-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.work-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.work-primary,.work-secondary{border-radius:12px;min-height:43px;padding:0 16px;font-size:12px;font-weight:850}.work-primary{color:#fff;background:#111318;border:1px solid #111318}.work-primary:hover:not(:disabled){background:#252a31}.work-secondary{color:#30353c;background:#fff;border:1px solid #d7dbe0}.work-secondary:hover:not(:disabled){background:#f5f6f7}.work-primary:disabled,.work-secondary:disabled{opacity:.45;cursor:not-allowed}.work-action-row{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.work-crew-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px;display:grid}.work-person{text-align:left;background:#fff;border:1px solid #e0e3e7;border-radius:14px;align-items:center;gap:10px;min-height:66px;padding:10px 12px;display:flex}.work-person:hover{border-color:#b9bec5}.work-person.selected{background:#f5f6f7;border-color:#17191d}.work-person-check{border:1px solid #cfd4da;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;font-weight:900;display:grid}.work-person.selected .work-person-check{color:#fff;background:#17191d;border-color:#17191d}.work-person strong,.work-person small{display:block}.work-person strong{font-size:13px}.work-person small{color:#878e97;margin-top:3px;font-size:11px}.work-live-list,.work-project-list,.work-employee-list,.work-time-list{gap:9px;display:grid}.work-live-row,.work-project-row,.work-employee-row,.work-time-row{background:#fafbfb;border:1px solid #e7e9ec;border-radius:14px}.work-live-row{justify-content:space-between;align-items:center;gap:15px;min-height:66px;padding:11px 12px;display:flex}.work-live-row strong,.work-live-row span{display:block}.work-live-row span{color:#7b828c;margin-top:3px;font-size:11px}.work-live-actions{align-items:center;gap:10px;display:flex}.work-live-actions button{color:#fff;background:#9d3030;border:0;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:850}.work-stop-all{color:#932e2e;background:#fff5f5;border:1px solid #e5c6c6;border-radius:11px;width:100%;margin-top:12px;padding:11px;font-size:12px;font-weight:800}.work-empty{text-align:center;color:#858c96;border:1px dashed #d9dde2;border-radius:13px;padding:24px;font-size:12px}.work-empty.large{margin-top:20px;padding:38px 20px}.work-warning-card{background:#fffaf0;border-color:#ecd7ad;margin-top:19px}.work-warning-card p{color:#745a26;margin:10px 0 0;font-size:13px}.work-location-card{background:#edf8f0;border:1px solid #cfe5d5;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px;padding:14px 16px;display:flex}.work-location-card strong,.work-location-card span{display:block}.work-location-card span{color:#577562;margin-top:4px;font-size:11px}.work-location-card button{color:#275f38;background:#fff;border:1px solid #b7d6c0;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:800}.work-location-row{border:1px dashed #d9dde2;border-radius:13px;align-items:center;gap:12px;padding:12px;display:flex}.work-location-row span{color:#858c96;font-size:11px}.work-project-row{justify-content:space-between;align-items:center;gap:14px;padding:15px;display:flex}.work-project-title{align-items:center;gap:8px;display:flex}.work-project-row p{color:#6f7680;margin:5px 0;font-size:12px}.work-project-row small{color:#858c96}.work-project-row>button,.work-time-row button{background:#fff;border:1px solid #d9dde2;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:750}.work-project-title .status{color:#69717b;text-transform:uppercase;background:#edf0f2;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:850}.work-project-title .status.active{color:#247040;background:#e8f5ec}.work-project-title .status.paused{color:#80611e;background:#fff5df}.work-employee-row{align-items:center;gap:11px;padding:12px;display:flex}.work-avatar{color:#fff;background:#17191d;border-radius:11px;place-items:center;width:38px;height:38px;font-size:14px;font-weight:850;display:grid}.work-employee-row strong,.work-employee-row span{display:block}.work-employee-row span{color:#858c96;margin-top:3px;font-size:11px}.work-divider{background:#eceef1;height:1px;margin:24px 0}.work-time-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;display:flex}.work-time-row>div:last-child{text-align:right}.work-time-row strong,.work-time-row span{display:block}.work-time-row span{color:#838a93;margin-top:3px;font-size:11px}.work-time-row button{margin-top:5px}.work-period-row{grid-template-columns:180px 180px auto;align-items:end;gap:12px;display:grid}.work-payroll-table{border:1px solid #e3e6ea;border-radius:15px;margin-top:23px;overflow:hidden}.work-payroll-head,.work-payroll-row{grid-template-columns:minmax(190px,1.5fr) repeat(4,minmax(110px,1fr));align-items:center;gap:12px;display:grid}.work-payroll-head{color:#6e7580;text-transform:uppercase;letter-spacing:.05em;background:#f4f5f7;padding:11px 14px;font-size:10px;font-weight:850}.work-payroll-row{border-top:1px solid #eceef1;padding:14px;font-size:13px;position:relative}.work-payroll-row:first-of-type{border-top:0}.work-payroll-row>small{color:#9a6c2c;grid-column:1/-1;font-size:11px}.work-payroll-footer{border-top:1px solid #eceef1;justify-content:flex-end;align-items:center;gap:28px;margin-top:18px;padding-top:18px;display:flex}.work-payroll-footer span,.work-payroll-footer strong{text-align:right;display:block}.work-payroll-footer span{color:#7b828c;font-size:11px}.work-payroll-footer strong{margin-top:3px;font-size:22px}.work-inline-warning{color:#76591e;background:#fff8e9;border:1px solid #ecd8ac;border-radius:11px;margin-top:18px;padding:11px 13px;font-size:12px}.roof-return-bar{background:#fff;border-bottom:1px solid #e5e7ea;padding:9px 34px}.roof-return-bar button{color:#555d67;background:0 0;border:0;font-size:12px;font-weight:800}@media (width<=980px){.work-two-column,.work-two-column.wide-left{grid-template-columns:1fr}.work-payroll-head,.work-payroll-row{grid-template-columns:minmax(160px,1.4fr) repeat(4,minmax(95px,1fr))}}@media (width<=720px){.work-topbar{padding:0 16px}.work-brand span,.work-version{display:none}.work-nav{padding:0 10px}.work-page{width:min(100% - 24px,1480px);padding-top:24px}.work-hero{flex-direction:column;align-items:stretch}.work-stats,.work-crew-grid,.work-form-grid,.work-form-grid.three,.work-form.compact{grid-template-columns:1fr}.work-location-row,.work-payroll-footer,.work-live-row{flex-direction:column;align-items:stretch}.work-live-actions{justify-content:space-between}.work-period-row{grid-template-columns:1fr 1fr}.work-period-row button{grid-column:1/-1}.work-payroll-table{overflow-x:auto}.work-payroll-head,.work-payroll-row{min-width:720px}}.work-hero.schedule{align-items:center}.work-week-nav{background:#fff;border:1px solid #dde1e5;border-radius:14px;align-items:center;gap:12px;padding:8px;display:flex}.work-week-nav button{color:#4e5660;background:#f2f4f5;border:0;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:800}.work-week-nav strong{text-align:center;min-width:190px;font-size:12px}.work-schedule-editor{margin-bottom:18px}.work-saturday-toggle{border:1px solid #d8dde3;border-radius:12px;align-items:center;gap:9px;min-height:64px;margin:0;padding:10px 12px;display:flex}.work-saturday-toggle input{width:17px;height:17px;margin:0}.work-saturday-toggle span{color:#555d67;margin:0;font-size:11px;font-weight:750}.work-crew-grid.schedule{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px}.work-schedule-actions{border-top:1px solid #eceef1;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding-top:16px;display:flex}.work-schedule-actions>span{color:#8a919a;max-width:520px;font-size:11px;line-height:1.45}.work-schedule-actions>div{gap:9px;display:flex}.work-schedule-grid{grid-template-columns:repeat(7,minmax(160px,1fr));gap:10px;padding-bottom:7px;display:grid;overflow-x:auto}.work-schedule-day{background:#fff;border:1px solid #e0e4e8;border-radius:17px;min-height:250px;padding:12px}.work-schedule-day.today{border-color:#737b86;box-shadow:0 0 0 2px #14171c0f}.work-schedule-day>header{border-bottom:1px solid #eceef1;justify-content:space-between;align-items:center;margin-bottom:11px;padding:2px 2px 10px;display:flex}.work-schedule-day>header span{color:#7a818b;text-transform:uppercase;font-size:10px;font-weight:850}.work-schedule-day>header strong{font-size:12px}.work-schedule-day-projects{gap:8px;display:grid}.work-schedule-project,.work-schedule-empty{text-align:left;border-radius:11px;width:100%}.work-schedule-project{background:#f8f9fa;border:1px solid #e1e4e8;padding:10px}.work-schedule-project:hover{background:#fff;border-color:#aeb4bc}.work-schedule-project strong,.work-schedule-project span,.work-schedule-project small{display:block}.work-schedule-project strong{font-size:11px;line-height:1.3}.work-schedule-project span{color:#8b929b;margin-top:3px;font-size:9px;line-height:1.3}.work-schedule-project small{color:#555d67;margin-top:8px;font-size:10px;line-height:1.4}.work-schedule-empty{color:#9aa0a8;text-align:center;background:0 0;border:1px dashed #dadde2;min-height:73px;padding:10px;font-size:10px}@media (width<=1050px){.work-crew-grid.schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.work-schedule-grid{grid-template-columns:repeat(7,175px)}}@media (width<=720px){.work-week-nav{justify-content:space-between;width:100%}.work-week-nav strong{min-width:0;font-size:10px}.work-week-nav button{padding:8px}.work-crew-grid.schedule{grid-template-columns:1fr}.work-schedule-actions{flex-direction:column;align-items:stretch}.work-schedule-actions>div{grid-template-columns:1fr;display:grid}}.work-auth-screen{color:#fff;background:radial-gradient(circle at 0 0,#ffffff17,#0000 30%),#111318;place-items:center;min-height:100vh;padding:28px;display:grid}.work-auth-card{background:#171a20;border:1px solid #2b3038;border-radius:24px;width:min(430px,100%);padding:34px;box-shadow:0 22px 70px #00000047}.work-auth-logo{color:#111318;background:#fff;border-radius:16px;place-items:center;width:54px;height:54px;font-size:25px;font-weight:900;display:grid}.work-auth-eyebrow{color:#8f97a3;letter-spacing:.18em;margin-top:24px;font-size:10px;font-weight:850;display:block}.work-auth-card h1{letter-spacing:-.04em;margin:9px 0 10px;font-size:32px;line-height:1.05}.work-auth-card>p{color:#aeb5bf;margin:0 0 24px;font-size:13px;line-height:1.55}.work-auth-card form{gap:15px;display:grid}.work-auth-card label{margin:0}.work-auth-card label>span{color:#c6cbd2;font-size:11px}.work-auth-card input{color:#fff;background:#111318;border-color:#353b45}.work-auth-card input:focus{border-color:#7f8792;box-shadow:0 0 0 3px #ffffff14}.work-auth-card form>button{color:#111318;background:#fff;border:1px solid #fff;border-radius:12px;min-height:47px;margin-top:3px;font-weight:900}.work-auth-card form>button:disabled{opacity:.55;cursor:not-allowed}.work-auth-card>small{color:#747d89;margin-top:18px;font-size:10px;line-height:1.45;display:block}.work-auth-error{color:#ffb9c1;background:#2b171a;border:1px solid #68353b;border-radius:11px;padding:10px 12px;font-size:11px;line-height:1.4}.work-auth-loader{justify-items:center;gap:11px;display:grid}.work-auth-loader>span{color:#89919d;font-size:11px}.work-auth-session{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #d7dce1;border-radius:999px;align-items:center;gap:8px;padding:6px 7px 6px 11px;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 8px 26px #10141a1f}.work-auth-session span{color:#4d5560;font-size:10px;font-weight:800}.work-auth-session button{color:#fff;background:#111318;border:0;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:850}@media (width<=720px){.work-auth-screen{padding:16px}.work-auth-card{padding:26px 22px}.work-auth-card h1{font-size:28px}.work-auth-session{bottom:10px;right:10px}}.finance-hero{align-items:flex-end}.finance-project-select{flex:none;width:min(360px,100%)}.finance-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:19px;display:grid}.finance-stats article{background:#fff;border:1px solid #e1e4e8;border-radius:18px;min-height:118px;padding:19px 20px;box-shadow:0 5px 22px #12161d09}.finance-stats span,.finance-stats small{color:#7b828c;font-size:11px;display:block}.finance-stats strong{letter-spacing:-.035em;margin:11px 0 5px;font-size:23px;display:block}.finance-warning{background:#fff9ec;border:1px solid #ead7ae;border-radius:15px;margin-bottom:17px;padding:13px 15px}.finance-warning strong,.finance-warning span{display:block}.finance-warning strong{color:#6f541f;font-size:12px}.finance-warning span{color:#8a754b;margin-top:4px;font-size:10px;line-height:1.45}.finance-lines{gap:8px;display:grid}.finance-lines>div,.finance-breakdown>div{background:#fafbfb;border:1px solid #e7e9ec;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.finance-lines>div.total{background:#f2f4f5;border-color:#bcc2c9}.finance-lines span,.finance-breakdown span{color:#6f7680;font-size:11px}.finance-lines strong,.finance-breakdown strong{font-size:12px}.finance-breakdown{gap:7px;display:grid}.finance-note{color:#858c96;margin:15px 0 0;font-size:10px;line-height:1.5}.finance-bottom{margin-top:19px}.company-cost-list,.expense-history{gap:8px;display:grid}.company-cost-row,.expense-history-row{background:#fafbfb;border:1px solid #e6e9ec;border-radius:13px;padding:11px 12px}.company-cost-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.company-cost-row strong,.company-cost-row span,.expense-history-row strong,.expense-history-row span{display:block}.company-cost-row span,.expense-history-row span{color:#838a94;margin-top:3px;font-size:10px}.company-cost-actions{flex:none;gap:6px;display:flex}.company-cost-actions button{color:#4d5560;background:#fff;border:1px solid #d4d9df;border-radius:9px;padding:7px 9px;font-size:9px;font-weight:800}.company-cost-actions button:hover:not(:disabled){border-color:#9ea5ae}.company-cost-actions button:disabled{opacity:.45;cursor:not-allowed}.expense-history-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.expense-history-row>div:last-child{text-align:right}@media (width<=1100px){.finance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.finance-hero{align-items:stretch}.finance-project-select{width:100%}.finance-stats{grid-template-columns:1fr}.company-cost-row{flex-direction:column;align-items:stretch}.company-cost-actions{grid-template-columns:1fr 1fr;display:grid}}.work-schedule-day-header{text-align:left;background:0 0;border:0;border-bottom:1px solid #eceef1;justify-content:space-between;align-items:center;width:100%;margin:0 0 11px;padding:2px 2px 10px;display:flex}.work-schedule-day-header:hover{color:#111318}.work-schedule-day-header span{color:#7a818b;text-transform:uppercase;font-size:10px;font-weight:850}.work-schedule-day-header strong{font-size:12px}.work-open-day{color:#4b535d;background:#fff;border:1px solid #d8dde3;border-radius:10px;width:100%;margin-top:10px;padding:8px 9px;font-size:9px;font-weight:850}.work-open-day:hover{background:#f7f8f9;border-color:#9fa6af}.work-day-backdrop{z-index:180;background:#0c0f138f;justify-content:center;align-items:flex-end;padding:18px;display:flex;position:fixed;inset:0}.work-day-sheet{background:#f5f6f7;border:1px solid #d9dde2;border-radius:26px 26px 18px 18px;width:min(760px,100%);max-height:min(92dvh,940px);position:relative;overflow:hidden;box-shadow:0 28px 90px #00000047}.work-day-handle{background:#c7ccd2;border-radius:999px;width:46px;height:5px;margin:10px auto 0}.work-day-header{background:#fff;border-bottom:1px solid #e0e3e7;justify-content:space-between;align-items:flex-start;gap:18px;padding:17px 22px 16px;display:flex}.work-day-header h2{letter-spacing:-.035em;margin:5px 0 4px;font-size:24px}.work-day-header p{color:#858c95;margin:0;font-size:11px}.work-day-close{color:#646b75;background:#fff;border:1px solid #d8dde2;border-radius:999px;flex:none;width:38px;height:38px;font-size:24px;line-height:1}.work-day-sheet>.work-feedback{margin:12px 14px 0}.work-day-scroll{overscroll-behavior:contain;max-height:calc(92dvh - 126px);padding:15px;overflow-y:auto}.work-day-section{background:#fff;border:1px solid #e0e3e7;border-radius:19px;margin-bottom:15px;padding:16px}.work-day-section-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px;display:flex}.work-day-section-heading h3{margin:4px 0 0;font-size:17px}.work-day-section-heading>strong{font-size:15px}.work-day-workers{gap:11px;display:grid}.day-worker-card{background:#fafbfb;border:1px solid #e2e5e9;border-radius:16px;padding:13px}.day-worker-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px;display:flex}.day-worker-top strong,.day-worker-top span{display:block}.day-worker-top>div>strong{font-size:14px}.day-worker-top span{color:#858c96;margin-top:3px;font-size:10px}.day-worker-duration{color:#343a42;white-space:nowrap;font-size:13px}.day-project-field{margin-bottom:11px}.day-time-pair{grid-template-columns:1fr 32px 1fr;align-items:center;gap:7px;display:grid}.day-time-button{text-align:left;background:#fff;border:1px solid #d3d8de;border-radius:14px;min-height:72px;padding:10px 12px}.day-time-button:active{background:#f1f3f4;transform:scale(.985)}.day-time-button span,.day-time-button strong{display:block}.day-time-button span{color:#858c96;letter-spacing:.12em;font-size:9px;font-weight:900}.day-time-button strong{letter-spacing:-.04em;margin-top:3px;font-size:24px}.day-time-arrow{color:#9da4ad;text-align:center;font-size:16px}.day-break-control{border-top:1px solid #e8eaed;justify-content:space-between;align-items:center;gap:12px;margin-top:11px;padding-top:11px;display:flex}.day-break-control>span{color:#747b85;font-size:10px;font-weight:800}.day-break-control>div{grid-template-columns:34px 74px 34px;align-items:center;gap:5px;display:grid}.day-break-control button{color:#353b43;background:#fff;border:1px solid #d7dce1;border-radius:10px;width:34px;height:34px;font-size:18px}.day-break-control strong{text-align:center;font-size:11px}.day-save-time{color:#fff;background:#111318;border:1px solid #111318;border-radius:12px;width:100%;min-height:44px;margin-top:12px;font-size:11px;font-weight:900}.day-save-time:disabled{opacity:.5}.work-empty.compact{padding:16px}.day-advance-list{gap:8px;display:grid}.day-advance-row{background:#fafbfb;border:1px solid #e5e8eb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;display:flex}.day-advance-row strong,.day-advance-row span{display:block}.day-advance-row span{color:#858c96;margin-top:3px;font-size:9px}.work-day-hint{color:#818892;margin:4px 5px 18px;font-size:10px;line-height:1.5}.clock-picker-backdrop{z-index:260;background:#0a0c1099;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.clock-picker-sheet{width:min(480px,100%);padding:10px 18px max(18px, env(safe-area-inset-bottom));background:#fff;border-radius:26px 26px 0 0;box-shadow:0 -18px 60px #00000040}.clock-picker-handle{background:#d0d4d9;border-radius:999px;width:44px;height:5px;margin:0 auto 12px}.clock-picker-header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.clock-picker-header span,.clock-picker-header strong{display:block}.clock-picker-header span{color:#858c96;font-size:10px}.clock-picker-header strong{margin-top:3px;font-size:16px}.clock-picker-close{color:#676e78;background:#fff;border:1px solid #d9dde2;border-radius:999px;width:34px;height:34px;font-size:21px}.clock-picker-value{justify-content:center;align-items:center;gap:5px;margin:14px 0 12px;display:flex}.clock-picker-value>button{color:#3c434c;letter-spacing:-.05em;background:#eef0f2;border:0;border-radius:13px;min-width:82px;padding:9px 12px;font-size:31px;font-weight:900}.clock-picker-value>button.active{color:#fff;background:#111318}.clock-picker-value>span{font-size:29px;font-weight:900}.clock-face{aspect-ratio:1;background:#f1f3f4;border-radius:50%;width:min(310px,78vw);margin:0 auto;position:relative}.clock-hand-dot{background:#111318;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.clock-number{color:#343a42;background:0 0;border:0;border-radius:50%;width:42px;height:42px;font-size:12px;font-weight:800;position:absolute;transform:translate(-50%,-50%)}.clock-number.inner{color:#737a84;width:34px;height:34px;font-size:10px}.clock-number.selected{color:#fff;background:#111318}.clock-number:active{background:#d8dce1}.clock-number.selected:active{background:#111318}.clock-minute-adjust{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:13px auto 0;display:grid}.clock-minute-adjust button{color:#555d67;background:#fff;border:1px solid #d9dde2;border-radius:10px;min-height:38px;font-size:10px;font-weight:800}.clock-minute-adjust span{color:#747b85;white-space:nowrap;font-size:10px;font-weight:750}.clock-picker-actions{grid-template-columns:1fr 1.5fr;gap:9px;margin-top:13px;display:grid}.clock-picker-actions button{border-radius:12px;min-height:46px;font-size:11px;font-weight:900}.clock-cancel{color:#555d67;background:#fff;border:1px solid #d9dde2}.clock-confirm{color:#fff;background:#111318;border:1px solid #111318}@media (width<=720px){.work-day-backdrop{padding:0}.work-day-sheet{border-bottom:0;border-radius:24px 24px 0 0;width:100%;max-height:96dvh}.work-day-scroll{max-height:calc(96dvh - 121px);padding:12px}.work-day-header{padding:14px 16px 13px}.work-day-header h2{font-size:20px}.work-day-section{padding:12px}.day-time-button{min-height:76px}.day-time-button strong{font-size:27px}.clock-picker-sheet{max-height:94dvh;overflow-y:auto}}.percent-settlement-card{margin-bottom:19px}.percent-settled-badge{color:#247040;letter-spacing:.08em;background:#e8f5ec;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900}.percent-formula{color:#737a84;margin:-4px 0 16px;font-size:11px;line-height:1.55}.percent-basis-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:14px;display:grid}.percent-basis-grid>div{background:#fafbfb;border:1px solid #e4e7ea;border-radius:13px;padding:12px}.percent-basis-grid span,.percent-basis-grid strong{display:block}.percent-basis-grid span{color:#858c96;font-size:9px}.percent-basis-grid strong{margin-top:5px;font-size:15px}.percent-worker-list{gap:8px;display:grid}.percent-worker-row{background:#fff;border:1px solid #e3e6e9;border-radius:14px;grid-template-columns:minmax(170px,1fr) minmax(330px,1.5fr);align-items:center;gap:14px;padding:12px;display:grid}.percent-worker-name strong,.percent-worker-name span{display:block}.percent-worker-name strong{font-size:13px}.percent-worker-name span{color:#858c96;margin-top:3px;font-size:9px}.percent-worker-values{grid-template-columns:repeat(3,minmax(90px,1fr));gap:7px;display:grid}.percent-worker-values>div{border-left:1px solid #eceef1;padding-left:10px}.percent-worker-values span,.percent-worker-values strong{text-align:right;display:block}.percent-worker-values span{color:#8a919a;text-transform:uppercase;font-size:8px}.percent-worker-values strong{margin-top:3px;font-size:12px}.percent-worker-values .payout strong{font-size:14px}.percent-blockers{background:#fff9ec;border:1px solid #ead8af;border-radius:12px;gap:4px;margin-top:13px;padding:10px 12px;display:grid}.percent-blockers span{color:#765b25;font-size:10px}.percent-blockers span:before{content:"• "}.percent-actions{border-top:1px solid #eceef1;justify-content:flex-end;gap:9px;margin-top:14px;padding-top:14px;display:flex}@media (width<=720px){.percent-basis-grid,.percent-worker-row{grid-template-columns:1fr}.percent-worker-values{grid-template-columns:repeat(3,1fr)}.percent-actions{grid-template-columns:1fr;display:grid}}.day-add-button{color:#252a31;background:#fff;border:1px solid #bfc5cc;border-radius:12px;width:100%;min-height:46px;margin-bottom:11px;font-size:11px;font-weight:900}.day-add-button:active{background:#f0f2f4;transform:scale(.99)}.day-add-button.secondary{color:#59616b;border-style:dashed;margin-top:2px}.day-new-entry{background:#f6f8f9;border-color:#bfc5cc;margin-bottom:11px}.day-add-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:11px;display:grid}.day-note-field{margin-top:11px}.day-advance-form{background:#fafbfb;border:1px solid #dfe3e7;border-radius:14px;margin-bottom:12px;padding:12px}.day-advance-form>.work-field{margin-bottom:9px}.day-advance-form .day-save-time{margin-top:4px}@media (width<=720px){.day-add-grid{grid-template-columns:1fr}.day-add-button{min-height:50px;font-size:12px}}.work-schedule-day{min-height:290px}.work-calendar-summary{gap:8px;display:grid}.work-calendar-actual-project,.work-calendar-advances{text-align:left;background:#fafbfb;border:1px solid #dde2e7;border-radius:12px;width:100%;padding:9px 10px}.work-calendar-actual-project:hover,.work-calendar-advances:hover{background:#fff;border-color:#aeb5bd}.work-calendar-actual-project>strong,.work-calendar-location,.work-calendar-time-line,.work-calendar-advance-line,.work-calendar-summary-label{display:block}.work-calendar-actual-project>strong{color:#252a31;font-size:10px;line-height:1.25}.work-calendar-location{color:#8a919a;margin-top:2px;font-size:8px;line-height:1.25}.work-calendar-time-list{gap:5px;margin-top:7px;display:grid}.work-calendar-time-line{color:#4f5761;font-size:9px;line-height:1.35}.work-calendar-time-line b{color:#2f353d;font-weight:850}.work-calendar-summary-label{color:#8c939c;letter-spacing:.1em;margin-bottom:5px;font-size:8px;font-weight:900}.work-calendar-advances{background:#fffaf0;border-color:#eadcb9}.work-calendar-advance-line{color:#6e5628;font-size:9px;line-height:1.4}.work-calendar-advance-line+.work-calendar-advance-line{margin-top:3px}.work-calendar-advance-line b{font-weight:850}.work-schedule-day-projects.planned{margin-top:8px}.work-schedule-day-projects.planned>.work-calendar-summary-label{padding-left:2px}.work-open-day{margin-top:9px}@media (width<=1050px){.work-schedule-grid{grid-template-columns:repeat(7,205px)}}@media (width<=720px){.work-schedule-grid{grid-template-columns:repeat(7,210px);gap:8px}.work-schedule-day{min-height:315px;padding:10px}.work-calendar-time-line,.work-calendar-advance-line{font-size:10px}.work-calendar-actual-project>strong{font-size:11px}}.work-schedule-project.planned-card{padding:0;display:block;overflow:hidden}.planned-project-main{text-align:left;background:0 0;border:0;width:100%;padding:10px}.planned-project-main strong,.planned-project-main span{display:block}.planned-project-main strong{font-size:11px;line-height:1.3}.planned-project-main span{color:#8b929b;margin-top:3px;font-size:9px}.planned-worker-list{border-top:1px solid #e5e8eb}.planned-worker-row{justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:5px 7px 5px 10px;display:flex}.planned-worker-row+.planned-worker-row{border-top:1px solid #edf0f2}.planned-worker-row>span{color:#555d67;font-size:10px;font-weight:750}.planned-worker-remove{color:#9a4141;background:#fff;border:1px solid #ded3d3;border-radius:9px;flex:none;width:29px;height:29px;font-size:17px;line-height:1}.planned-worker-remove:disabled{opacity:.45}.work-clear-day-plan{color:#914141;background:snow;border:1px dashed #dfc6c6;border-radius:10px;width:100%;min-height:35px;margin-top:3px;font-size:9px;font-weight:850}.day-bulk-heading{justify-content:space-between;align-items:center;gap:8px;margin:4px 0 8px;display:flex}.day-bulk-heading>span{color:#646c76;font-size:10px;font-weight:850}.day-bulk-heading>div{gap:6px;display:flex}.day-bulk-heading button{color:#59616b;background:#fff;border:1px solid #d8dde2;border-radius:9px;min-height:31px;padding:6px 8px;font-size:9px;font-weight:800}.day-bulk-heading button:disabled{opacity:.42}.day-employee-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px;display:grid}.day-employee-picker>button{text-align:left;background:#fff;border:1px solid #dfe3e7;border-radius:12px;align-items:center;gap:8px;min-height:50px;padding:8px 9px;display:flex}.day-employee-picker>button.selected{background:#f0f2f4;border-color:#6f7781}.day-employee-picker>button:disabled{opacity:.45;cursor:not-allowed}.day-employee-check{color:#fff;background:#fff;border:1px solid #cfd4da;border-radius:7px;flex:none;place-items:center;width:22px;height:22px;font-size:11px;font-weight:900;display:grid}.day-employee-picker>button.selected .day-employee-check{background:#111318;border-color:#111318}.day-employee-picker strong,.day-employee-picker small{display:block}.day-employee-picker strong{color:#343a42;font-size:10px}.day-employee-picker small{color:#8b929b;margin-top:2px;font-size:8px}.day-bulk-project{margin-bottom:11px}.day-time-suggestions{background:#f8f9fa;border:1px solid #e1e5e9;border-radius:13px;margin-bottom:11px;padding:10px}.day-time-suggestion-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.day-time-suggestion-heading span{color:#555d67;font-size:9px;font-weight:850}.day-time-suggestion-heading small{color:#9097a0;font-size:8px}.day-time-suggestion-list{gap:7px;padding-bottom:2px;display:flex;overflow-x:auto}.day-time-suggestion-list>button{text-align:left;background:#fff;border:1px solid #d6dbe0;border-radius:10px;min-width:130px;padding:8px 9px}.day-time-suggestion-list strong,.day-time-suggestion-list span{display:block}.day-time-suggestion-list strong{color:#30363e;font-size:11px}.day-time-suggestion-list span{color:#858c95;margin-top:3px;font-size:8px}@media (width<=720px){.day-bulk-heading{flex-direction:column;align-items:stretch}.day-bulk-heading>div{grid-template-columns:1fr 1fr;display:grid}.day-bulk-heading button{min-height:38px}.day-employee-picker{grid-template-columns:1fr}.day-employee-picker>button{min-height:54px}.planned-worker-remove{width:34px;height:34px}.work-clear-day-plan{min-height:40px}}.work-calendar-actual-project{padding:0;overflow:hidden}.work-calendar-project-main{text-align:left;background:0 0;border:0;width:100%;padding:9px 10px 5px}.work-calendar-project-main>strong,.work-calendar-project-main .work-calendar-location{display:block}.work-calendar-project-main>strong{color:#252a31;font-size:10px;line-height:1.25}.work-calendar-time-list{gap:3px;margin-top:2px;padding:0 6px 7px}.work-calendar-time-row{border-top:1px solid #e8ebee;grid-template-columns:1fr 30px;align-items:center;gap:5px;min-height:34px;display:grid}.work-calendar-time-main{text-align:left;background:0 0;border:0;min-width:0;padding:7px 4px}.work-calendar-time-remove{color:#9a4141;background:#fff;border:1px solid #dfd2d2;border-radius:8px;width:28px;height:28px;font-size:16px;line-height:1}.work-calendar-time-remove:disabled{opacity:.45}.work-clear-recorded-day{color:#914141;background:snow;border:1px dashed #dfc6c6;border-radius:10px;width:100%;min-height:35px;font-size:9px;font-weight:850}.day-clear-recorded-time{color:#934646;white-space:nowrap;background:snow;border:1px solid #dfcaca;border-radius:10px;min-height:34px;padding:7px 9px;font-size:9px;font-weight:850}.day-clear-recorded-time:disabled{opacity:.45}.day-time-actions{grid-template-columns:minmax(0,1fr) minmax(120px,.45fr);gap:8px;margin-top:12px;display:grid}.day-time-actions .day-save-time{margin-top:0}.day-delete-time{color:#934646;background:snow;border:1px solid #dfcaca;border-radius:12px;min-height:44px;font-size:10px;font-weight:850}.day-delete-time:disabled{opacity:.45}@media (width<=720px){.work-calendar-project-main>strong{font-size:11px}.work-calendar-time-remove{width:32px;height:32px}.work-clear-recorded-day{min-height:40px}.work-day-section-heading{align-items:stretch}.day-clear-recorded-time{min-height:38px}.day-time-actions{grid-template-columns:1fr}.day-delete-time{min-height:44px}}.payroll-period-nav{grid-template-columns:44px minmax(210px,auto) minmax(90px,auto) 44px;justify-content:start;align-items:center;gap:8px;margin-bottom:10px;display:grid}.payroll-nav-arrow{color:#30363d;background:#fff;border:1px solid #d8dde2;border-radius:12px;width:44px;height:42px;font-size:27px;font-weight:700;line-height:1}.payroll-nav-arrow:hover,.payroll-current-period:hover,.payroll-mode-switch button:hover{background:#f7f8f9;border-color:#aeb5bd}.payroll-mode-switch{background:#f3f4f5;border:1px solid #d8dde2;border-radius:12px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.payroll-mode-switch button{color:#6a717a;background:0 0;border:0;border-radius:9px;min-height:34px;padding:7px 14px;font-size:10px;font-weight:850}.payroll-mode-switch button.active{color:#fff;background:#111318}.payroll-current-period{color:#4f5761;background:#fff;border:1px solid #d8dde2;border-radius:12px;min-height:42px;padding:8px 13px;font-size:10px;font-weight:850}.payroll-period-label{color:#343a42;margin:2px 0 14px;font-size:13px;font-weight:850}@media (width<=720px){.payroll-period-nav{grid-template-columns:42px minmax(0,1fr) 42px}.payroll-mode-switch{min-width:0}.payroll-current-period{grid-area:2/1/auto/-1}.payroll-nav-arrow{width:42px;height:42px}.payroll-period-label{text-align:center}}
