*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;color:#0f172a;background:#f8fafc}a{color:#0369a1;text-decoration:none}header{display:flex;gap:1rem;align-items:center;padding:1rem 2rem;background:#0c4a6e}header a,header button.link,header span{color:#fff}header .spacer{flex:1 1}main{max-width:1100px;margin:0 auto;padding:1.5rem 2rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.card img{width:100%;height:130px;object-fit:cover;border-radius:4px}.muted{color:#64748b;font-size:.9rem}.error{color:#b91c1c}button{cursor:pointer;padding:.4rem .9rem;border:0;border-radius:6px;background:#0284c7;color:#fff}button:disabled{background:#94a3b8;cursor:not-allowed}button.link{background:none;padding:0}.form{display:grid;grid-gap:.75rem;gap:.75rem;max-width:480px}.form label{display:grid;grid-gap:.25rem;gap:.25rem}input,textarea{padding:.45rem;border:1px solid #cbd5e1;border-radius:6px;font:inherit}table{width:100%;border-collapse:collapse;background:#fff}td,th{text-align:left;padding:.5rem;border-bottom:1px solid #e2e8f0}.detail{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem}.detail img{width:100%;border-radius:8px}