@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172b2b;--muted:#768482;--green:#165d4b;--line:#e4e9e5;--bg:#f5f7f4;--orange:#d88b32}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}aside{width:238px;background:#fff;position:fixed;inset:0 auto 0 0;padding:38px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font:800 25px Manrope,sans-serif;letter-spacing:2px;padding:0 13px}.brand small{font:600 9px 'DM Sans',sans-serif;letter-spacing:3.6px;display:block;margin-top:2px}.brand-icon{color:#fff;background:var(--green);width:39px;height:43px;display:grid;place-items:center;clip-path:polygon(0 0,100% 0,100% 76%,50% 100%,0 76%);font-size:26px}.workspace{font-size:10px;letter-spacing:1.8px;color:#91a09c;margin:49px 13px 16px}nav a{display:flex;align-items:center;gap:13px;margin:5px 0;padding:13px 15px;text-decoration:none;color:#657572;border-radius:7px;font-weight:500}nav a.active{background:#eaf2ed;color:var(--green);font-weight:700}svg{width:19px;height:19px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sidebar-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:10px;align-items:center;margin-top:auto;font-size:12px}.sidebar-bottom small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.avatar{background:#eaf0e9;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;font-weight:bold;color:var(--green)}.shell{margin-left:238px}header{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 42px;font-size:12px}.tiny{font-size:10px;letter-spacing:1.3px;color:var(--muted)}.header-divider{padding:0 18px;color:#c3cbc7}.connection{color:#71817b;font-size:11px}.connection i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#64a07c;margin-right:7px}main{padding:35px 42px;min-height:calc(100vh - 130px);max-width:1700px;margin:auto}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--green);font-weight:bold;margin-bottom:9px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}h1{font:700 30px Manrope,sans-serif;letter-spacing:-1px;margin:0 0 9px}p{color:var(--muted);line-height:1.65;margin:0}button,.button{border:1px solid var(--line);border-radius:6px;background:#fff;padding:10px 15px;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600}button:hover,.button:hover{background:#edf2ee}.primary{background:var(--green);border-color:var(--green);color:white}.primary:hover{background:#0e493a}.ghost{border:0;background:transparent;padding:5px;color:var(--green)}.actions{display:flex;gap:9px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px}.stat,.card{border:1px solid var(--line);background:white;border-radius:9px}.stat{padding:20px 22px;position:relative}.stat-icon{position:absolute;right:18px;top:18px;background:#edf3ee;color:var(--green);padding:8px;border-radius:7px}.stat-label{color:#78847f;font-size:11px;margin-bottom:16px}.stat-value{font:700 31px Manrope,sans-serif;line-height:1.1}.stat-note{color:var(--muted);font-size:10px;margin-top:11px}.stat.warn .stat-icon{background:#fff2e2;color:#b77c2b}.stat.warn .stat-note{color:#bd7d31}.grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px}.card-head{display:flex;justify-content:space-between;align-items:center;padding:21px 23px;border-bottom:1px solid var(--line)}h2{font:700 15px Manrope,sans-serif;margin:0}.card-head p{font-size:11px;margin-top:5px}.count{background:#edf1ed;font-size:10px;padding:3px 7px;border-radius:4px;margin-left:7px;color:#65776f}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:10px;font-weight:500;color:#819087;background:#fafbf9;padding:13px 20px;border-bottom:1px solid var(--line)}td{font-size:12px;padding:18px 20px;border-bottom:1px solid #edf0ed}tbody tr:last-child td{border:0}td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}td strong{font-weight:600}.badge{border-radius:4px;padding:5px 8px;font-size:10px;background:#edf3ed;color:#4b795d;display:inline-block}.badge.orange{color:#b77827;background:#fff3df}.badge.red{color:#bd5b4a;background:#fbece7}.badge.gray{color:#7b8680;background:#eff1ef}.toolbar{display:flex;justify-content:space-between;gap:14px;margin:0 0 18px}.search{width:310px;position:relative}.search input{width:100%;background:white;padding-left:36px}.search svg{position:absolute;left:11px;top:11px;color:#9aa59e;width:16px}input,select,textarea{padding:11px 12px;border:1px solid #dce3dc;border-radius:5px;background:#fff;color:var(--ink);max-width:100%}.toolbar select{min-width:160px}.quick{padding:8px 21px}.quick button{display:flex;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:17px 0;text-align:left;font-weight:500}.quick button:last-child{border:0}.quick svg{color:var(--green);margin-right:4px}.quick .arrow{margin-left:auto;color:#9aaa9d}.notice{padding:23px;margin-top:20px;background:#eaf1e9;border:1px solid #dde7dc;border-radius:9px}.notice h3{font:700 14px Manrope;margin:13px 0 8px}.notice p{font-size:11px;color:#6d7f70}.notice svg{color:var(--green)}.activity{padding:7px 22px 15px}.activity-item{display:flex;gap:13px;padding:15px 0;font-size:12px}.activity-item small{color:var(--muted);display:block;font-size:10px;margin-top:5px}.dot{width:8px;height:8px;background:#7fa68a;border:4px solid #edf4ed;box-sizing:content-box;border-radius:50%;flex-shrink:0;margin-top:2px}.activity-card{margin-top:24px}.empty{text-align:center;padding:45px 24px;color:#829087;font-size:12px}.empty svg{display:block;width:29px;height:29px;margin:0 auto 13px;color:#98ad9c}.intro-strip{display:flex;justify-content:space-between;gap:16px;padding:17px 22px;border:1px dashed #cddccc;border-radius:7px;margin-bottom:23px;background:#f0f5ee;font-size:12px;align-items:center}.intro-strip p{font-size:11px;margin-top:3px}footer{padding:15px 42px;font-size:10px;color:#93a094;display:flex;justify-content:space-between}dialog{border:1px solid var(--line);border-radius:12px;padding:0;width:670px;max-width:94vw;max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #142d2a26}dialog::backdrop{background:#102a2466;backdrop-filter:blur(3px)}.modal-head{padding:23px 27px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);align-items:center}.modal-body{padding:23px 27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#63756b}.full{grid-column:1/-1}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px 27px;border-top:1px solid var(--line)}.check-row{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.check-row input{grid-column:1/-1;font-size:11px}.check-title{font-size:11px;font-weight:bold;letter-spacing:.5px;margin:23px 0 5px}.report{padding:30px}.report h2{font-size:23px;margin:10px 0 20px}.report-meta{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:12px;margin-bottom:25px}.report-meta span{color:var(--muted);display:block;font-size:10px;margin-bottom:5px}.report table{white-space:normal}.report th,.report td{padding:12px;font-size:11px}.report-end{margin-top:25px;font-size:11px;color:#69796f}.detail-bar{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:20px}.link{color:var(--green);cursor:pointer;text-decoration:none}.error{color:#b85041;margin-top:15px;font-size:12px}#toast{position:fixed;bottom:25px;right:25px;background:#163e32;color:#fff;padding:14px 22px;border-radius:7px;display:none;z-index:10;font-size:12px}.mobile-only{display:none}@media(min-width:1500px){main{padding-top:45px}}@media(max-width:1150px){.grid{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:17px}.stat-icon{display:none}main{padding:28px 25px}header{padding:0 25px}}@media(max-width:760px){aside{width:70px;padding:25px 10px}.brand{padding:0}.brand>span:last-child,.workspace,.sidebar-bottom,nav a span{display:none}nav{margin-top:35px}nav a{padding:14px;justify-content:center}.shell{margin-left:70px}header{padding:0 18px;height:62px}.tiny,.header-divider,.connection{display:none}main{padding:25px 16px}.page-head{align-items:flex-start;flex-direction:column}h1{font-size:26px}.stats{grid-template-columns:1fr 1fr}.stat-value{font-size:28px}.stat-label{font-size:10px}.toolbar{flex-wrap:wrap}.search{width:100%}.form-grid{grid-template-columns:1fr}.full{grid-column:1}.intro-strip{align-items:flex-start;flex-direction:column}footer{padding:15px;display:block}footer span{display:block;margin-top:7px}.report{padding:18px}.report-meta{grid-template-columns:1fr}.check-row{grid-template-columns:1fr 120px}}@media print{aside,header,footer,.page-head,.toolbar,.no-print,#toast,dialog{display:none!important}.shell{margin:0}body,main{background:#fff;padding:0;margin:0;max-width:none}.card{border:0}.report{padding:0}.report table{white-space:normal}tr{break-inside:avoid}th{background:#eee!important;color:#333}.report-end{break-inside:avoid}@page{size:A4;margin:16mm}}
.report-controls{justify-content:flex-start;gap:18px}.report-controls label{display:flex;flex-direction:column;gap:7px;color:#63756b;font-size:11px;min-width:210px}.report-summary{font-size:12px;margin:0 0 22px}.report-text{white-space:pre-line;overflow-wrap:anywhere;min-width:170px}.object-report td{vertical-align:top}.object-report td small{white-space:normal}.object-report table{table-layout:fixed}.object-report th:nth-child(1){width:17%}.object-report th:nth-child(2){width:16%}.object-report th:nth-child(3){width:20%}.object-report th:nth-child(4){width:25%}.object-report th:nth-child(5){width:22%}.object-report .badge{white-space:normal}.object-report .report-end p{margin-top:8px}@media(max-width:1000px){.object-report table{table-layout:auto;min-width:760px}}@media print{.object-report table{table-layout:fixed;min-width:0}.object-report .table-wrap{overflow:visible}.object-report .report-text{min-width:0}.object-report td,.object-report th{font-size:9px;padding:8px 5px;overflow-wrap:anywhere}.object-report .badge{padding:0;background:none;color:#222}.report-summary{font-size:10px}}
.inspection-progress{padding:15px 18px;background:#edf4ee;border-radius:7px;margin-bottom:22px;font-size:12px}.inspection-progress p{font-size:11px;margin-top:5px}.inspection-progress progress{width:100%;height:7px;margin-top:12px;accent-color:#165d4b}input[readonly]{background:#f7f9f6;color:#607367}
.protocol-door{margin-top:35px;padding-top:30px;border-top:1px solid #e4e9e5}.combined-protocol table{table-layout:fixed}.combined-protocol th:nth-child(1){width:36%}.combined-protocol th:nth-child(2){width:24%}.combined-protocol th:nth-child(3){width:40%}.combined-protocol td{vertical-align:top;overflow-wrap:anywhere}.combined-protocol .report-text{min-width:0}.combined-protocol .report-end{white-space:normal}@media print{.protocol-door{break-before:page;margin:0;padding:0;border:0}.protocol-door h2{break-after:avoid}.combined-protocol thead{display:table-header-group}.combined-protocol .table-wrap{overflow:visible}.combined-protocol td,.combined-protocol th{font-size:10px;padding:10px 6px}.combined-protocol .report-meta{font-size:11px}.combined-protocol .protocol-cover{break-after:page}}
.stat-link{display:block;color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}.stat-link:hover{border-color:#d0ac76;box-shadow:0 3px 14px #172b2b0d}.stat-link:focus-visible{outline:2px solid #165d4b;outline-offset:3px}
.delete-action{color:#b25443}.delete-action:hover{background:#fbece7}.deletion-recovery:not(:empty){background:#f3f6ef;padding:16px;margin:20px 0;border-radius:7px}.deletion-recovery button{margin-top:12px}
.equipment-heading{border-top:1px solid #e4e9e5;padding-top:21px;margin-top:10px}.equipment-heading p{font-size:11px;margin-top:7px}.equipment-part,.equipment-side{background:#f6f8f4;padding:15px;border-radius:6px;margin-bottom:12px}.equipment-part h3{font-size:12px;margin:0 0 12px}.equipment-fillings{border:1px solid #dce3dc;border-radius:5px;padding:12px;display:flex;gap:12px;flex-wrap:wrap}.equipment-fillings legend{font-size:11px;color:#63756b}.equipment-fillings label{display:flex;flex-direction:row;align-items:center;gap:4px}.report-meta>div{overflow-wrap:anywhere;white-space:pre-line}
.protocol-equipment{border-top:1px solid #e4e9e5;padding-top:18px;margin:20px 0 25px}.protocol-equipment h3{font:700 15px Manrope,sans-serif;margin:0 0 8px}.equipment-source{font-size:10px;margin-bottom:16px}.protocol-equipment .report-meta{margin-bottom:0}@media print{.protocol-equipment h3{break-after:avoid}.protocol-equipment .report-meta>div{break-inside:avoid}.protocol-equipment{padding-top:12px;margin:15px 0}.equipment-source{font-size:9px}}
.object-report .defect-equipment-row td{padding:0 20px 20px;white-space:normal}.defect-equipment-row .protocol-equipment{margin:0;padding:14px;background:#f6f8f4;border:0;border-radius:5px}.defect-equipment-row .report-meta{grid-template-columns:repeat(3,minmax(0,1fr));font-size:11px;gap:12px}@media(max-width:760px){.defect-equipment-row .report-meta{grid-template-columns:1fr 1fr}}@media print{.object-report .defect-equipment-row{break-inside:auto}.object-report .defect-equipment-row td{padding:4px 5px 14px}.defect-equipment-row .protocol-equipment{background:none;padding:8px;border:1px solid #ddd}.defect-equipment-row .report-meta{grid-template-columns:repeat(3,minmax(0,1fr));font-size:9px;gap:9px}.defect-equipment-row h3{font-size:11px}}
.rating-choices{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1;min-width:0}.rating-choices legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rating-option{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;padding:10px 12px;border:1px solid #dce3dc;border-radius:6px;cursor:pointer;color:#52665d;font-size:12px;background:#fff}.rating-option input[type=radio]{appearance:none;-webkit-appearance:none;width:19px;height:19px;min-width:19px;padding:0!important;margin:0;border:1.5px solid #9bad9f;border-radius:3px;display:grid;place-items:center;cursor:pointer}.rating-option input[type=radio]:checked{background:#165d4b;border-color:#165d4b}.rating-option input[type=radio]:checked:after{content:"✓";color:white;font-size:14px;font-weight:bold}.rating-option:has(input:checked){background:#edf5ef;border-color:#5f9372;color:#165d4b}.rating-defect:has(input:checked){background:#fff1eb;border-color:#c97e63;color:#a74732}.rating-defect input[type=radio]:checked{background:#b3533b;border-color:#b3533b}.check-row>.rating-choices{margin-top:3px}.rating-option input:focus-visible{outline:2px solid #165d4b;outline-offset:3px}@media(max-width:500px){.rating-option{padding:10px;font-size:11px}.rating-choices{gap:6px}}
