/* Permohonan Waris V3 — authentication gate + privacy-first four-step workflow */
.guardian-entry-shell{width:min(calc(100% - 2.5rem),760px);margin:0 auto;padding:clamp(4rem,9vw,7rem) 0}
.guardian-entry-card{position:relative;overflow:hidden;padding:clamp(2rem,5vw,3.25rem);text-align:center;background:#fff;border:1px solid #dce5ef;border-radius:28px;box-shadow:0 24px 65px rgba(20,54,91,.11)}
.guardian-entry-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#1479df,#123b66 62%,#d99b2b)}
.guardian-entry-eyebrow{margin:0 0 .7rem;color:#1479df;font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.guardian-entry-card h1{max-width:560px;margin:0 auto;color:#092541;font-size:clamp(2rem,5vw,3.15rem);line-height:1.06;letter-spacing:-.04em}
.guardian-entry-copy{max-width:540px;margin:1rem auto 0;color:#627084;font-size:.95rem;line-height:1.75}
.guardian-entry-provider{display:grid;justify-items:center;gap:.8rem;margin:2rem auto 0;padding:1.25rem;max-width:430px;background:#f8fbff;border:1px solid #cfe0f2;border-radius:16px}
.guardian-entry-provider #guardian-auth-title{color:#092541;font-size:.9rem}
.guardian-entry-provider #guardian-auth-note{color:#627084;font-size:.76rem}
.guardian-entry-provider #google-signin-container{display:flex;justify-content:center;align-items:center;min-height:44px;max-width:320px;overflow:hidden}
.guardian-entry-provider #google-signin-container[hidden]{display:none!important}
.guardian-entry-provider #google-guardian-login{min-width:230px}
.guardian-entry-security{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:1.25rem 0 0;color:#748297;font-size:.75rem}
.guardian-entry-security span{display:grid;place-items:center;width:20px;height:20px;color:#16825d;background:#e4f7ee;border-radius:50%;font-weight:900}
.application-workflow[hidden]{display:none!important}
.application-workflow .application-head{margin-top:0}
.application-workflow .step-one-grid{grid-template-columns:minmax(0,1fr)}
.application-session-note{display:flex;align-items:center;gap:.6rem;margin:0 0 1.2rem;padding:.75rem .9rem;color:#52647a;background:#f7faff;border:1px solid #e2ebf5;border-radius:11px;font-size:.78rem}
.application-session-note span{display:grid;place-items:center;width:24px;height:24px;color:#16825d;background:#e2f6ec;border-radius:50%;font-weight:900}

/* Parent-supplied student data: no IC lookup / enumeration surface */
.student-details-grid{align-items:start}
#application-student-name,#guardian-name{text-transform:uppercase}
.optional-label{font-weight:500;color:#7b8797;font-size:.78em}
.delima-input{display:grid;grid-template-columns:auto minmax(110px,1fr) auto;align-items:center;overflow:hidden;background:#fff;border:1px solid #bfd0e2;border-radius:11px;transition:border-color .2s,box-shadow .2s}
.delima-input:focus-within{border-color:#1677d2;box-shadow:0 0 0 3px rgba(22,119,210,.12)}
.delima-input>span{padding:0 .75rem;color:#29445f;background:#f5f8fb;font-weight:800;white-space:nowrap;align-self:stretch;display:flex;align-items:center}
.delima-input input{min-width:0;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}

/* District policy */
.district-policy-note{display:flex;align-items:flex-start;gap:.8rem;margin:0 0 1rem;padding:1rem 1.05rem;color:#654d1d;background:#fff9e9;border:1px solid #efd48e;border-radius:13px}
.district-policy-note>span{display:grid;flex:0 0 32px;place-items:center;width:32px;height:32px;color:#8a6106;background:#ffefbd;border-radius:50%;font-weight:900}
.district-policy-note strong{display:block;color:#60460e;font-size:.84rem}
.district-policy-note p{margin:.2rem 0 0;font-size:.78rem;line-height:1.6}

/* Review PII controls */
.review-privacy-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:.9rem 1rem;background:#f7faff;border:1px solid #dce8f4;border-radius:13px}
.review-privacy-toolbar>div{display:grid;gap:.15rem}
.review-privacy-toolbar strong{color:#173b60;font-size:.86rem}
.review-privacy-toolbar small{color:#6d7e90;font-size:.74rem;line-height:1.45}
.review-sensitive-toggle{flex:0 0 auto;white-space:nowrap;padding:.7rem .9rem;font-size:.78rem}
.sensitive-review-value{font-variant-numeric:tabular-nums;letter-spacing:.01em}
.consent-stack{display:grid;gap:.75rem;margin-top:1rem}
.consent-stack .consent-box{margin:0}

/* Signed-in account menu */
.session-account{position:relative;margin-left:.35rem;flex:0 0 auto}
.session-account-button{display:flex;align-items:center;gap:.5rem;max-width:240px;padding:.42rem .6rem;border:1px solid #d8e4ef;border-radius:999px;background:#fff;color:#173b60;cursor:pointer}
.session-account-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf5ff;color:#1775cf;font-weight:900}
.session-account-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:750}
.session-account-chevron{font-size:.75rem;color:#718096}
.session-account-menu{position:absolute;z-index:30;top:calc(100% + .55rem);right:0;width:min(310px,82vw);padding:.9rem;background:#fff;border:1px solid #dce5ef;border-radius:14px;box-shadow:0 18px 45px rgba(24,54,85,.16)}
.session-account-menu small{display:block;color:#7a8796;font-size:.69rem}
.session-account-menu strong{display:block;margin:.18rem 0 .7rem;overflow-wrap:anywhere;color:#173b60;font-size:.78rem}
.session-account-menu button{width:100%;padding:.65rem .75rem;border:0;border-radius:9px;background:#f5f8fb;color:#9d2d2d;font-weight:800;text-align:left;cursor:pointer}
.session-account-menu button:hover{background:#fff0f0}

@media(max-width:900px){
  .session-account-email{display:none}
  .session-account-button{padding:.35rem}
  .session-account-chevron{display:none}
}
@media(max-width:700px){
  .guardian-entry-shell{width:min(calc(100% - 1.5rem),760px);padding:2.5rem 0}
  .guardian-entry-card{padding:1.6rem 1.2rem;border-radius:20px}
  .guardian-entry-provider{padding:1rem}
  .student-details-grid{grid-template-columns:1fr}
  .delima-input{grid-template-columns:auto minmax(70px,1fr) auto}
  .delima-input>span{padding:0 .5rem;font-size:.76rem}
  .review-privacy-toolbar{align-items:stretch;flex-direction:column}
  .review-sensitive-toggle{width:100%;white-space:normal}
}
