/* =========================================================
   EFLİS SAYFA BÜTÜNLÜĞÜ (2026-10-10)
   Yeni yüzen üst bar ile tüm modül sayfaları aynı genişlikte,
   aynı üst boşlukta, aynı yazı tipi ve başlık ölçüleriyle açılır.
   En son yüklenir; modüllerin kendi dosyalarını değiştirmez.
   ========================================================= */
:root{
  --efu-w:min(1400px,calc(100% - 40px));
  --efu-top:18px;
  --efu-font:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --efu-ink:#0b3a67;--efu-sub:#5b7287;--efu-line:#dbe7f0;
  --efu-title:clamp(22px,2vw,26px);
}
@media (max-width:900px){:root{--efu-w:calc(100% - 20px);--efu-top:12px}}
@media (max-width:640px){:root{--efu-w:calc(100% - 12px);--efu-top:10px;--efu-title:21px}}

@media screen{
/* ---------- 1. Ortak genişlik: üst bar ile aynı hizada ---------- */
html body #applicationContent{padding-left:0!important;padding-right:0!important;padding-top:0!important;max-width:none!important;width:100%!important;box-sizing:border-box!important}
html body #applicationContent>:is(.adm,.efl-classmod,.duty-wrap,.efl-req,.eflis-ann-page,.ef-survey,.meal-admin,.meal-view,.exam-shell,.ap,.student-page,.teacher-panel),
html body #eflParentApp #parentMain,
html body #app>.layout{
  width:var(--efu-w)!important;max-width:none!important;
  margin:var(--efu-top) auto 0!important;
  padding-left:0!important;padding-right:0!important;padding-top:0!important;
  box-sizing:border-box!important;
}
html body #app>.layout{padding-bottom:24px!important;min-height:0!important}
html body #applicationContent>.ap{padding-bottom:110px!important}

/* ---------- 2. Tek yazı tipi ---------- */
html body #applicationContent,
html body #applicationContent :is(h1,h2,h3,h4,h5,h6,p,label,button,input,select,textarea,table,th,td,small,li,a,b,strong,span,div),
html body #eflParentApp :is(h1,h2,h3,h4,p,label,button,input,select,textarea,th,td,small,span,div,b,strong),
html body #app :is(h1,h2,h3,h4,p,label,button,input,select,textarea,th,td,small,span,div,b,strong){
  font-family:var(--efu-font)!important;
}

/* ---------- 3. Sayfa başlıkları: hepsi aynı ölçü ---------- */
html body #applicationContent :is(.cm-head,.duty-top,.efl-req-head,.ef-survey-head,.meal-head,.exam-head,.eflis-ann-page>header) :is(h1,h2):first-of-type,
html body #eflParentApp .parent-head h1,
html body #app .page-head h1{
  font:800 var(--efu-title)/1.18 var(--efu-font)!important;color:var(--efu-ink)!important;
  letter-spacing:-.2px!important;margin:0!important;text-shadow:none!important;
}
html body #applicationContent :is(.cm-head,.duty-top,.efl-req-head,.ef-survey-head,.meal-head,.exam-head,.eflis-ann-page>header) :is(p,.sub,.duty-sub,.exam-note,h1+div,h2+div),
html body #eflParentApp .parent-head p,
html body #app .page-head p{
  font:500 14px/1.45 var(--efu-font)!important;color:var(--efu-sub)!important;margin:4px 0 0!important;
}
html body #applicationContent :is(.cm-head,.efl-req-head,.ef-survey-head,.meal-head,.exam-head),
html body #eflParentApp .parent-head{margin:0 0 16px!important;padding:0!important}
/* Duyurular: büyük renkli başlık kutusu yerine diğer sayfalarla aynı sade başlık */
html body #applicationContent .eflis-ann-page>header{
  background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;
  padding:0!important;margin:0 0 16px!important;color:var(--efu-ink)!important}
html body #applicationContent .eflis-ann-page>header small{display:none!important}
/* Kulüpler başlık kutusu: diğer sayfalar gibi sade */
html body #app .page-head{background:none!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0 0 16px!important;border-radius:0!important}
/* Ana menü kartındaki okul adı da aynı yazı ailesi */
html body #applicationContent .efl-hub-brand h1{font-family:var(--efu-font)!important;font-weight:800!important;letter-spacing:-.3px!important}

/* ---------- 4. Kart içi başlıklar ---------- */
html body #applicationContent :is(.efl-req-card,.eflis-ann-card,.ef-survey-card,.panel,.student-next-action)>h2,
html body #applicationContent :is(.cm-panel,.control-box,.dash-section,.duty-panel,.exam-panel,.activity-card)>h3,
html body #app :is(.panel,.club-card)>:is(h2,h3),
html body #eflParentApp .parent-panel>:is(h2,h3){
  font:800 17px/1.3 var(--efu-font)!important;color:var(--efu-ink)!important;letter-spacing:0!important}

/* ---------- 5. Düğmeler: tek ölçü ---------- */
html body #applicationContent :is(.ef-action,.sv-btn,.duty-btn,.exam-btn,.meal-btn,.eflis-ann-primary,.primary-button,.teacher-filter,.btn),
html body #app :is(.actions,.club-card,.panel,.efl-config,.efl-actions) button{
  font:700 14px/1.15 var(--efu-font)!important;letter-spacing:0!important;
  min-height:40px!important;padding:0 16px!important;border-radius:11px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
  text-decoration:none!important;white-space:nowrap!important}
html body #applicationContent :is(.sv-btn,.meal-btn,.ef-action,.btn).sm,
html body #applicationContent .sv-opt .sv-btn,
html body #app .activity-actions button{min-height:34px!important;padding:0 12px!important;font-size:13px!important}

/* ---------- 6. Sekme çubukları: İdareci Paneli sekmeleriyle aynı ---------- */
html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs){
  display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;
  width:100%!important;max-width:none!important;box-sizing:border-box!important;
  margin:0 0 18px!important;padding:6px!important;border-radius:16px!important;
  background:rgba(255,255,255,.9)!important;border:1px solid var(--efu-line)!important;
  box-shadow:0 8px 24px rgba(15,50,90,.08)!important;overflow-x:auto!important;scrollbar-width:none}
html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs)::-webkit-scrollbar{display:none}
html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs) button{
  flex:0 0 auto!important;min-height:40px!important;padding:0 15px!important;border-radius:11px!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  color:#3d5a74!important;font:700 14px/1 var(--efu-font)!important;white-space:nowrap!important}
html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs) button:hover{background:#eef6fb!important}
html body #applicationContent .efl-admin-local-nav button[aria-current="page"],
html body #applicationContent .ef-survey-tabs button.on,
html body #applicationContent .duty-tabs button.active{
  background:linear-gradient(120deg,#1680bd,#6a55e8)!important;color:#fff!important;
  box-shadow:0 6px 16px rgba(40,70,160,.25)!important}
/* Proje Yönetimi: üstteki yerel menünün ait olduğu kutunun kenar boşluğu */
html body #applicationContent>.adm{padding-top:0!important}
html body #applicationContent .duty-tabs{width:max-content!important;max-width:100%!important}

/* ---------- 7. Kullanıcı adı rozeti (üst bar) ---------- */
.eflis-user-chip{
  display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border-radius:999px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);color:#fff;
  font:700 13px/1 var(--efu-font);white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;
  backdrop-filter:blur(6px);flex:0 1 auto;min-width:0}
.eflis-user-chip svg{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.eflis-user-chip span{overflow:hidden;text-overflow:ellipsis}
.eflis-user-chip[hidden]{display:none!important}
@media (max-width:1100px){.eflis-user-chip{max-width:170px}}


/* ---------- 8. Telefon ---------- */
@media (max-width:640px){
  html body #applicationContent>.ap{padding-bottom:96px!important}
  html body #applicationContent :is(.cm-head,.efl-req-head,.ef-survey-head,.meal-head,.exam-head),
  html body #eflParentApp .parent-head,
  html body #app .page-head,
  html body #applicationContent .eflis-ann-page>header{margin-bottom:12px!important}
  html body #applicationContent :is(.cm-head,.duty-top,.efl-req-head,.ef-survey-head,.meal-head,.exam-head,.eflis-ann-page>header) :is(p,.sub,.duty-sub,.exam-note,h1+div,h2+div),
  html body #eflParentApp .parent-head p,
  html body #app .page-head p{font-size:13px!important}
  html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs){margin-bottom:12px!important;border-radius:14px!important;padding:5px!important}
  html body #applicationContent :is(.efl-admin-local-nav,.ef-survey-tabs,.duty-tabs) button{min-height:38px!important;padding:0 12px!important;font-size:13px!important}
  html body #applicationContent :is(.ef-action,.sv-btn,.duty-btn,.exam-btn,.meal-btn,.eflis-ann-primary,.primary-button,.teacher-filter,.btn),
  html body #app :is(.actions,.club-card,.panel,.efl-config,.efl-actions) button{min-height:40px!important;font-size:13.5px!important;white-space:normal!important;text-align:center!important}
}
}
/* Ad rozeti: üst bar düğme kurallarından etkilenmesin */
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip,
html body #eflis-parent-header .parent-actions .eflis-user-chip,
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip{
  display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;
  height:38px!important;padding:0 14px 0 12px!important;margin:0 4px 0 0!important;border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.26)!important;color:#fff!important;
  font:700 13px/1 var(--efu-font)!important;letter-spacing:.2px!important;white-space:nowrap!important;
  max-width:260px!important;min-width:0!important;flex:0 1 auto!important;box-shadow:none!important}
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip svg,
html body #eflis-parent-header .parent-actions .eflis-user-chip svg,
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip svg{width:16px!important;height:16px!important;flex:0 0 16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important}
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip>span,
html body #eflis-parent-header .parent-actions .eflis-user-chip>span,
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip>span{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:inherit!important;min-width:0!important}
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip[hidden],
html body #eflis-parent-header .parent-actions .eflis-user-chip[hidden],
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip[hidden]{display:none!important}
@media (max-width:1100px){
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip,
html body #eflis-parent-header .parent-actions .eflis-user-chip,
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip{max-width:170px!important}}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip{cursor:pointer!important;transition:background .15s,border-color .15s!important}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip:hover,
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip:focus-visible{background:rgba(255,255,255,.26)!important;border-color:rgba(255,255,255,.5)!important;outline:none!important}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip .eflis-user-key{font-style:normal!important;font-size:12px!important;opacity:0!important;width:0!important;overflow:hidden!important;transition:opacity .15s,width .15s!important}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip:hover .eflis-user-key{opacity:1!important;width:16px!important}
/* Telefonda: ad gizlenir, yuvarlak kişi simgesi kalır (dokununca Şifremi Değiştir) */
@media (max-width:760px){
html body #applicationScreen #eflis-main-header-87a #eflTopActions .eflis-user-chip,
html body #eflis-parent-header .parent-actions .eflis-user-chip,
html body #eflis-clubs-header-87d .top-actions .eflis-user-chip{width:40px!important;height:40px!important;padding:0!important;justify-content:center!important;gap:0!important;flex:0 0 40px!important;margin:0!important}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip>span,
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip .eflis-user-key{display:none!important}
html body :is(#eflTopActions,.parent-actions,.top-actions) .eflis-user-chip svg{width:19px!important;height:19px!important;flex:0 0 19px!important}}
/* Telefonda kart dışındaki başlıklar kenara yapışmasın */
@media (max-width:640px){
  html body #applicationContent :is(.cm-head,.efl-req-head,.ef-survey-head,.meal-head,.exam-head,.eflis-ann-page>header),
  html body #eflParentApp .parent-head,
  html body #app .page-head{padding:2px 6px 0!important}
}
html body #applicationContent .ef-survey-card h2{font:800 19px/1.3 var(--efu-font)!important;color:var(--efu-ink)!important}
@media (min-width:641px){
  html body #eflis-clubs-header-87d .top-actions button#homeBtn,
  html body #eflis-clubs-header-87d .top-actions button#logoutBtn{border-radius:999px!important;padding:0 16px!important}
}
/* ---------- Sosyal Kulüpler: üst sekme çubuğu ---------- */
html body #app>.eflis-club-tabs{
  width:var(--efu-w)!important;margin:var(--efu-top) auto 0!important;box-sizing:border-box!important;
  position:sticky!important;top:8px!important;z-index:30!important;
  display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;padding:6px!important;border-radius:16px!important;
  background:rgba(255,255,255,.92)!important;border:1px solid var(--efu-line)!important;box-shadow:0 8px 24px rgba(15,50,90,.08)!important;
  backdrop-filter:blur(8px)!important;overflow-x:auto!important;scrollbar-width:none!important}
html body #app>.eflis-club-tabs::-webkit-scrollbar{display:none!important}
html body #app>nav.eflis-club-tabs button{
  flex:0 0 auto!important;width:auto!important;margin:0!important;min-height:40px!important;padding:0 12px!important;border-radius:11px!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer!important;
  color:#3d5a74!important;font:700 14px/1 var(--efu-font)!important;white-space:nowrap!important;transition:background .15s,color .15s!important}
html body #app>nav.eflis-club-tabs button:hover{background:#eef6fb!important}
html body #app>nav.eflis-club-tabs button.active{background:linear-gradient(120deg,#1680bd,#6a55e8)!important;color:#fff!important;box-shadow:0 6px 16px rgba(40,70,160,.25)!important}
html body #app>nav.eflis-club-tabs button:focus-visible{outline:3px solid #9fd3ff!important;outline-offset:2px!important}
html body #app>.eflis-club-tabs+.layout{margin-top:16px!important}
@media (max-width:900px){html body #app>.eflis-club-tabs{top:calc(var(--eftb-h) + var(--eftb-gap-top) + 6px)!important}}
@media (max-width:640px){
  html body #app>.eflis-club-tabs{padding:5px!important;border-radius:14px!important;gap:4px!important}
  html body #app>nav.eflis-club-tabs button{min-height:38px!important;padding:0 12px!important;font-size:13px!important}
  html body #app>.eflis-club-tabs+.layout{margin-top:12px!important}
}
html body #app>nav.eflis-club-tabs button::before,html body #app>nav.eflis-club-tabs button::after{display:none!important;content:none!important}
@media print{html body #app>.eflis-club-tabs{display:none!important}}
