.edubase-app-form {
      --bg: #fff;
      --card: #f7f9fc;
      --primary: #0b6efd;
      --text: #222;
      --muted: #666;
      --border: #d9e1ef;
    }
.edubase-app-form * { box-sizing: border-box; }
.edubase-app-form { font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); margin: 0; }
.edubase-app-form .card { background: var(--card); border: 1px solid var(--border); border-radius: 12px; padding: 1rem; margin-bottom: 1.25rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.edubase-app-form .card h2 { margin-top: 0; font-size: 1.15rem; font-family: 'Poppins', sans-serif; font-weight: 500; }
.edubase-app-form .grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: .75rem; }
.edubase-app-form .col-12 { grid-column: span 12; }
.edubase-app-form .col-6 { grid-column: span 6; }
.edubase-app-form .col-4 { grid-column: span 4; }
.edubase-app-form .col-3 { grid-column: span 3; }
.edubase-app-form label { display: block; font-weight: 600; margin: .4rem 0; font-size: 1rem; }
.edubase-app-form input, .edubase-app-form select, .edubase-app-form textarea { width: 100%; padding: .65rem .7rem; border: 1px solid var(--border); border-radius: 8px; background: #fff; font: inherit; }
.edubase-app-form textarea { min-height: 110px; resize: vertical; font-size: 1rem; font-weight: 400; }
.edubase-app-form .muted { color: var(--muted); font-size: .92rem; }
.edubase-app-form .inline { display: flex; gap: .75rem; align-items: center; }
.edubase-app-form .inline label { font-weight: 500; }
.edubase-app-form .hr { border-top: 1px dashed var(--border); margin: 1rem 0; }
.edubase-app-form .actions { display: flex; gap: .75rem;}
.edubase-app-form button { font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    gap: .5em;
    padding: 17px 28px;
    border-radius: 9999px;
    border: 2px solid transparent;
    text-decoration: none;
    cursor: pointer;
    transition: all .1s ease;
    position: relative;
    overflow: hidden;
    color: #4D4A5D;
    background: #D9F2F8;
     }
.edubase-app-form button.secondary { background: transparent; color: var(--primary); }
.edubase-app-form .req::after { content: ' *'; color: #d00; }
.edubase-app-form @media (max-width: 720px) {
      .col-6, .col-4, .col-3 { grid-column: span 12; }
.edubase-app-form }
    /* small helper for bank account fields */
    .bank-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr .8fr; gap: .5rem; }
.edubase-app-form .badge { display:inline-block; background:#eef4ff; border:1px solid var(--border); color:#3b5ccc; padding:.2rem .45rem; border-radius:6px; font-size:.8rem; }


/* AJAX status + validation */
.edubase-app-form .edb-app-alert{
  display:none;
  margin: 12px 0 16px;
  padding: 10px 12px;
  font-size: 16px;
  border-radius: 8px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(0,0,0,0.03);
}
.edubase-app-form.edb-app-alert.is-success{ display:block; border-color: rgba(25,135,84,0.35); background: rgba(25,135,84,0.08); }
.edubase-app-form .edb-app-alert.is-error{ display:block; border-color: rgba(220,53,69,0.35); background: rgba(220,53,69,0.08); }
.edubase-app-form .edb-error{
  border-color: rgba(220,53,69,0.9) !important;
  outline: 2px solid rgba(220,53,69,0.25);
}
.edubase-app-form .edb-field-error{
  margin-top: 6px;
  font-size: 16px;
  color: rgba(220,53,69,0.95);
}
