:root{--green:#36b513;--green-dark:#23850c;--ink:#162118;--muted:#667369;--line:#dbe4dc;--bg:#f4f7f4;--danger:#c62828}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 Arial,Helvetica,sans-serif}header{min-height:68px;padding:10px max(22px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:26px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:bold;font-size:17px}.brand img{width:54px;height:42px;object-fit:contain}nav{display:flex;gap:16px}nav a,.profile a{color:var(--green-dark);text-decoration:none}.profile{margin-left:auto;font-size:13px;color:var(--muted)}.container{max-width:1240px;margin:0 auto;padding:28px 22px 48px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:0 1px 2px #18381a08}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:28px;border-radius:14px;color:white;background:linear-gradient(110deg,var(--green-dark),var(--green))}.hero h1,.section-head h1{margin:0 0 4px}.hero p,.section-head p{margin:0}.metric{display:flex;flex-direction:column;text-align:right}.metric strong{font-size:38px}.metric span{font-size:13px}.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.section-head h1{font-size:28px}.section-head h2,.card h2{margin:0 0 12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.button,button{border:1px solid #b7c4b9;background:white;color:#235f18;padding:10px 14px;border-radius:7px;font:inherit;font-weight:bold;cursor:pointer;text-decoration:none;display:inline-block}.primary{background:var(--green);border-color:var(--green);color:#fff}.primary:hover{background:var(--green-dark)}.danger{color:#fff;background:var(--danger);border-color:var(--danger)}.link-button{border:0;background:none;color:var(--green-dark);padding:2px}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:13px 0;color:inherit;text-decoration:none}.list-row:first-child{border-top:0}.list-row>strong{min-width:92px}.list-row span{flex:1}.list-row small{display:block;color:var(--muted);margin-top:2px}.list-row b{font-size:13px;color:var(--muted);white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form label,.report-form label{display:flex;flex-direction:column;gap:5px;font-weight:bold;margin:0 0 14px}input,textarea,select{width:100%;border:1px solid #b9c7bc;border-radius:6px;padding:10px;font:inherit;color:var(--ink);background:#fff}textarea{resize:vertical}.hint,.eyebrow{color:var(--muted);font-size:13px}.eyebrow{font-weight:bold;text-transform:uppercase;letter-spacing:.06em}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:13px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;color:var(--muted)}.clickable{cursor:pointer}.clickable:hover{background:#f7fbf7}.table-wrap{overflow:auto}.flash,.error,.success{padding:12px 14px;border-radius:8px;margin:0 0 18px}.flash.success,.success{color:#125f16;background:#e6f7e5}.flash.error,.error{color:#8d1515;background:#fee9e9}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#f7fbf7,#e3f3e3)}.login-card,.setup{width:min(100%,460px);text-align:center}.setup{width:min(100%,720px);text-align:left}.setup .logo,.login-card .logo{height:62px;max-width:190px;object-fit:contain;margin:auto;display:block}.setup h1,.login-card h1{margin:12px 0 5px}.login-card form,.setup form{text-align:left;margin-top:20px}.login-card button,.setup button{width:100%;margin-top:6px}.task{position:relative;border-top:1px solid var(--line);padding:18px 38px 4px 0}.task:first-child{border-top:0}.task-top{grid-template-columns:1fr 120px 160px}.remove-task{position:absolute;right:0;top:17px;width:28px;height:28px;padding:0;border-radius:50%;border:0;background:#fff0f0;color:var(--danger);font-size:24px;line-height:20px}.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin:-5px 0 14px}.thumbs img{height:76px;width:100px;object-fit:cover;border-radius:5px;border:1px solid var(--line)}#signature{width:100%;height:auto;border:2px dashed #94ae97;border-radius:8px;background:#fff;touch-action:none}.save-report{margin-top:20px}.print{background:#e8ece8;padding:20px}.print-actions{max-width:210mm;margin:0 auto 12px;display:flex;justify-content:flex-end;gap:10px}.print-page{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:15mm;box-shadow:0 1px 8px #0002}.print-header{display:flex;align-items:center;gap:22px;border-bottom:3px solid var(--green);padding-bottom:10px}.print-header img{width:120px;max-height:60px;object-fit:contain}.print-header h1{margin:0}.print-header p{margin:3px 0}.report-meta{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:16px 0}.print-table{font-size:12px}.print-table th,.print-table td{vertical-align:top;border:1px solid #bac4bc}.photos img{max-width:32%;max-height:120px;margin:4px;object-fit:cover}.signature{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:12px;border-top:1px solid var(--line)}.signature img{max-width:220px;max-height:90px}.print-actions a{padding:10px;color:var(--green-dark)}
@media(max-width:760px){header{padding:8px 14px;gap:12px;flex-wrap:wrap}.brand span{display:none}.brand img{width:48px}nav{order:3;width:100%;justify-content:space-between;font-size:13px}.profile{font-size:12px}.container{padding:20px 14px}.two,.grid{grid-template-columns:1fr}.hero{padding:20px;align-items:flex-start}.metric{text-align:left}.section-head{flex-direction:column}.task-top{grid-template-columns:1fr}.list-row>strong{min-width:70px}.print{padding:0}.print-page{width:100%;min-height:0;padding:10mm}.print-actions{padding:10px}.report-meta{grid-template-columns:1fr}.photos img{max-width:47%}}
@media print{.print{background:#fff;padding:0}.print-actions{display:none}.print-page{box-shadow:none;margin:0;width:auto;min-height:0;padding:0}.print-table tr{break-inside:avoid}}
