/* Ather Schools — Extra components: icon button, search overlay, WhatsApp FAB,
   cookie consent, toast stack, emergency banner, footer extras */

.icon-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:10px;border:1px solid var(--rule,#E5E7EB);
  background:transparent;color:var(--brand-navy);cursor:pointer;transition:background .15s ease, color .15s ease;
}
.icon-btn:hover{background:var(--mist);}
html[data-theme="dark"] .icon-btn{color:var(--text);}
html[data-theme="dark"] .icon-btn:hover{background:var(--surface);}

/* Emergency banner */
.emergency-banner{position:relative;z-index:1150;background:var(--brand-gold);color:var(--brand-navy-deep);}
.emergency-banner.is-warn{background:#E07A26;color:#fff;}
.emergency-banner.is-critical{background:#B6263A;color:#fff;}
.emergency-banner__inner{display:flex;align-items:center;gap:.8rem;padding:.75rem 0;font-weight:600;}
.emergency-banner__close{margin-inline-start:auto;background:transparent;border:0;font-size:1.5rem;color:inherit;cursor:pointer;line-height:1;}

/* WhatsApp FAB */
.whatsapp-fab{
  position:fixed;inset-inline-end:1.25rem;bottom:1.25rem;z-index:80;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 30px rgba(37,211,102,.45);
  transition:transform .2s ease;
}
.whatsapp-fab:hover{transform:translateY(-2px) scale(1.04);}
@media (max-width:640px){ .whatsapp-fab{width:52px;height:52px;bottom:1rem;inset-inline-end:1rem;} }

/* Search overlay */
.search-overlay{
  position:fixed;inset:0;background:rgba(11,23,48,.45);backdrop-filter:blur(8px);
  z-index:1300;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;
}
.search-overlay[hidden]{display:none !important;}
.search-overlay__box{
  width:min(640px,92vw);background:#fff;border-radius:18px;padding:1rem 1.25rem 1.25rem;
  box-shadow:0 30px 80px rgba(0,0,0,.35);position:relative;
}
html[data-theme="dark"] .search-overlay__box{background:var(--bg-elev);color:var(--text);}
.search-overlay__row{
  display:flex;align-items:center;gap:.65rem;
}
.search-overlay__box input{
  flex:1;min-width:0;font-size:1.15rem;padding:.85rem 1rem;border-radius:12px;
  border:1px solid var(--rule);background:transparent;color:inherit;
}
.search-overlay__box input::-webkit-search-cancel-button,
.search-overlay__box input::-webkit-search-decoration,
.search-overlay__box input::-webkit-search-results-button{
  -webkit-appearance:none;appearance:none;display:none;
}
.search-overlay__clear{
  flex:none;padding:.55rem .9rem;border-radius:999px;border:1px solid var(--rule);
  background:rgba(255,255,255,.55);color:var(--brand-navy,#14213D);
  font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;
  transition:background .15s ease, color .15s ease, box-shadow .15s ease;
}
.search-overlay__clear:hover{
  background:rgba(255,255,255,.92);
  box-shadow:0 2px 10px rgba(255,255,255,.35);
}
.search-overlay__clear[hidden]{display:none !important;}
.search-results{margin-top:.9rem;max-height:50vh;overflow:auto;display:grid;gap:.4rem;}
.search-result{display:grid;gap:.15rem;padding:.7rem .85rem;border-radius:10px;text-decoration:none;color:inherit;}
.search-result:hover,.search-result:focus-visible{background:var(--mist);}
.search-result strong{font-weight:600;}
.search-result span{font-size:.85rem;color:var(--text-soft,#677);}
.search-empty{padding:1.2rem;color:var(--text-soft,#677);text-align:center;}

html.search-open,
body.search-open{
  overflow:hidden !important;
  overscroll-behavior:none;
}

/* Cookie consent */
.cookie-consent{
  position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:90;
  background:#fff;border:1px solid var(--rule);border-radius:14px;
  box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.cookie-consent__inner{display:grid;gap:.8rem;padding:1rem 0;}
.cookie-consent p{margin:0;color:var(--text-soft,#445);font-size:.95rem;}
.cookie-consent__options{display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.9rem;}
.cookie-consent__actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;}
@media (max-width:640px){ .cookie-consent__actions{justify-content:stretch;} .cookie-consent__actions .btn{flex:1;} }

/* Toast stack */
.toast-stack{position:fixed;bottom:1rem;inset-inline-start:1rem;z-index:120;display:grid;gap:.5rem;max-width:90vw;}
.toast-stack .toast{position:static;}

/* Footer styles consolidated in layout.css */


/* Hide elements behind feature flags by default; ui-extras.js unhides */
[data-feature]{display:none;}
[data-feature].is-on{display:inline-flex;}

/* Nav menu wide variant */
.nav__menu--wide{min-width:280px;}
