/* === Auth flash guard ===
   Prevent flashing banners or header jumps while Firebase resolves auth. */

/* By default, never show locked banner */
#lockedBanner { display: none; }

/* Show only after Firebase resolves (auth-ready) AND user is signed out */
body.auth-ready.signed-out #lockedBanner {
  display: block;
}

/* Keep auth bar from "jumping" while waiting on Firebase */
#authBar.auth-pending {
  visibility: hidden;
}

/* === Role visibility (student / tutor / guest) === */
[data-role-show] { display: none; }

/* Student view */
body.role-student [data-role-show~="student"] { display: initial; }

/* Tutor view */
body.role-tutor [data-role-show~="tutor"] { display: initial; }

/* Guest (signed-out or no role yet) */
body:not(.role-student):not(.role-tutor) [data-role-show~="guest"] {
  display: initial;
}