:root{font-family:"Segoe UI",Arial,sans-serif;color:#142f36;background:#f0f5f4;font-size:15px}*{box-sizing:border-box}body{margin:0}header{background:#133c41;color:white;padding:16px max(4vw,20px);display:flex;align-items:center;justify-content:space-between}header strong{font-size:21px}header span{margin-left:18px;color:#c7e2dc}main{max-width:1240px;margin:auto;padding:24px 20px 64px}h1{font-size:clamp(28px,4vw,44px);letter-spacing:-.045em;margin:10px 0 24px}section{background:white;border:1px solid #d7e4e0;border-radius:12px;padding:20px 24px;margin:14px 0}h2{font-size:20px;margin:0 0 16px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.heading h2{margin:0}.choices,.batch{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.choices{margin-bottom:16px}.choices label{border:1px solid #adc5bd;border-radius:6px;padding:7px 10px}.choices label:has(:checked){background:#daefe7}label{display:inline-flex;gap:7px;align-items:center;flex-wrap:wrap;margin-right:10px}input,select,button{font:inherit;color:inherit;border-radius:5px;border:1px solid #aabeb8;padding:7px;background:white}input[type=number]{width:98px}input[type=checkbox]{accent-color:#116d56}button,summary{cursor:pointer;font-weight:600}button:hover{background:#e6f2ec}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #258971}table{border-collapse:collapse;width:100%;text-align:left}td,th{padding:7px 8px;border-bottom:1px solid #e1ebe6}th{background:#f3f7f5;font-size:13px}td input[type=text]{width:105px}.scroll{overflow:auto}.batch,details{margin-top:14px}p,.hint{color:#48645d;line-height:1.5}#help{min-height:1.5em;margin-bottom:0}.metrics{display:flex;flex-wrap:wrap;gap:30px;margin-bottom:18px}.metrics div{border-left:3px solid #268469;padding-left:12px}.metrics b{font-size:23px;display:block}.bad{color:#9c3824}.invalid{border-color:#bd472c;background:#fff2ec}canvas{width:100%;max-width:920px;height:auto}summary{color:#165746}#result table{font-variant-numeric:tabular-nums}section details:first-child{margin:0}@media(max-width:650px){main{padding:14px 8px}section{padding:15px 12px}header span{display:none}.batch select{max-width:100%}}@media print{button,.batch,#help,header,canvas{display:none}main{max-width:none;padding:0}.scroll{overflow:visible}section{border:0;padding:4px}.choices,table{font-size:11px}}
