/* =====================================================================
   PROFILE PAGES - SHARED STYLES
   Used by the Tutor Profile, Student Profile and Tutor Advertisement
   pages: the apply bar, toast message and other pieces that were
   identical in css/pages/tutor-profile.css and css/pages/student-profile.css.

   Loaded BEFORE tutor-profile.css. Page-specific looks stay in the
   page's own CSS file, which loads after this one.
   ===================================================================== */

/* ---------- toast ---------- */
.profile-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 1100;
  max-width: min(420px, calc(100vw - 32px));
  padding: 12px 18px;
  border-radius: 999px;
  border: 1px solid var(--lime-line);
  background: var(--surface-3);
  color: var(--text);
  font-size: 13.5px;
  font-weight: 600;
  text-align: center;
  box-shadow: var(--shadow-card);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 12px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.profile-toast.show {
  opacity: 1;
  transform: translate(-50%, 0);
}

.profile-toast.error {
  border-color: var(--danger);
  color: var(--danger);
}

/* Verified badge on the avatar (which clips to a circle, so the badge
   needs it to overflow) - coloured by subscription payment. */
#profileAvatarWrap {
  overflow: visible;
}

.profile-sub-badge {
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 26px;
  height: 26px;
  color: var(--muted-2);
}

.profile-sub-badge svg {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
}

.profile-sub-badge svg path { fill: currentColor; }
/* the tick is see-through in the seal; black shows through it */
.profile-sub-badge svg path.badge-tick { fill: #000000; }

.profile-sub-badge[data-tone="paid"]    { color: var(--lime); }

.profile-sub-badge[data-tone="partial"] { color: var(--orange); }

.profile-sub-badge[data-tone="unpaid"]  { color: var(--danger); }

/* Tuition card + its payments card stacked as one unit (same as the
   Student Profile). */
.tuition-stack {
  display: grid;
  gap: 0;
}

.apply-tuition-bar:active {
  filter: brightness(0.94);
}


/* ---------- strip under the header ----------
   A short message (saved / could not save / profile under review / details missing) in a band just under the site
   header, as tall as the gap between the header and the profile card and lettered like the Beta Version band (no
   border): it slides in, stays a while and slides out on its own. The text sits in the centre. */
.hd-strip {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 24px;
  padding: 0 16px;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .3px;
  line-height: 15.6px;
  text-align: center;
  border: 0;
  box-shadow: none;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-8px);
  transition: opacity .35s ease, transform .35s ease;
}
.hd-strip.show { opacity: 1; pointer-events: auto; transform: none; }
.hd-strip-in { max-width: 980px; }
/* on a phone the text may take two lines - a little room above and below */
@media (max-width: 700px) { .hd-strip { padding: 4px 12px; } }
.hd-strip[data-tone="ok"]    { background: #12301f; color: #86efac; }
/* the reminder: a solid dark-yellow band, like the orange Beta Version band at the top - in both themes */
.hd-strip[data-tone="warn"], [data-theme="light"] .hd-strip[data-tone="warn"] { background: #eab308; color: #1a1300; }
.hd-strip[data-tone="error"] { background: #3a1616; color: #fca5a5; }
[data-theme="light"] .hd-strip[data-tone="ok"]    { background: #dcfce7; color: #166534; }
[data-theme="light"] .hd-strip[data-tone="error"] { background: #fee2e2; color: #b91c1c; }
@media (prefers-reduced-motion: reduce) { .hd-strip { transition: opacity .2s; transform: none; } }
