:root { --bg:#F8FAFC; --fg:#111827; --brand:#1E40AF; --muted:#6B7280; }
*{box-sizing:border-box} body{margin:0;font-family:system-ui,Segoe UI,Roboto,Poppins,Arial,sans-serif;background:var(--bg);color:var(--fg)}
.container{max-width:1100px;margin:0 auto;padding:1rem}
.navbar{background:#fff;border-bottom:1px solid #e5e7eb}
.navbar .brand{font-weight:700;color:var(--brand);text-decoration:none;margin-right:1rem}
nav a{margin-right:1rem;text-decoration:none;color:var(--fg)}
.hero{padding:3rem 0}
.btn{display:inline-block;padding:.6rem 1rem;border-radius:.6rem;background:var(--brand);color:#fff;text-decoration:none;border:0;cursor:pointer}
.btn-danger{background:#b91c1c}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:.8rem;padding:1rem}
.table{width:100%;border-collapse:collapse;background:#fff;border-radius:.6rem;overflow:hidden}
.table th,.table td{padding:.6rem;border-bottom:1px solid #e5e7eb;text-align:left}
label{display:block;margin:.5rem 0}
input,select,textarea{width:100%;padding:.5rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff}
.alert{padding:.6rem;border-radius:.5rem;margin:.5rem 0;background:#e5f3ff}
.alert-danger{background:#fee2e2;color:#991b1b}
.footer{margin-top:2rem;padding:1rem 0;color:var(--muted)}
img{max-width:100%;height:auto}