*{box-sizing:border-box}body{margin:0;font-family:system-ui,Arial,sans-serif;background:#f3f5f9;color:#1f2937}
.nav{display:flex;align-items:center;gap:20px;background:#1e3a5f;color:#fff;padding:0 20px;flex-wrap:wrap}
.brand{font-weight:700;padding:14px 0}.links{display:flex;gap:4px;flex:1}
.nav a,.nav button{color:#fff;text-decoration:none;background:none;border:0;font:inherit;padding:16px 14px;cursor:pointer;display:block}
.nav a:hover,.nav button:hover,.active{background:#2d5286}.me{font-size:13px}.me a{display:inline;padding:0;text-decoration:underline}
.dd{position:relative}.dc{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:210px;box-shadow:0 6px 18px #0003;z-index:9}
.dd.open .dc{display:block}.dc a{color:#1f2937}.dc a:hover{background:#e8eef7}
main{max-width:1150px;margin:24px auto;padding:0 16px}h1{font-size:22px;margin:0 0 16px}h2{font-size:17px;margin:0 0 12px}
.card{background:#fff;border-radius:10px;padding:18px;margin-bottom:18px;box-shadow:0 1px 3px #0001;overflow-x:auto}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:18px}
.stat{background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 3px #0001}.stat b{display:block;font-size:28px;color:#1e3a5f}.stat span{font-size:13px;color:#6b7280}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:9px 10px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}th{background:#f3f5f9}
form.f{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}form.f .w{grid-column:1/-1}
label{font-size:12px;color:#6b7280;display:block;margin-bottom:3px}input,select,textarea{width:100%;padding:8px;border:1px solid #cbd5e1;border-radius:6px;font:inherit}
.btn{background:#1e3a5f;color:#fff;border:0;padding:9px 16px;border-radius:6px;cursor:pointer;font:inherit}.btn.r{background:#b91c1c}.btn.s{padding:4px 9px;font-size:12px}
.b{padding:2px 9px;border-radius:99px;font-size:12px;color:#fff}.red{background:#dc2626}.amber{background:#d97706}.green{background:#16a34a}.gray{background:#6b7280}
.msg{background:#dcfce7;padding:10px;border-radius:6px;margin-bottom:14px}.err{background:#fee2e2;padding:10px;border-radius:6px;margin-bottom:14px}
.login{max-width:340px;margin:12vh auto;background:#fff;padding:28px;border-radius:12px;box-shadow:0 4px 20px #0002}.login h1{text-align:center}.login input{margin-bottom:12px}
