*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Georgia,"Times New Roman",serif;background:#faf9f6;color:#111827}
.site-header{background:#17233f;color:#fff;text-align:center;border-bottom:2px solid #c8a64b;padding:7px 20px 13px}
.brand{font-size:22px;font-weight:700}
.tagline{font-family:Arial,Helvetica,sans-serif;font-size:10px;letter-spacing:.25px;margin-top:3px;color:#f3f3f3}
.page{min-height:calc(100vh - 95px);padding:26px 18px}
.query-card,.login-card{width:min(450px,100%);margin:0 auto;background:#fff;border:1px solid #e4dfd5;border-radius:8px;padding:20px 19px 20px;box-shadow:0 1px 3px rgba(0,0,0,.03)}
.query-card h1,.login-card h1{font-size:17px;font-weight:500;margin:0 0 4px}
.intro{font-family:Arial,Helvetica,sans-serif;color:#697386;font-size:10px;line-height:1.45;margin:0 0 16px}
form{font-family:Arial,Helvetica,sans-serif}
label{display:block;font-size:10px;font-weight:600;color:#20242d;margin:11px 0 5px}
input,textarea{width:100%;font:12px Arial,Helvetica,sans-serif;color:#283142;background:#fff;border:1px solid #ddd6ca;border-radius:6px;padding:9px 10px;outline:none}
input:focus,textarea:focus{border-color:#9a8a67;box-shadow:0 0 0 2px rgba(154,138,103,.10)}
textarea{resize:vertical;min-height:47px}
input::placeholder,textarea::placeholder{color:#8a8f99}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:11px}
button{margin-top:13px;background:#17233f;color:#fff;border:0;border-radius:5px;padding:9px 16px;font:bold 11px Arial,Helvetica,sans-serif;cursor:pointer}
button:hover{background:#0f1930}
.alert{font:11px Arial,Helvetica,sans-serif;padding:10px;border-radius:5px;margin:0 0 12px}
.success{background:#edf8ef;border:1px solid #b8dfbd;color:#245c2b}
.error{background:#fff0f0;border:1px solid #e6b8b8;color:#8a2424}
.site-footer{text-align:center;font:10px Arial,Helvetica,sans-serif;color:#777;padding:15px}
.login-card{margin-top:55px}
.back-link{font:11px Arial,Helvetica,sans-serif;margin:15px 0 0}
.back-link a{color:#17233f;text-decoration:none}
.admin-header{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:10px 24px}
.logout{font:12px Arial,Helvetica,sans-serif;color:#fff;border:1px solid rgba(255,255,255,.5);padding:7px 11px;border-radius:5px;text-decoration:none}
.admin-page{padding:24px;max-width:1500px;margin:auto}
.admin-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}
.admin-top h1{font-size:23px;margin:0 0 5px}
.admin-top .intro{margin:0}
.outline-btn{font:12px Arial,Helvetica,sans-serif;text-decoration:none;color:#17233f;border:1px solid #c8c1b5;padding:8px 12px;border-radius:5px;background:#fff}
.empty-state{background:#fff;border:1px solid #e4dfd5;border-radius:7px;padding:25px;font:13px Arial,Helvetica,sans-serif;color:#697386}
.table-wrap{overflow:auto;background:#fff;border:1px solid #ded8ce;border-radius:7px}
table{width:100%;border-collapse:collapse;min-width:1050px;font:11px Arial,Helvetica,sans-serif}
th,td{padding:10px 9px;border-bottom:1px solid #ece7df;border-right:1px solid #f0ece5;vertical-align:top;text-align:left}
th{background:#17233f;color:#fff;position:sticky;top:0;font-weight:600}
tr:nth-child(even) td{background:#fcfbf9}
@media(max-width:650px){.two-col{grid-template-columns:1fr}.query-card,.login-card{padding:17px}.admin-header{align-items:flex-start}.admin-page{padding:14px}.admin-top{align-items:flex-start;flex-direction:column}}
