*{box-sizing:border-box}body{margin:0;background:#f1f5f8;color:#1c2d3b;font:16px system-ui,sans-serif}header{background:#163c58;color:#fff;padding:18px 5%}main{max-width:1160px;margin:25px auto;padding:0 18px}.panel{background:white;border:1px solid #dce5ed;border-radius:12px;padding:22px;margin-bottom:16px}#auth{max-width:520px;margin:45px auto}h1{font-size:1.65rem;margin:0 0 10px}p{color:#526779}nav{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}button{background:#17486b;color:white;border:0;border-radius:8px;padding:12px 16px;font:inherit;cursor:pointer}nav button,.secondary{background:#e2edf4;color:#153b57}label{display:block;margin:13px 0;font-weight:600}input,select,textarea{display:block;width:100%;padding:13px;margin-top:5px;border:1px solid #b6c8d6;border-radius:7px;font:inherit}form button{margin-top:10px}#msg{white-space:pre-wrap;min-height:25px}table{width:100%;border-collapse:collapse}th,td{padding:11px;text-align:left;border-bottom:1px solid #e1e8ee}th{font-size:.85rem;color:#536779}.tablewrap{overflow:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.mobile{max-width:560px}.mobile select,.mobile button{min-height:54px;font-size:1.1rem}.muted{color:#607589;font-size:.9rem}@media(max-width:650px){main{padding:0 12px;margin:12px auto}.panel{padding:16px}nav button{flex:1;min-height:46px}}

/* v9: contextual form feedback */
.form-notice { padding: 12px 14px; border-radius: 8px; margin: 10px 0 16px; font-weight: 600; overflow-wrap: anywhere; }
.form-notice.success { background: #e8f5ed; border: 1px solid #77ad89; color: #174e2a; }
.form-notice.failure { background: #fff0ef; border: 1px solid #d89a95; color: #8b1f1f; }
button:disabled { opacity: .55; cursor: wait; }

/* v10 restricted records */
#content input[readonly] {background:#e8edf2;color:#364254}

/* v10.1 branding */
body{min-height:100vh;display:flex;flex-direction:column}
main{width:100%;flex:1}
.site-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.version-number{font-size:.875rem;font-weight:600;white-space:nowrap;color:#e7f1f8}
.site-footer{text-align:center;padding:18px 12px;color:#536779;font-size:.875rem;border-top:1px solid #dce5ed}
@media(max-width:380px){.site-header{padding:15px 12px}.version-number{font-size:.75rem}}
