:root{font-family:Arial,sans-serif;color:#203039;background:#f6f8f7;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:#086c55}header{display:flex;justify-content:space-between;gap:12px;padding:18px 24px;border-bottom:1px solid #d6e1dc;background:white}header a{font-weight:800;text-decoration:none}header span{color:#607078;font-size:14px}main{max-width:1120px;margin:auto;padding:28px 24px 64px}h1{font-size:30px;margin:4px 0 10px}h2{font-size:21px;margin:0 0 14px}h3{font-size:17px;margin:0}p{margin:10px 0 16px}.eyebrow{font-size:12px;font-weight:700;color:#08775e;margin:0}.intro{color:#52636b;max-width:760px}section{padding:24px 0;border-bottom:1px solid #d1dfd8}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px}label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;min-width:0}small,.note{font-size:13px;font-weight:400;color:#576a73;line-height:1.6}input,select,button{font:inherit;min-height:44px;border:1px solid #aec3b9;border-radius:4px}input,select{width:100%;padding:10px;background:white;color:#203039}input:focus-visible,select:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #2457a7;outline-offset:2px}button{cursor:pointer;padding:10px 16px;font-weight:700;background:white;color:#17614d}button:hover{background:#eaf5ef}.primary{background:#08795c;color:white;border-color:#08795c}.primary:hover{background:#075e49}.mode{border:0;padding:12px 0 18px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode legend{font-size:15px;font-weight:bold;padding:8px 0}.mode label{flex-direction:row;align-items:center;gap:12px;background:white;border:1px solid #b9cdc3;border-radius:4px;padding:14px}.mode label:has(input:checked){border:2px solid #08795c;padding:13px;background:#eef8f3}.mode small{display:block;margin-top:3px}.mode input,.check input{width:20px;height:20px;min-height:20px;flex:none;accent-color:#08795c}.check{flex-direction:row;align-items:flex-start;margin:12px 0;font-weight:400;gap:10px}.required,.optional{font-size:12px;font-weight:400;color:#606c73}.required{color:#a13625}.actions{display:flex;gap:12px;flex-wrap:wrap;padding:24px 0}details{padding:10px 0}summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:700;color:#17614d}.guide{border-top:1px solid #d6e1dc;margin-bottom:18px}.guide li{margin:7px 0}.employee-row{padding:18px;border:1px solid #c4d6cc;border-radius:6px;background:white;margin:16px 0}.row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.row-head button{font-size:14px;color:#943626}.row-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.row-extra{padding-top:16px;margin-top:16px;border-top:1px solid #d8e4de}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d1dfd8;border:1px solid #d1dfd8;margin:18px 0}.metric{padding:20px;background:white;min-width:0}.metric span{display:block;font-size:14px;color:#55666e}.metric strong{font-size:23px;display:block;margin-top:8px;overflow-wrap:anywhere}.metric.total{background:#e9f5ed}.table-wrap{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:14px;background:white}td,th{padding:12px;border-bottom:1px solid #d6e1dc;text-align:left;vertical-align:top}th{background:#edf3f0}td.num,th.num{text-align:right;white-space:nowrap}.warning,.error{padding:14px;border-left:4px solid #af7820;background:#fff6df}.error{border-color:#b83930;background:#fff0ed}.error a{color:inherit}.result-top{display:flex;gap:12px;align-items:center;justify-content:space-between}.balance{font-size:18px;border-top:2px solid #117557;padding:18px 0;margin-top:20px}.muted{color:#637179}footer{padding:20px;text-align:center;font-size:13px}.embedded header{display:none}[hidden]{display:none!important}
@media(max-width:800px){.row-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics{grid-template-columns:1fr}.metric strong{font-size:24px}}
@media(max-width:560px){main{padding:20px 14px 56px}header{padding:14px;flex-direction:column}.mode,.grid,.row-grid{grid-template-columns:1fr}h1{font-size:27px}h2{font-size:19px}.employee-row{padding:14px}.result-top{align-items:flex-start;flex-direction:column}.actions button{width:100%}td,th{padding:10px}input,select{font-size:16px}.mode label{padding:12px}.mode label:has(input:checked){padding:11px}}
 .excel-actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:44px;padding:10px 16px;border:1px solid #8ea9a2;border-radius:4px;color:#086c5a;font-weight:700;box-sizing:border-box}
 #import-error{white-space:pre-wrap;overflow-wrap:anywhere}
 #import-status{overflow-wrap:anywhere}
 @media(max-width:600px){.excel-actions{display:grid;grid-template-columns:1fr}.excel-actions a,.excel-actions button{width:100%}}
 .table-wrap table{min-width:650px}
 .employee-row details{min-width:0;overflow-wrap:anywhere}.employee-row details select{max-width:100%;min-width:0;text-overflow:ellipsis}.employee-row details label{margin:12px 0}
