/* =============================================================
   register.css — Stylesheet Halaman Daftar Akun
   ============================================================= */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Nunito',sans-serif;
  min-height:100vh;
  background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 40%,#0ea5e9 100%);
  padding:24px 20px;
  display:flex;flex-direction:column;align-items:center;
}
.card{
  background:#fff;border-radius:20px;overflow:hidden;
  width:100%;max-width:560px;
  box-shadow:0 24px 64px rgba(0,0,0,.25);margin-bottom:16px;
}
.card-header{
  background:linear-gradient(135deg,#1d4ed8,#0ea5e9);
  padding:28px 36px 22px;color:#fff;
  display:flex;align-items:center;gap:16px;
}
.header-icon{
  width:52px;height:52px;background:rgba(255,255,255,.2);
  border-radius:14px;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.header-icon i{font-size:26px;color:#fff;}
.card-header h1{font-size:19px;font-weight:900;margin-bottom:2px}
.card-header p{font-size:12px;opacity:.85}
.card-body{padding:28px 36px}
.section-label{
  font-size:11px;font-weight:900;color:#2563eb;text-transform:uppercase;
  letter-spacing:.8px;margin:20px 0 14px;padding-bottom:6px;
  border-bottom:2px solid #dbeafe;
}
.section-label:first-child{margin-top:0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg{margin-bottom:14px}
label{
  font-size:12px;font-weight:800;color:#1e293b;
  display:block;margin-bottom:5px;
  text-transform:uppercase;letter-spacing:.3px;
}
.required::after{content:' *';color:#ef4444}
input,select,textarea{
  width:100%;padding:12px 14px;border:2px solid #dbeafe;
  border-radius:10px;font-family:'Nunito',sans-serif;font-size:14px;
  transition:border-color .2s;outline:none;color:#1e293b;background:#fff;
}
input:focus,select:focus,textarea:focus{
  border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)
}
textarea{resize:vertical;min-height:80px}
.hint{font-size:11px;color:#94a3b8;margin-top:4px;font-weight:600}
.btn-submit{
  width:100%;padding:14px;
  background:linear-gradient(135deg,#2563eb,#1d4ed8);
  color:#fff;border:none;border-radius:10px;
  font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;
  cursor:pointer;transition:all .2s;margin-top:8px;
  box-shadow:0 4px 16px rgba(37,99,235,.3);
  display:flex;align-items:center;justify-content:center;gap:8px;
}
.btn-submit:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(37,99,235,.4)}
.errors{
  background:#fff1f2;border:1px solid #fecdd3;
  border-radius:10px;padding:14px 16px;margin-bottom:20px;
}
.errors ul{list-style:none;padding:0}
.errors li{font-size:13px;color:#be123c;font-weight:600;padding:2px 0;display:flex;align-items:center;gap:6px;}
.errors li i{font-size:13px;flex-shrink:0;}
.footer-links{text-align:center;margin-top:8px}
.footer-links a{
  color:rgba(255,255,255,.8);font-size:13px;font-weight:600;
  text-decoration:none;display:inline-flex;align-items:center;gap:5px;
}
.footer-links a:hover{color:#fff}

@media(max-width:600px){
  body{padding:12px;align-items:flex-start;padding-top:16px}
  .form-row{grid-template-columns:1fr}
  .card-body{padding:20px 16px}
  .card-header{padding:20px 16px}
  .card-header h1{font-size:17px}
}
@media(max-width:480px){
  .card{border-radius:14px}
}
