
:root{font-family:system-ui,sans-serif;color:#25382f;background:#f3f5f1}*{box-sizing:border-box}body{margin:0}header{background:#183b30;color:white;padding:28px 5vw;display:flex;justify-content:space-between;align-items:center}header small{color:#bed0c5;letter-spacing:2px}h1{font-size:25px;margin:8px 0}main{max-width:1250px;margin:auto;padding:28px}.notice{background:#fff2cc;border:1px solid #e7cf81;padding:14px 18px;border-radius:12px;font-size:14px}.toolbar{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}input,select{font:inherit;padding:12px;border:1px solid #c8d3cc;border-radius:8px;background:white}input{flex:1;min-width:180px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card,.panel{background:white;border:1px solid #dce4dc;border-radius:14px;padding:22px}.card small{color:#63786b}.card strong{display:block;font-size:29px;margin-top:10px}.panel{margin-top:24px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:17px 12px;text-align:left;border-bottom:1px solid #e6ece6;white-space:nowrap}th{color:#708375;font-size:12px}button{font:inherit;border:0;background:#e8efe9;color:#24503e;padding:9px 14px;border-radius:8px;cursor:pointer}button:hover{background:#d6e5d9}.badge{padding:5px 8px;border-radius:6px;background:#e9f1eb;font-size:12px}.warn{background:#fff0cf;color:#855b00}.bad{background:#fce5df;color:#a34328}.bar{height:6px;border-radius:5px;background:#e5ede6;margin-top:7px}.bar i{display:block;height:100%;background:#397f5f;border-radius:5px}.muted{color:#718073;font-size:13px}dialog{border:0;border-radius:16px;padding:28px;width:min(680px,90vw)}dialog::backdrop{background:#14352788}dl{display:grid;grid-template-columns:1fr 1fr;gap:15px}dt{color:#718073}dd{margin:0}footer{padding:24px 0;color:#718073;font-size:12px}@media(max-width:700px){.cards{grid-template-columns:1fr 1fr}header{align-items:flex-start;flex-direction:column}main{padding:18px}dl{grid-template-columns:1fr}}

[hidden]{display:none!important} form{display:grid;gap:12px}label{font-size:14px;display:grid;gap:7px}form button{background:#24503e;color:white;padding:12px}.forms{display:grid;grid-template-columns:1fr 1fr;gap:18px}.forms .panel{margin-top:0}h2{font-size:20px}a{color:#397f5f}@media(max-width:700px){.forms{grid-template-columns:1fr}}