body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,sans-serif;margin:0;background:#f7f7fb;color:#222}
.container{max-width:1100px;margin:2rem auto;padding:0 1rem}
nav.nav{display:flex;gap:1rem;padding:1rem;background:#111;color:#fff;align-items:center;flex-wrap:wrap}
nav.nav a, nav.nav button{color:#fff;text-decoration:none;background:transparent;border:0;cursor:pointer}
label{display:block;margin:.5rem 0}
input,select,textarea,button{padding:.5rem .6rem;font:inherit}
button{background:#0b5;color:#fff;border-radius:.3rem}
.alert{padding:.6rem .8rem;border-radius:.3rem;margin:1rem 0}
.alert.error{background:#ffe0e0;color:#900}
.alert.success{background:#e0ffe9;color:#065}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:.4rem;overflow:hidden}
th,td{border-bottom:1px solid #eee;padding:.6rem;text-align:left}
tr:hover{background:#fafafa}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;list-style:none;padding:0}
.card{display:block;background:#fff;border:1px solid #eee;border-radius:.6rem;padding:1rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:800px){.grid2{grid-template-columns:1fr}}
