*{box-sizing:border-box;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,'Helvetica Neue',Arial}
body{background:#f6f8fb;color:#111;margin:0;padding:20px}
.container{max-width:900px;margin:0 auto;background:#fff;padding:24px;border-radius:8px;box-shadow:0 6px 24px rgba(17,24,39,.06)}

/* Wider layout for admin panel */
.admin .container{max-width:1200px}
/* Ensure table can scroll on small screens */
.admin table{width:100%;overflow:auto;display:block}
h1{margin-top:0}
form label{display:block;margin:10px 0}
input[type=text],input[type=email],input[type=date]{width:100%;padding:8px;margin-top:6px;border:1px solid #dfe3ea;border-radius:6px}
.actions{margin-top:14px;display:flex;gap:12px;align-items:center}
button{background:#0b61ff;color:#fff;padding:8px 12px;border:none;border-radius:6px;cursor:pointer}
.btn-link{display:inline-block;padding:8px 12px;background:#eef4ff;color:#0b61ff;border-radius:6px;text-decoration:none}
.top-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
table{width:100%;border-collapse:collapse;margin-top:12px}
th,td{padding:8px;border-bottom:1px solid #eef0f5;text-align:left}
.actions .btn{padding:6px 8px}
.certificate-wrap{text-align:center}
#certificateArea{display:flex;justify-content:center;margin:16px 0}
#certCanvas{border:4px solid #2b6cb0;border-radius:6px}
#openInNew{align-self:center}
@media (max-width:600px){.container{padding:16px}}