:root{--navy:#113b59;--blue:#0969ab;--ink:#182d40;--muted:#738291;--line:#e1e7ed;--bg:#f4f7fa}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:14px system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;border-radius:7px;transition:.15s}button:hover{filter:brightness(.95)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #70b7ef;outline-offset:2px}[hidden]{display:none!important}aside{position:fixed;inset:0 auto 0 0;width:254px;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:0 20px}.brand{padding:10px 0 23px;text-align:center;border-bottom:1px solid var(--line)}.brand img{display:block;width:180px;height:155px;object-fit:cover;margin:auto}.brand strong{font-size:18px;letter-spacing:1px}.brand span{color:var(--blue)}.nav-caption{font-size:10px;letter-spacing:1.4px;color:#8a96a0;margin:29px 9px 15px}nav button{width:100%;background:none;text-align:left;display:flex;align-items:center;gap:12px;padding:14px 13px;margin-bottom:7px;color:#687c8c;font-size:17px}nav button span{font-size:14px}nav button b{margin-left:auto;font-size:11px;background:#edf2f6;padding:3px 7px;border-radius:5px}nav button.active{background:#e9f3fb;color:#0969ab;font-weight:650;border-left:3px solid #1373b5}.roadmap{margin-top:auto;padding:17px 12px;background:#f6f8fa;border-radius:8px;font-size:10px;letter-spacing:.8px;color:#496b83}.roadmap p{font-size:12px;line-height:1.65;letter-spacing:0;color:#8794a0}.dot{display:inline-block;width:6px;height:6px;background:#1785c4;border-radius:50%;margin-right:5px}.account{display:flex;gap:9px;align-items:center;margin:21px 0;padding-top:20px;border-top:1px solid var(--line)}.avatar{padding:10px;border-radius:8px;color:#176a9f;background:#e9f3fa;font-weight:700}.account strong{font-size:12px}.account small{display:block;font-size:10px;margin-top:4px;color:#82909b}.account button{margin-left:auto;background:none;color:#607d91;font-size:22px}main{margin-left:254px}header{height:72px;background:#fff;border-bottom:1px solid var(--line);padding:0 40px;display:flex;align-items:center;justify-content:space-between}header small{color:#8b98a4;font-size:11px}header small span{color:#42617b}.connection{font-size:11px;color:#397965;background:#edf7f1;padding:7px 11px;border-radius:20px}.connection.offline{background:#fff0d7;color:#986f1b}.content{padding:34px 40px;max-width:1600px;margin:auto}.page-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:29px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#7a8f9f;font-weight:650;margin:0 0 10px}h1{font-size:29px;letter-spacing:-.8px;margin:0 0 10px;font-weight:700}.page-title p:last-child{color:var(--muted);font-size:13px;margin:0}.primary{background:#0869a9;color:#fff;padding:12px 18px;font-weight:600;font-size:12px;box-shadow:0 3px 5px #0c5e8c16}.secondary{background:#fff;color:#45647b;border:1px solid #d8e1e9;padding:11px 16px}.stats{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:18px;margin-bottom:24px}.stats article{background:#fff;padding:21px 23px;border:1px solid var(--line);border-radius:10px}.stats article>div{color:#7b8c9a;font-size:12px;display:flex;justify-content:space-between}.stats article>div span{color:#4988b2}.stats strong{display:block;font-size:32px;margin:15px 0 6px;font-weight:650}.stats small{font-size:11px;color:#99a4ae}.stats .status-text{font-size:18px;color:#286c63;margin-top:25px;margin-bottom:14px}.welcome{display:flex;justify-content:space-between;align-items:center;overflow:hidden;background:linear-gradient(112deg,#103852,#165b87);color:#fff;border-radius:12px;padding:31px 38px;min-height:270px}.welcome .eyebrow{color:#7fc0e7}.welcome h2{font-size:25px;line-height:1.4;letter-spacing:-.6px;margin:12px 0}.welcome p:not(.eyebrow){color:#b3cddb;font-size:12px;line-height:1.8}.light{background:#fff;color:#12547d;padding:11px 15px;font-size:12px;margin-top:8px;font-weight:650}.machine-art{position:relative;width:210px;margin:0 35px;color:#b6dbef;transform:rotate(-4deg);opacity:.8}.machine-head{border:2px solid #89b7d0;border-radius:7px 7px 0 0;padding:12px;font-size:13px;letter-spacing:3px;background:#ffffff09}.machine-head span{float:right;font-size:6px}.machine-window{border:2px solid #89b7d0;border-top:0;height:125px;margin-right:25px;background:#7ac6ee0a;position:relative}.spindle{position:absolute;width:25px;height:58px;background:#81b4ce;left:65px;top:0;clip-path:polygon(0 0,100% 0,100% 60%,65% 60%,65% 90%,50% 100%,35% 90%,35% 60%,0 60%)}.table{position:absolute;height:15px;bottom:25px;left:23px;right:23px;border:2px solid #89b7d0;background:repeating-linear-gradient(90deg,transparent,transparent 12px,#89b7d0 13px,#89b7d0 14px)}.machine-base{height:24px;border:2px solid #89b7d0;background:#7ac6ee18}.machine-art small{position:absolute;bottom:-28px;font-size:8px;letter-spacing:2px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 0 15px}h2{font-size:15px;margin:0}.link{color:#0870b2;background:none;font-size:11px}.empty{padding:32px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:10px}.empty .empty-icon{font-size:25px;color:#629bbf;margin-bottom:10px}.empty h3{font-size:15px}.empty p{color:#8b99a3;font-size:12px;line-height:1.8}.next{background:#edf2f6;display:flex;gap:15px;align-items:center;margin-top:24px;padding:19px 23px;border-radius:9px}.next-icon{border:1px solid #c6d3de;padding:10px;border-radius:8px;color:#557b96;font-size:12px}.next strong{font-size:12px}.next p{font-size:11px;color:#8193a1;margin:6px 0 0}.next>span{margin-left:auto;font-size:10px;color:#7e91a0;white-space:nowrap}footer{margin-top:35px;padding-top:17px;border-top:1px solid var(--line);font-size:10px;color:#98a6b1;display:flex;justify-content:space-between;gap:20px}.toolbar{display:flex;gap:12px;margin-bottom:22px}input,select,textarea{border:1px solid #d5e0e8;border-radius:6px;padding:11px 12px;background:#fff;color:var(--ink);width:100%;min-width:0}textarea{resize:vertical;min-height:90px}input::placeholder{color:#98a6b1}.toolbar input{flex:1}.toolbar select{max-width:220px}.toolbar button{white-space:nowrap}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px;background:#fff}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{font-size:10px;letter-spacing:.7px;color:#8193a1;background:#f9fbfc;padding:15px 18px;font-weight:600}td{padding:17px 18px;border-top:1px solid #edf1f4;font-size:12px}td strong{display:block;color:#285372}td small{display:block;color:#92a0ab;font-size:10px;margin-top:5px}.badge{background:#edf4f9;color:#5586a6;border-radius:5px;padding:4px 8px;font-size:10px}.edit{background:#f0f6fa;color:#296d9c;padding:7px 12px;font-size:11px}dialog{border:0;border-radius:13px;padding:0;width:650px;max-width:95vw;box-shadow:0 20px 100px #102f4e44;max-height:92vh}dialog::backdrop{background:#10283e88;backdrop-filter:blur(3px)}.modal-title{padding:25px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-title h2{font-size:21px}.close{background:none;font-size:27px;color:#8196a6}.fields{padding:25px 28px;display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;font-weight:550;color:#526c80}label input,label select,label textarea{margin-top:7px}.wide{grid-column:1/-1}.modal-footer{padding:20px 28px;display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--line);background:#f8fafc}.danger{margin-right:auto;background:#fff0ed;color:#b64c3e;padding:10px}.error{color:#b2473f;font-size:12px;padding:0 28px}.login-card{width:420px;max-width:94vw;background:white;padding:25px 36px 35px;border:1px solid var(--line);border-radius:15px;box-shadow:0 20px 60px #234b6c0e}.login-card img{width:240px;height:200px;object-fit:cover;display:block;margin:auto}.login-card h1{font-size:23px}.login-card>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.7}.login-card label{margin:20px 0}.login-card button{width:100%}.login-card small{display:block;text-align:center;margin-top:25px;font-size:10px;color:#91a1ae}#login{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:25px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#173e56;color:white;padding:13px 22px;border-radius:8px;box-shadow:0 8px 20px #0002;z-index:20;font-size:12px}@media(min-width:1500px){.content{padding-top:45px}.welcome{min-height:300px}}@media(max-width:1000px){aside{width:210px}.brand img{width:160px}main{margin-left:210px}.content{padding:25px}header{padding:0 25px}.machine-art{margin:0 5px;width:165px}.welcome{padding:25px}.welcome h2{font-size:21px}.stats{gap:10px}.stats article{padding:18px}.next>span{display:none}}@media(max-width:720px){aside{position:static;width:100%;padding:0 16px;border-right:0}.brand{display:flex;align-items:center;text-align:left;padding:0;border-bottom:0;gap:10px}.brand img{width:85px;height:78px;margin:0}.brand strong{font-size:16px}.nav-caption,.roadmap,.account{display:none}nav{display:flex;gap:5px;padding-bottom:8px}nav button{justify-content:center;margin:0;padding:10px;gap:7px}nav button b{display:none}main{margin:0}header{height:45px;padding:0 18px}.content{padding:24px 17px}h1{font-size:24px}.page-title{align-items:flex-start}.page-title .primary{padding:11px;font-size:10px;white-space:nowrap}.eyebrow{font-size:8px}.page-title p:last-child{font-size:11px}.stats{grid-template-columns:1fr 1fr}.stats article:last-child{grid-column:1/-1;display:flex;align-items:center;gap:15px}.stats .status-text{font-size:13px;margin:0}.stats article:last-child small{margin-left:auto;font-size:9px}.stats article:last-child>div span{display:none}.stats article:last-child>div{font-size:10px}.welcome{padding:25px 22px;min-height:245px}.welcome h2{font-size:20px}.machine-art{display:none}.section-heading h2{font-size:12px}.section-heading .link{font-size:10px}.next{padding:15px;gap:11px}.next p{line-height:1.6}.next strong{font-size:11px}footer{font-size:9px;line-height:1.7}footer span{max-width:210px;text-align:right}.toolbar{flex-wrap:wrap}.toolbar input{flex-basis:100%}.toolbar select{max-width:none;flex:1}.toolbar button{font-size:11px}.fields{grid-template-columns:1fr;padding:20px}.wide{grid-column:auto}.modal-title{padding:20px}.modal-footer{padding:15px;gap:6px}.modal-footer button{font-size:11px;padding:10px}.connection{font-size:9px}th,td{padding:14px}.login-card{padding:20px 25px}.login-card img{height:175px}}

.archived-row{background:#f8f9fb}.archived-badge{display:inline-block;margin-top:8px;background:#fff0d7;color:#8a631c}.toolbar #status-filter{max-width:165px}@media(max-width:720px){.toolbar #status-filter{max-width:none;flex:1}}
.report-dialog{width:1000px}.report-body{padding:0 25px 25px}.report-body fieldset{padding:0;border:0;margin:0;min-width:0}.report-body .fields{padding:20px 0}.report-section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 10px}.report-section-title h3{font-size:15px;margin:0}.report-machine-card,.day-card{padding:0 20px 5px;background:#f7fafc;border:1px solid var(--line);border-radius:9px;margin-top:15px}.report-machine-card textarea{min-height:85px}.report-machine-card .report-section-title,.day-card .report-section-title{margin-top:18px}details{border:1px solid var(--line);padding:14px;border-radius:8px;margin-top:15px}summary{cursor:pointer;font-size:12px;color:#38617d;font-weight:600}.hint{font-size:11px;color:#7a8e9e;line-height:1.7;margin:8px 0 0}.company-hint{padding:0 28px}.report-body .hint{margin:10px 0}.report-totals{padding:16px 20px;background:#eaf4fb;border-radius:8px;color:#26668d;font-size:13px;font-weight:650;margin-top:15px}.report-actions{flex-wrap:wrap;position:sticky;bottom:0;z-index:2}.checkbox-field{display:flex;align-items:center;gap:9px}.checkbox-field input{width:auto;margin:0}.history-item{padding:13px 0;border-bottom:1px solid var(--line)}.history-item>strong{font-size:12px}.history-item>small{display:block;color:#8a9baa;margin-top:6px;font-size:11px}.history-item pre{white-space:pre-wrap;word-break:break-word;font-size:10px;color:#576f81;background:#f7fafc;padding:10px}.report-body fieldset:disabled{opacity:.85}nav{flex-shrink:0}@media(max-width:720px){nav button{gap:5px;padding:9px 5px}nav button span{font-size:10px}nav button{font-size:13px}.report-body{padding:0 17px 20px}.report-body .fields{grid-template-columns:1fr 1fr;gap:12px}.report-body .wide{grid-column:1/-1}.report-machine-card,.day-card{padding-left:12px;padding-right:12px}.report-actions button{font-size:10px;flex:1}.report-section-title h3{font-size:13px}.report-section-title button{font-size:10px}.report-section-title{gap:8px}#report-state-label{max-width:260px}.report-body input,.report-body select,.report-body textarea{font-size:12px;padding:10px}.report-body label{font-size:10px}.report-machine-card .fields>label:not(.wide){grid-column:1/-1}}
.client-declaration{margin-top:24px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:8px}.client-declaration h3{color:var(--navy);margin:0 0 16px;font-size:16px}.client-declaration ol{margin:0;padding-left:22px}.client-declaration li{font-size:12px;line-height:1.8;margin:0 0 11px;color:#425d72}.signature-pads{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:17px 0}.signature-box{padding:16px;background:#fff;border:1px solid var(--line);border-radius:8px}.signature-box h4{margin:0 0 5px;font-size:13px}.signature-box canvas{display:block;background:#f9fcfe;border:1px dashed #aabecb;border-radius:5px;width:100%;height:155px;touch-action:none;margin:12px 0;cursor:crosshair}.signature-box button{font-size:11px;padding:8px 12px}.delete-content{padding:20px 28px}.delete-content p{font-size:13px;line-height:1.8}.report-actions .danger{margin-right:0}.report-actions #report-save{margin-left:auto}#signature-consent-label{font-size:12px;line-height:1.7}#signature-consent{flex-shrink:0}@media(max-width:720px){.signature-pads{grid-template-columns:1fr}.client-declaration{padding:15px}.client-declaration li{font-size:11px}.signature-box canvas{height:165px}.report-actions #report-save{margin-left:0}}
.report-snapshot-info{padding:15px;background:#edf5fa;border-radius:8px;color:#476d88;font-size:11px;margin-bottom:18px}.report-snapshot-info p{line-height:1.7;margin-bottom:0}
.photo-section{margin:28px 0;border-top:1px solid var(--line);padding-top:8px}.photo-upload-controls{display:flex;align-items:flex-end;gap:12px;margin-top:16px}.photo-upload-controls label{flex:1}.photo-upload-controls button{white-space:nowrap}.photo-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.photo-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.photo-card>img{display:block;width:100%;height:220px;object-fit:contain;background:#edf2f6}.photo-open{display:block;color:#146caa;font-size:11px;padding:10px 14px;text-decoration:none}.photo-card-fields{padding:0 14px 15px;display:grid;gap:13px}.photo-card-fields textarea{min-height:70px}.photo-card-fields p{line-height:1.7;white-space:pre-wrap;margin:0;font-size:12px}.photo-card-fields small{color:#72889b}.photo-card-actions{display:flex;gap:6px;flex-wrap:wrap}.photo-card-actions button{font-size:10px;padding:8px;margin:0}.photo-gallery>.hint{grid-column:1/-1}@media(max-width:720px){.photo-gallery{grid-template-columns:1fr}.photo-upload-controls{flex-wrap:wrap;gap:8px}.photo-upload-controls label{flex-basis:100%}.photo-upload-controls button{flex:1;font-size:11px}.photo-card>img{height:230px}}

.billing-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:20px 0}.billing-stat,.billing-tech{background:white;border:1px solid #dce5ed;border-radius:12px;padding:18px}.billing-stat strong{display:block;font-size:24px;margin-top:10px;color:#123d57}.billing-stat small{color:#536c80}#billing-dialog{width:min(900px,95vw)}#billing-dialog fieldset{border:0;padding:20px}#billing-dialog .hint{padding:0 12px}.billing-payment{border-top:1px solid #dce5ed;padding:16px 0}#billing-custom label{display:inline-block;margin:0 8px}#billing-view .toolbar{flex-wrap:wrap}#billing-view .toolbar label{display:flex;gap:8px;align-items:center}

.billing-subtotals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:18px}.billing-subtotals>.wide{grid-column:1/-1}.billing-paid{background:#e3f5e9!important;color:#185b32!important;border-color:#abd9b8!important}.billing-unpaid{background:#fff3bf!important;color:#6c4c00!important;border-color:#e7cc6f!important}.billing-paid strong,.billing-paid small{color:#185b32}.billing-unpaid strong,.billing-unpaid small{color:#6c4c00}

.billing-technician-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.billing-technician-row strong{margin-right:12px}.billing-technician-row .badge{padding:8px 12px;white-space:normal}

.backup-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;margin:22px 0}.backup-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.backup-copy{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:10px 0}.backup-copy small{display:block;color:var(--muted);margin-top:5px}#backup-restore-dialog{width:min(680px,95vw)}.backup-restore-body{padding:20px}.backup-restore-body label{display:block;margin:18px 0}#backup-status{font-weight:600}
