*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f5f5f5;color:#222;min-height:100vh}
header{background:#1a3a5c;color:#fff;padding:1rem;display:flex;align-items:center;gap:.75rem}
header h1{font-size:1.1rem;font-weight:700}
header .badge{background:#e8a020;color:#fff;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:700}
.container{max-width:480px;margin:0 auto;padding:1rem}
.card{background:#fff;border-radius:.5rem;box-shadow:0 1px 4px rgba(0,0,0,.1);padding:1.5rem;margin-bottom:1rem}
.card h2{font-size:1rem;font-weight:700;margin-bottom:.5rem;color:#1a3a5c}
.card p{font-size:.9rem;color:#555;margin-bottom:1rem;line-height:1.5}
select,input{width:100%;padding:.6rem .75rem;border:1px solid #ccc;border-radius:.375rem;font-size:1rem;margin-bottom:.75rem}
select:focus,input:focus{outline:2px solid #1a3a5c;border-color:#1a3a5c}
.btn{display:inline-block;padding:.65rem 1.25rem;border:none;border-radius:.375rem;font-size:.95rem;font-weight:600;cursor:pointer;width:100%;background:#1a3a5c;color:#fff}
.btn:disabled{opacity:.5;cursor:not-allowed}
.alert{padding:.75rem 1rem;border-radius:.375rem;margin-bottom:.75rem;font-size:.9rem}
.alert-warn{background:#fff3cd;color:#856404;border:1px solid #ffeeba}
.alert-err{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}
#spinner{display:none;text-align:center;padding:1.5rem;color:#666;font-size:.95rem}
