/* SLS Admissions — enrollment form (scoped, theme-neutral) */
.sls-adm-form{--sls-teal:#0f766e;--sls-teal-d:#0b5c56;--sls-ink:#1f2937;--sls-muted:#6b7280;--sls-line:#e5e7eb;--sls-bg:#ffffff;
  max-width:680px;margin:0 auto;color:var(--sls-ink);
  font-family:inherit;line-height:1.55;box-sizing:border-box}
.sls-adm-form *,.sls-adm-form *::before,.sls-adm-form *::after{box-sizing:border-box}

/* org / partner-school banner */
.sls-adm-org{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:10px 14px;
  background:color-mix(in srgb,var(--sls-teal) 8%,#fff);border:1px solid color-mix(in srgb,var(--sls-teal) 25%,#fff);
  border-radius:10px;font-size:.92rem;color:var(--sls-ink)}
.sls-adm-org-logo{height:28px;width:auto;max-width:120px;object-fit:contain}
.sls-adm-org strong{color:var(--sls-teal)}

/* progress rail */
.sls-adm-progress{display:flex;justify-content:space-between;gap:6px;margin:0 0 26px;position:relative}
.sls-adm-progress::before{content:"";position:absolute;top:15px;left:6%;right:6%;height:2px;background:var(--sls-line);z-index:0}
.sls-adm-dot{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;z-index:1}
.sls-adm-dot-n{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#fff;border:2px solid var(--sls-line);color:var(--sls-muted);font-weight:600;font-size:14px;transition:.2s}
.sls-adm-dot-l{font-size:11px;color:var(--sls-muted);text-transform:uppercase;letter-spacing:.04em;text-align:center}
.sls-adm-dot.is-active .sls-adm-dot-n{border-color:var(--sls-teal);color:var(--sls-teal)}
.sls-adm-dot.is-done .sls-adm-dot-n{background:var(--sls-teal);border-color:var(--sls-teal);color:#fff}
.sls-adm-dot.is-active .sls-adm-dot-l{color:var(--sls-ink)}

.sls-adm-title{font-size:1.5rem;margin:0 0 18px;line-height:1.2}

/* steps */
.sls-adm-step{display:none;border:0;padding:0;margin:0;min-inline-size:0}
.sls-adm-step.is-active{display:block;animation:sls-fade .25s ease}
@keyframes sls-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.sls-adm-step legend{font-size:1.05rem;font-weight:600;margin:0 0 14px;padding:0;color:var(--sls-ink)}
.sls-adm-hint{font-weight:400;color:var(--sls-muted);font-size:.82em}

.sls-adm-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sls-adm-form label{display:flex;flex-direction:column;gap:5px;font-size:.86rem;color:var(--sls-muted);font-weight:500}
.sls-adm-full{grid-column:1 / -1;margin-top:14px}
.sls-adm-req::after{content:" *";color:#dc2626}
.sls-adm-form input,.sls-adm-form select,.sls-adm-form textarea{
  font:inherit;font-size:.95rem;color:var(--sls-ink);background:#fff;
  border:1px solid var(--sls-line);border-radius:9px;padding:10px 12px;width:100%;transition:border-color .15s,box-shadow .15s}
.sls-adm-form input:focus,.sls-adm-form select:focus,.sls-adm-form textarea:focus{
  outline:none;border-color:var(--sls-teal);box-shadow:0 0 0 3px rgba(15,118,110,.14)}
.sls-adm-form input.sls-invalid,.sls-adm-form select.sls-invalid{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)}
.sls-adm-form textarea{resize:vertical}

/* review */
.sls-adm-review{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:.9rem;
  background:#f9fafb;border:1px solid var(--sls-line);border-radius:11px;padding:16px 18px}
.sls-adm-review dt{color:var(--sls-muted);margin:0}
.sls-adm-review dd{margin:0;font-weight:600;color:var(--sls-ink);word-break:break-word}
.sls-adm-legal{font-size:.8rem;color:var(--sls-muted);margin:14px 2px 0}

/* nav */
.sls-adm-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px}
.sls-adm-btn{font:inherit;font-weight:600;font-size:.95rem;border-radius:10px;padding:11px 22px;cursor:pointer;
  border:1px solid transparent;transition:.15s}
.sls-adm-next,.sls-adm-submit{background:var(--sls-teal);color:#fff;margin-left:auto}
.sls-adm-next:hover,.sls-adm-submit:hover{background:var(--sls-teal-d)}
.sls-adm-back{background:#fff;color:var(--sls-ink);border-color:var(--sls-line)}
.sls-adm-back:hover{border-color:var(--sls-muted)}
.sls-adm-btn:disabled{opacity:.55;cursor:default}

.sls-adm-error{margin-top:14px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;
  border-radius:9px;padding:10px 14px;font-size:.88rem}

/* success */
.sls-adm-success{text-align:center;padding:26px 10px}
.sls-adm-check{width:56px;height:56px;border-radius:50%;background:#ecfdf5;color:#059669;font-size:28px;
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px;border:2px solid #a7f3d0}
.sls-adm-success h2{margin:0 0 8px}
.sls-adm-success-msg{color:var(--sls-muted);margin:0 0 12px}
.sls-adm-ref code{background:#f0fdfa;border:1px solid #99f6e4;border-radius:6px;padding:3px 8px;font-size:.85rem}

@media(max-width:560px){
  .sls-adm-grid{grid-template-columns:1fr}
  .sls-adm-dot-l{display:none}
  .sls-adm-title{font-size:1.3rem}
}
