*{box-sizing:border-box} [hidden]{display:none!important}
:root{font-family:Inter,system-ui,sans-serif;color:#192a30;background:#f2f6f5;line-height:1.5}
body{margin:0} header{background:#163b39;color:white;padding:16px clamp(16px,4vw,60px);display:flex;justify-content:space-between;align-items:center}
header strong{letter-spacing:.1em;margin-right:16px}header span{color:#d1e7e3}main{max-width:1500px;margin:auto;padding:26px clamp(12px,4vw,48px)}
h1,h2{line-height:1.2;margin:0 0 16px}h1{font-size:clamp(24px,4vw,36px)}h2{font-size:20px}
.panel{background:white;padding:18px;border:1px solid #d8e4e2;border-radius:14px}.auth{max-width:440px;margin:35px auto}
label{display:grid;gap:4px;font-weight:600;font-size:13px}.auth label{margin-bottom:14px}
input,select,button{font:inherit;color:inherit;padding:8px 10px;border:1px solid #a7bfba;border-radius:8px;background:white;min-width:0}
input[type=checkbox]{accent-color:#17645c}button,.file{cursor:pointer;font-weight:650}button:disabled{opacity:.45;cursor:default}
:focus-visible{outline:3px solid #43a594;outline-offset:2px}.primary,nav button[aria-pressed=true]{background:#17645c;color:white;border-color:#17645c}.file{display:inline-flex;align-items:center;padding:9px 13px;border-radius:8px;position:relative}.file input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.file:focus-within{outline:3px solid #43a594}
.toolbar,.title,nav{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:14px}.title{align-items:center;justify-content:space-between}.title h1{margin:0}
#cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px;margin-bottom:18px}
.card{background:white;border:1px solid #d8e4e2;border-radius:12px;padding:12px 15px}.card strong{font-size:24px;display:block}.card span{font-size:13px;color:#405a59}
.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{text-align:left;padding:8px;border-bottom:1px solid #e1eae8}thead,tfoot{background:#eaf3f1}td button{padding:4px 8px}tr:hover td{background:#f4faf8}.pager{margin:12px 0 0;align-items:center}
#message{padding:10px 14px;border-radius:8px;background:#dff0eb;white-space:pre-wrap}.error{background:#ffe8e3!important;color:#842f23}dialog{border:1px solid #a7bfba;border-radius:14px;width:min(600px,95vw);max-height:90vh}dialog::backdrop{background:#0d252b99}#editFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}
