@font-face{font-family:"Vazirmatn";src:url("../assets/fonts/Vazirmatn.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
*{box-sizing:border-box;margin:0;padding:0}:root{
  --primary:#C92D79;--secondary:#E83E8C;--light:#F8E0F0;
  --ink:#172033;--muted:#65758b;--line:#dfe8f1;--white:#fff;
  --shadow:0 18px 45px rgba(25,58,92,.12)
}html,
body{min-height:100%}body{
  font-family:"Vazirmatn",Tahoma,sans-serif;color:var(--ink);

  padding:14px;transition:background .35s ease
;}button,
input,
select,
textarea{font-family:"Vazirmatn",Tahoma,sans-serif!important}html,
body,
*::before,
*::after{font-family:"Vazirmatn",Tahoma,sans-serif!important}button{cursor:pointer}.bg{position:fixed;border-radius:50%;opacity:.13;pointer-events:none;z-index:0}.bg.one{width:270px;height:270px;right:-80px;top:-70px;background:var(--primary)}.bg.two{width:210px;height:210px;left:-65px;bottom:-55px;background:var(--secondary)}.bg.three{width:130px;height:130px;left:8%;top:38%;background:var(--primary)}.shell{
  position:relative;z-index:1;width:min(1050px,100%);margin:auto;
  display:flex;align-items:center;justify-content:center
;}.card{
  width:100%;background:rgba(255,255,255,.82);backdrop-filter:blur(15px);
  border:1px solid rgba(255,255,255,.94);}.page{display:none;width:100%}.page.active{display:block}.login-card{max-width:490px;margin:auto;padding:26px 22px;background:rgba(255,255,255,.92)!important;border:1.5px solid rgba(255,255,255,.95)!important;box-shadow:0 26px 64px rgba(108,58,101,.16),inset 0 1px 0 rgba(255,255,255,.95)!important}.logo{width:78px;height:78px;margin:0 auto 12px}.logo img{width:100%;height:100%;object-fit:contain;border-radius:20px;background:transparent;border:0;box-shadow:none}.login-title{text-align:center;font-size:1.34rem;font-weight:950;margin-bottom:5px;color:#7c2456}.login-sub{text-align:center;color:#7a6c79;font-size:.84rem;margin-bottom:18px}.role-tabs{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:linear-gradient(135deg,#ffeaf4,#fff7fb);
  padding:6px;border-radius:18px;margin-bottom:18px;border:1.5px solid #f4c7db;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)
}.role-tab{
  border:0;background:transparent;padding:10px 4px;border-radius:14px;font-weight:850;color:#8b6a80;
  transition:.2s
}.role-tab.active{background:white;color:var(--primary);box-shadow:0 7px 16px rgba(155,58,110,.12)}.role-icon{display:block;font-size:1.25rem;margin-bottom:2px}.field{margin-bottom:12px;text-align:right}.field label{display:block;font-size:.76rem;font-weight:800;margin-bottom:5px;color:#405269}.input-wrap{position:relative}.field input,
.field select{
  width:100%;height:47px;border:2px solid #ecd7e3;border-radius:15px;background:#fff;
  padding:0 12px;font-size:.9rem;outline:0;transition:.2s;box-shadow:0 4px 10px rgba(155,58,110,.05)
}.field input:focus,
.field select:focus{
  border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent)
}.eye{
  position:absolute;left:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;
  width:34px;height:34px;border-radius:9px;font-size:1rem
}.primary-btn{
  width:100%;border:0;border-radius:16px;padding:13px 15px;color:white;font-size:1rem;font-weight:950;
  background:linear-gradient(135deg,var(--primary),var(--secondary));
  box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 32%,transparent)
}.primary-btn:active{transform:scale(.985)}.error{display:none;color:#c62828;background:#fff0f0;border:1px solid #ffd1d1;border-radius:11px;padding:8px 10px;font-size:.72rem;margin-bottom:10px}.app-card{padding:14px;min-height:min(760px,calc(100vh - 28px))}.topbar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 4px 13px;
  border-bottom:1px solid rgba(191,207,220,.65)
}.brand{display:flex;align-items:center;gap:9px;min-width:0}.brand img{width:44px;height:44px;border-radius:13px;object-fit:contain;background:transparent;box-shadow:none;border:0}.brand-text{min-width:0}.brand-text strong{display:block;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-text small{display:block;color:var(--muted);font-size:.63rem}.actions{display:flex;gap:6px;align-items:center}.lessons-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.lesson{
  border:1px solid rgba(255,255,255,.9);border-radius:19px;background:rgba(255,255,255,.78);
  min-height:122px;padding:13px 7px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 7px 16px rgba(30,62,90,.06);position:relative;overflow:hidden;transition:.2s
}.lesson:before{content:"";position:absolute;top:0;width:100%;height:5px;background:var(--primary)}.lesson:hover{transform:translateY(-3px);box-shadow:0 11px 22px rgba(30,62,90,.11)}.lesson-icon{
  width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:1.7rem;
  background:color-mix(in srgb,var(--primary) 13%,white)
}.lesson-name{font-size:.82rem;font-weight:900;text-align:center}.lesson small{font-size:.55rem;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}#reportPage .dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#adminPage .dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{
  position:relative;overflow:hidden;padding:13px 9px;border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(247,251,255,.89));
  border:1px solid color-mix(in srgb,var(--primary) 12%,#e5edf4);
  text-align:center;box-shadow:0 7px 17px rgba(25,58,92,.055)
}.stat::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:color-mix(in srgb,var(--primary) 72%,white)}.stat span{display:block;font-size:.61rem;color:var(--muted);margin-bottom:4px;font-weight:750}.stat strong{display:block;font-size:1.08rem;color:#244965;font-weight:950}.stat small{display:block;margin-top:3px;color:#8a98a7;font-size:.52rem}.stat-follow::before{background:#e09b3f}.stat-follow strong{color:#9a6017}.teacher-search-wrap{
  display:flex;align-items:center;gap:7px;margin:0 0 11px;padding:0 10px;height:42px;
  background:white;border:1.5px solid #dce6ef;border-radius:13px
}.teacher-search-wrap span{font-size:1.15rem;color:#7b8b9c}.teacher-search-wrap input{width:100%;border:0;outline:0;background:transparent;font-size:.74rem}.student-list{display:grid;gap:7px}.student-row{
  display:grid;grid-template-columns:1.45fr .72fr .72fr .75fr auto;align-items:center;gap:8px;
  padding:11px;border-radius:16px;background:linear-gradient(145deg,#fff,#fbfdff);
  border:1px solid #e2ebf2;box-shadow:0 5px 13px rgba(35,68,95,.045);transition:.18s
}.student-row:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 28%,#e2ebf2);
  box-shadow:0 8px 17px rgba(35,68,95,.08)
}.student-name strong{display:block;font-size:.78rem}.student-name small{display:block;color:var(--muted);font-size:.58rem}.cell{text-align:center}.cell span{display:block;color:var(--muted);font-size:.55rem}.cell strong{font-size:.73rem}.view-btn{border:0;border-radius:10px;background:color-mix(in srgb,var(--primary) 13%,white);color:var(--primary);font-weight:900;padding:7px 9px;font-size:.65rem}.eval.good{color:#167447;font-weight:900}.eval.mid{color:#9c6500;font-weight:900}.eval.low{color:#b83232;font-weight:900}.admin-tabs{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
  margin:2px 0 14px;padding:5px;border-radius:15px;background:#edf3f8
}.admin-tab{
  border:0;border-radius:11px;background:transparent;color:#637286;height:40px;
  font-size:.76rem;font-weight:900;transition:.18s
}.admin-tab.active{background:#fff;color:var(--primary);box-shadow:0 4px 12px rgba(22,55,85,.10)}.admin-panel{display:none}.admin-panel.active{display:block}.admin-filter,
.teacher-admin-filter{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0
}.admin-filter select,
.admin-filter input,
.teacher-admin-filter select,
.teacher-admin-filter input{
  width:100%;min-width:0;height:43px;border:2px solid #c8d9e6;border-radius:12px;background:#fff;padding:0 10px;font-size:.72rem;outline:0;
  box-shadow:0 4px 10px rgba(29,64,91,.05);transition:.18s
}.admin-filter select:focus,
.admin-filter input:focus,
.teacher-admin-filter select:focus,
.teacher-admin-filter input:focus{
  border-color:#24768a;box-shadow:0 0 0 3px rgba(36,118,138,.12)
}#adminPage .app-card{background:linear-gradient(145deg,rgba(255,255,255,.97),#f3fafb);border:1px solid #cfe3e7}#teacherPage .app-card{background:linear-gradient(145deg,rgba(255,255,255,.97),#f7f5ff);border:1px solid #ddd7f3}/* هویت ثابت اداری: آبی پرکنتراست برای پنل معلم و مدیریت */


.admin-table{
  display:grid;gap:7px;max-height:min(48vh,470px);overflow:auto;padding:1px 1px 4px 3px;
  scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--primary) 35%,#cfd9e2) transparent
}.admin-table::-webkit-scrollbar{width:7px}.admin-table::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 32%,#d2dce5);border-radius:99px}.teacher-form-grid{grid-template-columns:repeat(3,1fr)}.teacher-admin-row,
.admin-row{
  display:grid;align-items:center;gap:8px;background:linear-gradient(145deg,#fff,#fbfdff);
  border:1px solid #e4edf4;border-radius:14px;padding:10px;font-size:.68rem;box-shadow:0 5px 13px rgba(35,68,95,.04)
}.admin-row{grid-template-columns:1.55fr .72fr .52fr 1fr}.teacher-admin-row{grid-template-columns:1.45fr .72fr .52fr 1fr}.admin-person strong{display:block;font-size:.75rem}.admin-person small{display:block;margin-top:2px;color:#7a8999;font-size:.58rem}.admin-cell{text-align:center}.admin-cell span{display:block;color:#8290a0;font-size:.52rem;margin-bottom:2px}.admin-cell strong{font-size:.7rem;color:#35495d}.admin-student-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.admin-student-actions .status-toggle{min-width:76px}.admin-student-actions .view-btn{height:34px;padding:0 10px;white-space:nowrap}.status-toggle{
  justify-self:end;min-width:94px;height:34px;border:1.5px solid #d9e4ed;border-radius:999px;background:#f2f5f7;
  color:#687786;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 9px;font-size:.62rem;font-weight:900;
  box-shadow:0 3px 8px rgba(35,68,95,.05);transition:.18s
}.status-toggle .toggle-dot{width:12px;height:12px;border-radius:50%;background:#9aa6b2;box-shadow:0 0 0 3px rgba(154,166,178,.14)}.status-toggle.active{background:#e9f8ef;border-color:#b9e8cb;color:#177247}.status-toggle.active .toggle-dot{background:#1ca466;box-shadow:0 0 0 3px rgba(28,164,102,.14)}.status-toggle:active{transform:scale(.97)}.add-panel{
  display:none;margin:10px 0 13px;padding:12px;border:1px solid #dce7f0;background:#f9fcff;border-radius:15px
}.add-panel.show{display:block}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.form-grid input,
.form-grid select{height:40px;border:1.5px solid #dce6ef;border-radius:11px;padding:0 9px;font-size:.7rem}.form-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.flat-btn{border:0;border-radius:10px;padding:8px 11px;font-weight:850;font-size:.67rem}.flat-btn.save{background:var(--primary);color:white}.flat-btn.cancel{background:#e9eff4;color:#526477}.modal{
  position:fixed;inset:0;background:rgba(14,24,38,.34);display:none;align-items:center;justify-content:center;
  z-index:20;padding:16px
}.modal.show{display:flex}.modal-card{width:min(430px,100%);background:white;border-radius:23px;padding:17px;box-shadow:0 22px 55px rgba(12,28,45,.22)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal-head strong{font-size:.9rem}.close-btn{width:34px;height:34px;border:0;border-radius:10px;background:#eef3f7}.theme-grid{display:grid;}.theme-option{
  position:relative;border:2px solid #edf1f5;background:#fff;color:#415168;display:flex;align-items:center;justify-content:center;}.theme-option::after{content:"✓";position:absolute;top:6px;left:8px;font-size:.75rem;font-weight:900;color:#fff;opacity:0}.theme-option.selected::after{opacity:1;color:var(--c)}.swatch{
  border-radius:50%;margin:0;background:linear-gradient(135deg,var(--c),var(--s));
  display:block;}.toast{
  position:fixed;left:50%;bottom:20px;transform:translate(-50%,18px);opacity:0;pointer-events:none;
  background:#243548;color:white;border-radius:12px;padding:8px 13px;font-size:.7rem;z-index:30;transition:.25s
}.toast.show{opacity:1;transform:translate(-50%,0)}/* ===== نسخه حرفه‌ای اداری: آبی + طوسی ===== */

body.staff-mode .bg{display:none!important}#teacherPage,
#adminPage{
  --staff-navy:#164f75;
  --staff-blue:#2f80b9;
  --staff-blue-soft:#eaf3f9;
  --staff-line:#d3dde5;
  --staff-gray:#657482;
  --staff-gray-soft:#f3f6f8;
  --staff-dark:#243746;
  --primary:#2f80b9;
  --secondary:#4f9ccd;
  --light:#edf5fa;
  --theme-ink:#164f75;
}#teacherPage .topbar,
#adminPage .topbar{


  border:0!important;


}#teacherPage .brand-text strong,
#teacherPage .brand-text small,
#adminPage .brand-text strong,
#adminPage .brand-text small{color:#fff!important}#teacherPage .dashboard-grid .stat::before,
#adminPage .dashboard-grid .stat::before{
  width:4px!important;background:#2f80b9!important
}#teacherPage .teacher-search-wrap{


  box-shadow:none!important;

}#adminPage .flat-btn.save{

  border-color:#2f80b9!important;


}/* پایه و کلاس: متن ساده، بدون کادر یا چیپ */
#adminPage .admin-cell{


  border-radius:0!important;


}


@media(max-width:820px){.lessons-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){body{padding:8px}.shell{min-height:calc(100vh - 16px)}.app-card{padding:10px;border-radius:23px}.brand-text strong{font-size:.76rem}.lessons-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lesson{min-height:112px}.dashboard-grid{grid-template-columns:repeat(2,1fr)}.student-row{grid-template-columns:1.5fr .7fr .7fr auto}.form-grid{grid-template-columns:repeat(2,1fr)}.admin-filter,
.teacher-admin-filter{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.admin-filter select,
.admin-filter input,
.teacher-admin-filter select,
.teacher-admin-filter input{padding:0 6px;font-size:.62rem}.admin-row{grid-template-columns:1.45fr .62fr .45fr auto}.teacher-form-grid{grid-template-columns:repeat(2,1fr)}.teacher-admin-row{grid-template-columns:1.4fr .62fr .45fr auto}
}
@media(max-width:390px){.login-card{padding:19px 13px}.role-tab{font-size:.66rem}.theme-grid{grid-template-columns:repeat(2,1fr)}
}/* ===== بازطراحی اداری V4: ساختار حرفه‌ای و مرزبندی واضح ===== */
#teacherPage,
#adminPage{
  --staff-950:#0f3550;
  --staff-900:#164f75;
  --staff-700:#2478b5;
  --staff-500:#4397cb;
  --staff-100:#e8f2f8;
  --staff-050:#f4f7fa;
  --staff-border:#c8d5df;
  --staff-border-strong:#aebfcb;
  --staff-text:#233846;
  --staff-muted:#6e7e8a;
}body.staff-mode{background:#e6edf2!important}#teacherPage .app-card,
#adminPage .app-card{
  background:#f7f9fb!important;
  border:1px solid #b9c8d3!important;
  border-radius:22px!important;
  box-shadow:0 18px 46px rgba(20,48,67,.18)!important;

}#teacherPage .topbar,
#adminPage .topbar{
  position:relative;

  padding:15px 18px!important;

  background:linear-gradient(100deg,#103d5d 0%,#17628f 62%,#2478b5 100%)!important;
  box-shadow:0 7px 18px rgba(13,54,82,.22)!important;
}#teacherPage .topbar::after,
#adminPage .topbar::after{
  content:"";position:absolute;right:0;left:0;bottom:0;height:3px;background:#6bb2dc;
}#teacherPage .brand img,
#adminPage .brand img{
  width:46px;height:46px;border-radius:0!important;border:0!important;
  background:transparent!important;box-shadow:none!important;object-fit:contain!important;
  filter:brightness(0) invert(1)!important;opacity:.96;
}.staff-exit{
  border:1.5px solid rgba(255,255,255,.82);
  background:rgba(255,255,255,.96);color:#164f75;font:inherit;font-weight:950;
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 9px rgba(0,0,0,.12)
;}.staff-exit:active{transform:scale(.97)}#teacherPage .brand-text strong,
#adminPage .brand-text strong{font-size:.96rem!important;font-weight:950!important}#teacherPage .brand-text small,
#adminPage .brand-text small{font-size:.62rem!important;opacity:.83!important}/* آمار: کارت‌های واقعی با مرز و نوار هویتی */
#teacherPage .dashboard-grid,
#adminPage .dashboard-grid{gap:11px!important;margin:0 0 17px!important}#teacherPage .dashboard-grid .stat,
#adminPage .dashboard-grid .stat{
  position:relative!important;
  background:#fff!important;
  border:1px solid var(--staff-border)!important;
  border-top:4px solid var(--staff-700)!important;
  border-radius:13px!important;
  box-shadow:0 5px 14px rgba(33,60,78,.09)!important;
  padding:13px 11px 12px!important;
}#teacherPage .dashboard-grid .stat::before,
#adminPage .dashboard-grid .stat::before{display:none!important}#teacherPage .dashboard-grid .stat span,
#adminPage .dashboard-grid .stat span{
  color:#667887!important;font-size:.59rem!important;font-weight:850!important
}#teacherPage .dashboard-grid .stat strong,
#adminPage .dashboard-grid .stat strong{
  color:#113f60!important;font-size:1.14rem!important;font-weight:950!important
}#teacherPage .dashboard-grid .stat small,
#adminPage .dashboard-grid .stat small{color:#87939d!important}#teacherPage .dashboard-grid .stat-follow{border-top-color:#c17a2a!important;background:#fffdfa!important}#teacherPage .dashboard-grid .stat-follow strong{color:#9a5f1e!important}/* پنل مدیر */
#adminPage .admin-tabs{
  display:grid!important;gap:5px!important;
  background:#dfe7ed!important;border:1px solid #b9c9d4!important;
  border-radius:12px!important;padding:5px!important;margin-bottom:12px!important;
  box-shadow:inset 0 1px 2px rgba(20,50,70,.06)!important;
}#adminPage .admin-tab{
  height:42px!important;border-radius:8px!important;color:#506675!important;
  font-weight:900!important;background:transparent!important;border:0!important
}#adminPage .admin-tab.active{
  background:#164f75!important;color:#fff!important;
  box-shadow:0 4px 10px rgba(22,79,117,.24)!important
}#adminPage .admin-panel{
  position:relative;
  padding:13px!important;
  background:#fff!important;
  border:1px solid #bfcdd7!important;
  border-radius:14px!important;
  box-shadow:0 6px 17px rgba(31,57,75,.08)!important;
}#adminPage .admin-panel::before{display:none!important}#adminPage .flat-btn.save{
  height:38px!important;background:#2478b5!important;border:1px solid #1d679d!important;
  color:#fff!important;border-radius:9px!important;box-shadow:0 4px 10px rgba(36,120,181,.18)!important
}#adminPage .flat-btn.save:hover{background:#1c689f!important}/* نوار کنترل: پایه / کلاس / جستجو */
#adminPage .admin-filter,
#adminPage .teacher-admin-filter{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;
  margin:8px 0 9px!important;padding:9px!important;
  background:#e8eef3!important;border:1px solid #c5d2dc!important;border-radius:11px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}#adminPage .admin-filter select,
#adminPage .admin-filter input,
#adminPage .teacher-admin-filter select,
#adminPage .teacher-admin-filter input{
  width:100%!important;height:42px!important;padding:0 10px!important;
  border:1.5px solid #aebfcb!important;border-radius:8px!important;
  background:#fff!important;color:#2b4353!important;font-size:.72rem!important;font-weight:750!important;
  box-shadow:0 1px 2px rgba(31,56,73,.04)!important
}#adminPage .admin-filter select:focus,
#adminPage .admin-filter input:focus,
#adminPage .teacher-admin-filter select:focus,
#adminPage .teacher-admin-filter input:focus{
  border-color:#2478b5!important;box-shadow:0 0 0 3px rgba(36,120,181,.13)!important;outline:none!important
}/* سرستون و ردیف‌های فهرست */
#adminPage .admin-list-head{
  display:grid;grid-template-columns:1.55fr .72fr .52fr 1fr;gap:8px;align-items:center;
  min-height:34px;padding:0 11px;margin:0 0 5px;
  background:#164f75;color:#fff;border:1px solid #164f75;border-radius:9px;
  font-size:.58rem;font-weight:900;text-align:center;
  box-shadow:0 3px 8px rgba(22,79,117,.13)
}#adminPage .admin-list-head span:first-child{text-align:right}#adminPage .admin-table{
  max-height:min(49vh,470px)!important;overflow:auto!important;gap:6px!important;
  padding:1px 1px 3px!important;scrollbar-width:thin;scrollbar-color:#9bb5c6 #edf2f5;
}#adminPage .admin-row,
#adminPage .teacher-admin-row{
  position:relative!important;
  display:grid!important;align-items:center!important;gap:8px!important;
  min-height:58px!important;padding:10px 11px!important;
  background:#fff!important;border:1px solid #c5d2db!important;border-right:5px solid #2478b5!important;
  border-radius:10px!important;box-shadow:0 3px 9px rgba(31,56,73,.07)!important;
  transition:.16s ease!important
}#adminPage .teacher-admin-row{grid-template-columns:1.45fr .72fr .52fr 1fr!important}#adminPage .admin-row:nth-child(even),
#adminPage .teacher-admin-row:nth-child(even){background:#f6f9fb!important}#adminPage .admin-row:hover,
#adminPage .teacher-admin-row:hover{
  transform:translateY(-1px)!important;background:#edf5fa!important;border-color:#9fb8c9!important;
  box-shadow:0 5px 12px rgba(27,61,84,.11)!important
}#adminPage .admin-person{min-width:0;text-align:right!important}#adminPage .admin-person strong{
  display:block!important;color:#1e3443!important;font-size:.77rem!important;font-weight:950!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}/* پایه و کلاس عمداً متن ساده‌اند */
#adminPage .admin-cell{
  padding:0 4px!important;background:transparent!important;border:0!important;box-shadow:none!important;text-align:center!important
}#adminPage .admin-cell span{display:block!important;color:#89959e!important;font-size:.48rem!important;margin-bottom:1px!important}#adminPage .admin-cell strong{display:block!important;color:#354c5b!important;font-size:.7rem!important;font-weight:900!important}/* وضعیت: واضح، نه مبهم */
#adminPage .status-toggle{
  justify-self:center!important;min-width:92px!important;height:34px!important;padding:0 10px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  background:#fff0f1!important;border:1px solid #e5aeb2!important;color:#a34249!important;
  border-radius:9px!important;font-weight:900!important;box-shadow:none!important
}#adminPage .status-toggle .toggle-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:#c85d66!important;box-shadow:0 0 0 3px rgba(200,93,102,.12)!important}#adminPage .status-toggle.active{
  background:#eaf7ef!important;border-color:#9fd2b3!important;color:#226b45!important
}#adminPage .status-toggle.active .toggle-dot{background:#2b9a61!important;box-shadow:0 0 0 3px rgba(43,154,97,.12)!important}/* فرم افزودن */
#adminPage .add-panel{
  margin:9px 0 11px!important;padding:13px!important;
  background:linear-gradient(145deg,#e1eef7 0%,#edf5fa 100%)!important;
  border:1.5px solid #9fbdd1!important;border-radius:11px!important;
  box-shadow:0 4px 12px rgba(31,79,112,.10),inset 0 1px 0 rgba(255,255,255,.9)!important
}#adminPage .form-grid input,
#adminPage .form-grid select{
  height:41px!important;border:1.5px solid #9fb6c6!important;border-radius:8px!important;background:#fff!important;
  box-shadow:0 2px 5px rgba(32,70,96,.06)!important
}#adminPage .form-grid input:focus,
#adminPage .form-grid select:focus{
  border-color:#2478b5!important;box-shadow:0 0 0 3px rgba(36,120,181,.12)!important;outline:none!important
}#adminPage .flat-btn.cancel{background:#e1e7eb!important;color:#4c626f!important;border:1px solid #c4d0d8!important}/* پنل معلم با همان زبان بصری */
#teacherPage .teacher-search-wrap{
  height:43px!important;background:#e8eef3!important;border:1px solid #c5d2dc!important;border-radius:10px!important;padding:0 9px!important
}#teacherPage .teacher-search-wrap input{
  height:34px!important;background:#fff!important;border:1.5px solid #aebfcb!important;border-radius:7px!important;padding:0 10px!important;font-size:.72rem!important
}#teacherPage .student-list{gap:6px!important}#teacherPage .student-row{
  min-height:58px!important;background:#fff!important;border:1px solid #c5d2db!important;border-right:5px solid #2478b5!important;
  border-radius:10px!important;box-shadow:0 3px 9px rgba(31,56,73,.07)!important;padding:10px 11px!important
}#teacherPage .student-row:nth-child(even){background:#f6f9fb!important}#teacherPage .student-row:hover{background:#edf5fa!important;border-color:#9fb8c9!important;transform:translateY(-1px)!important}#teacherPage .view-btn{background:#2478b5!important;color:#fff!important;border:1px solid #1d679d!important;border-radius:8px!important;box-shadow:none!important}/* وزیرمتن در تمام اجزای سایت */
html body,
html body *,
html body button,
html body input,
html body select{font-family:"Vazirmatn",Tahoma,sans-serif!important}

@media(max-width:680px){#teacherPage .topbar,
#adminPage .topbar{margin:-10px -10px 14px!important;padding:12px 11px!important}#adminPage .admin-panel{padding:9px!important}#adminPage .admin-filter,
#adminPage .teacher-admin-filter{gap:5px!important;padding:6px!important}#adminPage .admin-filter select,
#adminPage .admin-filter input,
#adminPage .teacher-admin-filter select,
#adminPage .teacher-admin-filter input{height:39px!important;padding:0 5px!important;font-size:.61rem!important}#adminPage .admin-list-head{grid-template-columns:1.45fr .62fr .45fr auto;padding:0 7px;gap:5px;font-size:.51rem}#adminPage .teacher-admin-row{grid-template-columns:1.4fr .62fr .45fr auto!important}#adminPage .admin-row,
#adminPage .teacher-admin-row{gap:5px!important;padding:9px 7px!important}#adminPage .status-toggle{min-width:72px!important;height:32px!important;padding:0 6px!important;font-size:.58rem!important}#adminPage .admin-person strong{font-size:.68rem!important}
}/* ===== پنل معلم V5: موبایل‌محور، خلوت و کاربردی ===== */
#teacherPage .teacher-app-card{padding:14px!important}#teacherPage .teacher-head-text small{align-items:center;gap:6px;flex-wrap:wrap;}#teacherPage .teacher-stats{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;margin:0 0 11px!important
}#teacherPage .teacher-stats .stat{
  min-width:0!important;
  border:1px solid #bccbd5!important;border-top:0!important;
  background:#fff!important;
  display:flex!important;flex-direction:column;justify-content:center;align-items:center;text-align:center
}#teacherPage .teacher-stats .stat::before{
  content:""!important;position:absolute!important;right:0!important;left:auto!important;top:0!important;bottom:0!important;height:auto!important;background:#2478b5!important
}#teacherPage .teacher-stats .stat-accuracy::before{background:#4d8f9e!important}#teacherPage .teacher-stats .stat-follow::before{background:#d4882d!important}#teacherPage .teacher-stats .stat span{
  margin:0 0 5px!important;color:#667784!important;font-weight:850!important;}#teacherPage .teacher-stats .stat strong{color:#143f5c!important;line-height:1.1}#teacherPage .teacher-stats .stat-follow strong{color:#a76213!important}#teacherPage .teacher-search-compact{
  height:44px!important;margin:0 0 9px!important;padding:0 10px!important;
  background:#e8eef3!important;border:1px solid #bdcbd5!important;border-radius:11px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important
}#teacherPage .teacher-search-compact span{font-size:1.1rem!important;color:#527184!important;flex:0 0 auto}#teacherPage .teacher-search-compact input{
  height:34px!important;width:100%!important;border:0!important;background:transparent!important;
  box-shadow:none!important;padding:0 3px!important;color:#263f4f!important;font-size:.73rem!important
}#teacherPage .teacher-student-list{gap:7px!important}#teacherPage .teacher-student-list .student-row{
  display:grid!important;
  align-items:center!important;gap:8px!important;min-height:66px!important;padding:9px 10px!important;
  background:#fff!important;border:1px solid #c4d0d9!important;border-right:4px solid #2478b5!important;
  border-radius:11px!important;box-shadow:0 3px 9px rgba(31,56,73,.065)!important;}#teacherPage .teacher-student-list .student-row:nth-child(even){background:#f7f9fb!important}#teacherPage .teacher-student-name{min-width:0}#teacherPage .teacher-student-name strong{
  display:block;color:#243d4c!important;font-size:.75rem!important;font-weight:950!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}#teacherPage .teacher-status{
  display:inline-flex!important;width:max-content;margin-top:4px;padding:2px 7px;border-radius:99px;
  font-size:.49rem!important;font-weight:900!important;line-height:1.55
}#teacherPage .teacher-status.ok{background:#e8f4ed;color:#32714e}#teacherPage .teacher-status.needs-follow{background:#fff0dc;color:#9a5b12}#teacherPage .teacher-status.no-activity{background:#eef1f4;color:#6d7c87}#teacherPage .teacher-metric{
  min-width:0;text-align:center;padding:0 3px!important;background:transparent!important;border:0!important
}#teacherPage .teacher-metric span{display:block;color:#7a8994!important;font-size:.48rem!important;margin-bottom:2px}#teacherPage .teacher-metric strong{display:block;color:#294d64!important;font-weight:950;}#teacherPage .teacher-student-list .view-btn{
  min-width:72px!important;height:34px!important;padding:0 9px!important;border-radius:8px!important;
  font-size:.59rem!important;font-weight:900!important
}

@media(max-width:680px){#teacherPage .teacher-app-card{padding:9px!important;border-radius:18px!important}#teacherPage .teacher-topbar{margin:-9px -9px 11px!important;}#teacherPage .teacher-topbar .brand{gap:8px}#teacherPage .teacher-topbar .brand img{border-radius:10px!important}#teacherPage .teacher-topbar .brand-text strong{font-size:.82rem!important}#teacherPage .teacher-head-text small{gap:4px!important;margin-top:1px}#teacherPage .teacher-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;}#teacherPage .teacher-stats .stat::before{width:4px!important;border-radius:0 9px 9px 0!important}#teacherPage .teacher-stats .stat span{line-height:1.35}#teacherPage .teacher-search-compact{height:40px!important;margin-bottom:7px!important;border-radius:9px!important;padding:0 8px!important}#teacherPage .teacher-search-compact input{height:32px!important;font-size:.67rem!important}#teacherPage .teacher-student-list{gap:6px!important}#teacherPage .teacher-student-list .student-row{border-right-width:4px!important;border-radius:9px!important
  }#teacherPage .teacher-student-name strong{font-size:.66rem!important}#teacherPage .teacher-status{margin-top:3px!important}#teacherPage .teacher-metric{padding:0!important}#teacherPage .teacher-metric span{font-size:.42rem!important}#teacherPage .teacher-student-list .view-btn{padding:0 5px!important;}
}

@media(max-width:390px){#teacherPage .teacher-topbar .brand-text strong{font-size:.77rem!important}#teacherPage .teacher-head-text small{font-size:.51rem!important}#teacherPage .teacher-stats .stat span{font-size:.44rem!important}#teacherPage .teacher-stats .stat strong{font-size:.88rem!important}#teacherPage .teacher-student-name strong{font-size:.62rem!important}
}/* ===== پنل معلم V6: هدر ستونی + کارنامه موبایل حرفه‌ای ===== */
#teacherPage .teacher-list-head{
  display:grid;grid-template-columns:minmax(0,1.55fr) 88px 72px 72px 74px;
  align-items:center;gap:7px;margin:0 0 5px;padding:7px 10px;
  background:#173f5b;color:#fff;border:1px solid #12364e;border-radius:10px;
  box-shadow:0 3px 8px rgba(22,63,91,.12)
}#teacherPage .teacher-list-head span{
  min-width:0;text-align:center;font-size:.55rem;font-weight:900;white-space:nowrap
}#teacherPage .teacher-list-head span:first-child{text-align:right;padding-right:3px}#teacherPage .teacher-student-list .student-row{
  grid-template-columns:minmax(0,1.55fr) 88px 72px 72px 74px!important
}#teacherPage .teacher-status-cell{display:grid;place-items:center;min-width:0}#teacherPage .teacher-status{margin:0!important;justify-content:center;text-align:center;white-space:nowrap}#teacherPage .teacher-metric strong{font-size:.72rem!important}/* کارنامه: هویت بصری اداری و خوانا */
#reportPage.staff-report .app-card{
  background:#eef3f6!important;border:1px solid #c4d0d8!important;box-shadow:0 18px 46px rgba(24,55,76,.13)!important
}#reportPage.staff-report .topbar{
  background:#173f5b!important;border-bottom:4px solid #2f80b9!important
}#reportPage.staff-report .dashboard-grid{gap:8px!important;margin:0 0 12px!important}#reportPage.staff-report .dashboard-grid .stat{
  min-height:76px!important;padding:10px 7px!important;background:#fff!important;
  border:1px solid #c4d0d8!important;border-top:4px solid #2f80b9!important;border-radius:11px!important;
  box-shadow:0 3px 10px rgba(31,56,73,.06)!important
}#reportPage.staff-report .dashboard-grid .stat::before{display:none!important}#reportPage.staff-report .dashboard-grid .stat span{color:#6f7f89!important;font-size:.55rem!important}#reportPage.staff-report .dashboard-grid .stat strong{color:#173f5b!important;font-size:1.08rem!important}

@media(max-width:680px){#teacherPage .teacher-list-head{
    grid-template-columns:minmax(0,1fr) 66px 48px 48px 62px!important;
    gap:3px!important;padding:6px 7px!important;border-radius:8px!important
  }#teacherPage .teacher-list-head span{font-size:.46rem!important}#teacherPage .teacher-student-list .student-row{
    grid-template-columns:minmax(0,1fr) 66px 48px 48px 62px!important;
    gap:3px!important;min-height:54px!important;padding:7px 7px!important
  }#teacherPage .teacher-status{font-size:.42rem!important;padding:2px 4px!important}#teacherPage .teacher-metric strong{font-size:.62rem!important}#teacherPage .teacher-student-list .view-btn{width:58px!important;min-width:58px!important;height:30px!important;font-size:.49rem!important}#reportPage.staff-report .app-card{padding:9px!important;border-radius:18px!important}#reportPage.staff-report .topbar{margin:-9px -9px 10px!important;padding:10px!important;min-height:60px!important}#reportPage.staff-report .brand img{width:39px!important;height:39px!important;border-radius:10px!important}#reportPage.staff-report .brand-text strong{font-size:.8rem!important}#reportPage.staff-report .brand-text small{font-size:.5rem!important}#reportPage.staff-report .dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;margin-bottom:9px!important}#reportPage.staff-report .dashboard-grid .stat{min-height:62px!important;padding:7px 4px!important;border-radius:8px!important;border-top-width:3px!important}#reportPage.staff-report .dashboard-grid .stat span{font-size:.45rem!important;margin-bottom:3px!important}#reportPage.staff-report .dashboard-grid .stat strong{font-size:.84rem!important}
}

@media(max-width:390px){#teacherPage .teacher-list-head{grid-template-columns:minmax(0,1fr) 61px 43px 43px 56px!important;padding:6px 5px!important}#teacherPage .teacher-list-head span{font-size:.42rem!important}#teacherPage .teacher-student-list .student-row{grid-template-columns:minmax(0,1fr) 61px 43px 43px 56px!important;padding:7px 5px!important}#teacherPage .teacher-status{font-size:.39rem!important;padding:2px 3px!important}#teacherPage .teacher-metric strong{font-size:.57rem!important}#teacherPage .teacher-student-list .view-btn{width:53px!important;min-width:53px!important;font-size:.45rem!important;padding:0 3px!important}
}/* ===== کارنامه مشترک دانش‌آموز و معلم؛ نسخه رنگی‌تر و منظم‌تر ===== */
#reportPage{padding:12px}#reportPage .reference-report-card{


  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-radius:32px;

  padding:18px 16px 16px;
  max-width:700px;width:100%;margin:0 auto;
  position:relative;z-index:2;
  max-height:94vh;overflow-y:auto;
}#reportPage .reference-report-header{

  margin-bottom:12px;gap:10px;


}#reportPage .reference-report-header small{display:none!important}#reportPage .reference-report-back{
  font-size:18px;cursor:pointer;align-items:center;justify-content:center;transition:.25s;
  flex-shrink:0;font-family:inherit
;}#reportPage .reference-report-back:hover{background:#fff;}#reportPage .reference-report-filters{margin:6px 0 12px;text-align:right}#reportPage .reference-report-filters select{
  width:100%;padding:11px 13px;border-radius:14px;
  outline:none;font-family:inherit;
  }#reportPage .reference-report-overview{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:14px;}#reportPage .reference-report-overview-item{
  padding:12px 6px 10px;
  }#reportPage .reference-report-overview-item::before{content:"";position:absolute;top:0;right:0;left:0;}#reportPage .reference-report-overview-item span{display:block;font-size:.6rem;}#reportPage .reference-report-overview-item strong{display:block;margin-top:3px;font-weight:950;}#reportPage .reference-report-list-wrap{max-height:54vh;overflow:auto;padding-bottom:5px}#reportPage .reference-units{display:grid;gap:12px}#reportPage .reference-unit-heading{
  padding:10px 12px;
  font-weight:950;

  position:relative
;}#reportPage .reference-unit-heading::before{content:"";position:absolute;top:0;right:0;left:0;height:6px;background:var(--u)}#reportPage .reference-level-head,
#reportPage .reference-level-row{
  display:grid;grid-template-columns:74px 70px 1.1fr 70px 1.15fr;
  align-items:center;gap:5px;text-align:center
}#reportPage .reference-level-head{
  padding:7px 8px;
  font-size:.53rem;font-weight:950;}#reportPage .reference-level-row{padding:9px 8px;}#reportPage .reference-level-row:last-child{border-bottom:0}#reportPage .reference-level-name{
  display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:3px 8px;
  border-radius:10px;
  color:color-mix(in srgb,var(--u) 74%,#17324f 26%);font-size:.67rem;font-weight:950
;}#reportPage .reference-level-cell{font-size:.66rem;color:#405a6d;font-weight:850;min-width:0}#reportPage .reference-level-cell.score{font-weight:950;}#reportPage .reference-level-cell.accuracy{font-weight:950;}#reportPage .reference-level-cell.evaluation{
  color:#175a77;font-weight:950;border-radius:9px;padding:6px 5px
;}#reportPage .reference-level-row.not-played .reference-level-cell{font-weight:700;}#reportPage .reference-level-row.not-played .reference-level-name{border-color:#e5ecf1;}#reportPage .reference-level-row.not-played .reference-level-cell.evaluation{background:#f5f6f7;border-color:#e6ebef;color:#8d9aa5}/* Student panel V2: mobile-first,
clean,
theme-aware */


#studentPage{padding:6px}#studentPage .app-card{
  background:rgba(255,255,255,.92);border:1px solid color-mix(in srgb,var(--primary) 18%,#dfe9f1 82%);
  border-radius:26px;box-shadow:0 16px 36px rgba(30,70,100,.10);overflow:hidden;position:relative;padding:10px
}#studentPage .app-card::before{display:none}#studentPage .topbar{
  margin:-10px -10px 10px;padding:12px 11px;
  background:linear-gradient(110deg,color-mix(in srgb,var(--primary) 94%,#17324f 6%),var(--secondary));
  border:0;border-radius:0 0 20px 20px;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 15%,transparent);min-height:62px
}#studentPage .brand{gap:8px;align-items:center}#studentPage .brand img{width:42px;height:42px;border-radius:12px;background:#fff;border:2px solid rgba(255,255,255,.9)}#studentPage .brand-text strong,
#studentPage .brand-text small{color:#fff!important}#studentPage .brand-text strong{font-size:.86rem;font-weight:950}#studentPage .brand-text small{font-size:.55rem;opacity:.84}#studentPage .actions{gap:5px;flex-wrap:nowrap}#studentPage .lessons-grid{
  display:grid;}#studentPage .lesson{
  min-width:0;


  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;}#studentPage .lesson:active{transform:scale(.98)}#studentPage .lesson-icon{
  display:flex;align-items:center;justify-content:center;

  margin:0
;}

@media(min-width:701px){#studentPage{padding:12px}#studentPage .app-card{padding:14px;border-radius:30px}#studentPage .topbar{margin:-14px -14px 14px;padding:15px 14px;border-radius:0 0 22px 22px}#studentPage .lesson{padding:15px 10px;border-radius:20px}#studentPage .lesson-icon{width:48px;height:48px;font-size:1.45rem}#studentPage .lesson-name{font-size:.82rem}
}

@media(max-width:700px){#reportPage .reference-report-card{max-height:96vh}#reportPage .reference-report-header{padding-bottom:8px}#reportPage .reference-report-header small{font-size:.64rem}#reportPage .reference-report-overview{grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:10px}#reportPage .reference-report-list-wrap{max-height:58vh}
}/* ===== Student UI V4: colorful,
mobile-first,
theme-aware ===== */

body.student-mode .bg{display:none!important}#studentPage .student-app-card{
  padding:10px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid color-mix(in srgb,var(--primary) 15%,#dbe7ef 85%)!important;
  border-radius:26px!important;
  box-shadow:0 18px 38px rgba(28,72,103,.10)!important;
  overflow:hidden;
}.student-brand-header{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:-10px -10px 10px;padding:12px 12px;
  background:linear-gradient(110deg,color-mix(in srgb,var(--primary) 90%,#163b58 10%),var(--secondary));
  border-radius:0 0 20px 20px;
  box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 18%,transparent)
}.student-brand-header .brand{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.student-brand-header .brand-text{min-width:0}.student-brand-header .brand-text strong{
  display:block;color:#fff!important;font-size:.86rem!important;font-weight:950!important;
  white-space:nowrap;overflow:visible;text-overflow:clip
}.student-exit{
  flex:0 0 auto;border:1px solid rgba(255,255,255,.34);color:#fff;font-family:inherit;font-weight:900;align-items:center;justify-content:center;gap:4px;font-size:.58rem;box-shadow:none
;}.student-exit:hover{background:rgba(255,255,255,.25)}.student-quick-btn{
  color:transparent;font-size:0;display:inline-flex;align-items:center;justify-content:center;
  transition:.18s;line-height:1;cursor:pointer
;}.student-quick-btn::before{display:none}.student-quick-btn.theme{margin-right:0}.student-quick-btn.guide{margin-left:0}.student-quick-btn .qi{position:relative;z-index:1;}.student-nav{
  display:grid;gap:7px;
  margin:0 0 12px;padding:7px;
  border-radius:18px
;}.student-nav-btn{
  min-width:0;height:56px;border-radius:14px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  color:#41576a;font-family:inherit;transition:.18s;
  position:relative;overflow:hidden
;}.student-nav-btn::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--navc);}.student-nav-btn span{font-size:1.05rem;line-height:1}.student-nav-btn b{font-size:.54rem;font-weight:950;white-space:nowrap}.student-nav-btn[data-nav="lessons"]{--navc:#2388d8;--navsoft:#eaf5ff}.student-nav-btn[data-nav="theme"]{--navc:#d94e96;--navsoft:#fff0f8}.student-nav-btn[data-nav="report"]{--navc:#23966a;--navsoft:#eaf9f3}.student-nav-btn:hover,
.student-nav-btn.active{
  color:var(--navc);
  }.student-nav-btn.active{box-shadow:0 6px 15px color-mix(in srgb,var(--navc) 16%,transparent)}#studentPage .lessons-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin:0!important;}#studentPage .lesson{
  --lc:#2f80b9;--ls:#eaf5ff;

  background:linear-gradient(180deg,#fff 0%,var(--ls) 100%)!important;


  gap:8px!important;position:relative!important;overflow:hidden!important;}#studentPage .lesson:nth-child(1){--ls:#edf7ff;}#studentPage .lesson:nth-child(2){--ls:#fff2ec;}#studentPage .lesson:nth-child(3){--ls:#edf9f3;}#studentPage .lesson:nth-child(4){--ls:#f5efff;}#studentPage .lesson:nth-child(5){--ls:#fff0f8;}#studentPage .lesson:nth-child(6){--ls:#fff7df;}#studentPage .lesson:nth-child(7){--ls:#ebf9fa;}#studentPage .lesson:nth-child(8){--lc:#6374d8;--ls:#eff1ff}#studentPage .lesson::before{
  content:""!important;position:absolute!important;top:0!important;right:0!important;left:0!important;
  height:7px!important;background:var(--lc)!important;opacity:1!important;border-radius:19px 19px 0 0!important
}#studentPage .lesson::after{
  content:"";position:absolute;inset:auto -18px -18px auto;width:62px;height:62px;border-radius:18px;
  background:color-mix(in srgb,var(--lc) 10%,white 90%);transform:rotate(18deg)
}#studentPage .lesson-icon{
  width:42px!important;height:42px!important;border-radius:14px!important;font-size:1.28rem!important;
  border:1px solid color-mix(in srgb,var(--lc) 28%,white 72%)!important;
  position:relative;z-index:1
;}#studentPage .lesson-name{font-size:.74rem!important;position:relative;z-index:1;}#studentPage .lesson small{display:none!important}/* Student report keeps the same navigation chrome and a clearer blue report body */
#reportPage .student-page-chrome{margin-bottom:10px}#reportPage .student-page-chrome .student-brand-header{
  background:linear-gradient(110deg,#1e638f,#3498db)!important;
  box-shadow:0 7px 18px rgba(41,128,185,.15)!important
}#reportPage .student-page-chrome .student-nav-btn.active{
  --navc:#247db7;--navsoft:#eaf5ff
}#reportPage .reference-report-card::-webkit-scrollbar,
#reportPage .reference-report-list-wrap::-webkit-scrollbar{width:8px;height:8px}#reportPage .reference-report-card::-webkit-scrollbar-thumb,
#reportPage .reference-report-list-wrap::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 28%,#c7d7e4 72%);border-radius:999px}


@media(max-width:700px){#reportPage{padding:8px!important}#reportPage .reference-report-card{padding:12px 10px 12px;border-radius:24px}#reportPage .reference-report-header{border-radius:16px;margin-bottom:10px}#reportPage .reference-report-overview-item{padding:10px 5px 9px;border-radius:15px}#reportPage .reference-report-overview-item span{font-size:.55rem}#reportPage .reference-report-overview-item strong{font-size:.9rem}#reportPage .reference-unit-block{border-radius:16px}#reportPage .reference-unit-heading{padding:9px 10px}#reportPage .reference-level-head,
#reportPage .reference-level-row{grid-template-columns:66px 56px 1fr 56px 1.05fr;gap:4px}#reportPage .reference-level-head{font-size:.48rem;padding:6px 5px}#reportPage .reference-level-row{padding:7px 5px}#reportPage .reference-level-name{font-size:.58rem;min-height:26px;padding:2px 6px}#reportPage .reference-level-cell{font-size:.56rem}#reportPage .reference-level-cell.evaluation{padding:5px 4px;font-size:.53rem}
}

@media(max-width:380px){.student-brand-header{padding:10px 9px}.student-brand-header .brand img{width:37px;height:37px;flex-basis:37px}.student-brand-header .brand-text strong{font-size:.78rem!important}.student-exit{height:32px;padding:0 7px;font-size:.53rem}.student-nav{gap:5px;padding:6px;border-radius:16px}.student-nav-btn{height:50px;border-radius:12px}.student-nav-btn span{font-size:.98rem}.student-nav-btn b{font-size:.49rem}#studentPage .lessons-grid{gap:7px!important}#studentPage .lesson{min-height:88px!important;padding:10px 5px 9px!important}#studentPage .lesson-icon{width:39px!important;height:39px!important;font-size:1.15rem!important}#studentPage .lesson-name{font-size:.68rem!important}
}

@media(min-width:701px){#studentPage .student-app-card{padding:14px!important;border-radius:28px!important}.student-brand-header{margin:-14px -14px 11px;padding:14px;border-radius:0 0 21px 21px}.student-brand-header .brand img{width:45px;height:45px;flex-basis:45px}.student-brand-header .brand-text strong{font-size:.94rem!important}.student-nav{max-width:560px;margin:0 auto 15px;gap:9px;padding:8px}.student-nav-btn{height:58px}.student-nav-btn b{font-size:.61rem}#studentPage .lessons-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}#studentPage .lesson{min-height:108px!important}
}/* ===== Student pastel redesign ===== */
.bg{display:none!important}body{
  background:
    linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.12)),
    linear-gradient(125deg,#ffe3f1 0%,#ffd8ec 18%,#e8f3ff 38%,#fff1c8 62%,#e5f8ea 82%,#efe8ff 100%);
}body.student-mode{
  background:
    linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,.10)),
    linear-gradient(125deg,#ffd9eb 0%,#ffcfe7 20%,#e7f2ff 42%,#fff0c4 64%,#e2f8e9 84%,#ece4ff 100%)!important;
}#studentPage .student-app-card,
#reportPage .reference-report-card{
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(158,187,219,.58)!important;
  box-shadow:0 18px 42px rgba(52,101,145,.14)!important;
}.student-brand-header,
#reportPage .student-page-chrome .student-brand-header{
  background:linear-gradient(135deg,var(--primary) 0%,color-mix(in srgb,var(--secondary) 88%,white 12%) 100%)!important;

  box-shadow:0 14px 30px color-mix(in srgb,var(--primary) 22%,transparent)!important;
}#studentPage .student-brand-header{
  background:linear-gradient(135deg,var(--primary) 0%,color-mix(in srgb,var(--secondary) 86%,white 14%) 100%)!important;
}.student-brand-header .brand-text strong,
#reportPage .brand-text strong{color:#fff!important}.student-nav{
  background:rgba(255,255,255,.78)!important;


  backdrop-filter:blur(10px)!important;
}.student-nav-btn{
  background:linear-gradient(180deg,#ffffff,#f3f9ff)!important;


}.student-nav-btn span{filter:saturate(1.1)}.student-nav-btn:hover,
.student-nav-btn.active{
  background:linear-gradient(180deg,#ffffff,#eaf5ff)!important;

  transform:translateY(-1px)!important;
}/* Lessons */
#studentPage .lessons-grid{gap:10px!important}#studentPage .lesson{
  min-height:96px!important;
  padding:16px 10px 12px!important;

  border-radius:22px!important;
  box-shadow:0 10px 20px rgba(42,83,119,.10)!important;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}#studentPage .lesson::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:10px;
  border-radius:22px 22px 0 0;
  background:#8dc3ec;
}#studentPage .lesson:hover{transform:translateY(-2px);box-shadow:0 14px 24px rgba(42,83,119,.14)!important}#studentPage .lesson-icon{
  background:rgba(255,255,255,.82)!important;
  box-shadow:0 4px 10px rgba(42,83,119,.10)!important;
}#studentPage .lesson-name{
  color:#23435d!important;
  font-weight:900!important;
  line-height:1.45!important;
}#studentPage .lesson:nth-child(6n/**/+1){background:linear-gradient(145deg,#fff9db,#fffef4)!important}#studentPage .lesson:nth-child(6n/**/+1)::before{background:#f1c75b!important}#studentPage .lesson:nth-child(6n/**/+2){background:linear-gradient(145deg,#e7f7ff,#f8fdff)!important}#studentPage .lesson:nth-child(6n/**/+2)::before{background:#7dc6ee!important}#studentPage .lesson:nth-child(6n/**/+3){background:linear-gradient(145deg,#ffe9f3,#fff8fb)!important}#studentPage .lesson:nth-child(6n/**/+3)::before{background:#ef9ec1!important}#studentPage .lesson:nth-child(6n/**/+4){background:linear-gradient(145deg,#e8faef,#f9fffb)!important}#studentPage .lesson:nth-child(6n/**/+4)::before{background:#84cf9b!important}#studentPage .lesson:nth-child(6n/**/+5){background:linear-gradient(145deg,#ecebff,#fbfbff)!important}#studentPage .lesson:nth-child(6n/**/+5)::before{background:#9a9bee!important}#studentPage .lesson:nth-child(6n/**/+6){background:linear-gradient(145deg,#fff0e6,#fffaf7)!important}#studentPage .lesson:nth-child(6n/**/+6)::before{background:#f1ad72!important}/* Report */


#reportPage .reference-report-filters{


  border-radius:16px!important;
}#reportPage .reference-report-overview{
  gap:10px!important;
}#reportPage .reference-report-overview-item{


  border-radius:18px!important;

}#reportPage .reference-report-overview-item:nth-child(1){border-color:color-mix(in srgb,var(--primary) 33%,#d7e5f0 67%)!important;}#reportPage .reference-unit-block{


  border-radius:20px!important;

  overflow:hidden!important;
}#themeModal .modal-card h3::after{
  content:" — فقط برای بازی‌ها";
  font-size:.72em;
  color:#6e8094;
  font-weight:700;
}

@media(max-width:700px){#studentPage .student-app-card,
#reportPage .reference-report-card{border-radius:26px!important}.student-brand-header{padding:12px 10px!important}.student-brand-header .brand-text strong{font-size:.82rem!important}.student-nav{gap:6px!important;padding:7px!important}#studentPage .lessons-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}#studentPage .lesson{min-height:90px!important;padding:14px 8px 10px!important}
}
#loginPage .card{overflow:hidden}#loginPage .login-title::after{border-radius:999px;}#loginPage .role-tab{
  backdrop-filter:blur(4px);
}#loginPage .role-tab.active{
  background:rgba(255,255,255,.96)!important;
  color:var(--primary)!important;
  box-shadow:0 8px 18px rgba(186,74,125,.14)!important;
  border-color:rgba(233,160,194,.72)!important;
}#loginPage .field input,
#loginPage .field select{border-color:#f0d5e4!important;}#loginPage .primary-btn{box-shadow:0 14px 26px rgba(201,45,121,.24)!important}#reportPage .reference-report-overview-item span{color:#6e7f91!important;font-weight:800}#reportPage .reference-report-overview-item strong{color:color-mix(in srgb,var(--primary) 64%,#274c79 36%)!important}#reportPage .reference-level-cell.score{color:color-mix(in srgb,var(--primary) 62%,#174c78 38%)!important}#reportPage .reference-level-cell.accuracy{color:color-mix(in srgb,var(--primary) 54%,#275f85 46%)!important}/* ==== final visual refinements: stronger borders,
pink consistency,
better report ==== */
#loginPage .login-card,
#studentPage .student-app-card,
#reportPage .reference-report-card,
#teacherPage .teacher-app-card,
#adminPage .app-card{
  border:2px solid #1e1e1e !important;
  box-shadow:0 18px 42px rgba(28,38,52,.16), 0 3px 0 rgba(0,0,0,.06) !important;
}.student-brand-header,
#reportPage .student-page-chrome .student-brand-header{border:2px solid rgba(0,0,0,.92) !important;}.student-nav,
#studentPage .lesson,
#reportPage .reference-report-header,
#reportPage .reference-report-filters,
#reportPage .reference-report-overview-item,
#reportPage .reference-unit-block{border-width:2px !important;}.student-exit{background:rgba(255,255,255,.22) !important;}.student-exit span{display:block}#reportPage #reportTitle{color:color-mix(in srgb,var(--primary) 72%,#20384d 28%) !important;}#reportPage .reference-report-card{text-align:center !important;}#reportPage .reference-report-header{
  position:relative;text-align:center !important;

}#reportPage .reference-report-back{position:absolute;top:50%;transform:translateY(-50%);}#reportPage .reference-report-filters{padding:10px !important;}#reportPage .reference-report-filters select{text-align:center;font-weight:950;}#reportPage .reference-report-overview-item{overflow:hidden;position:relative;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 14%,#ffffff 86%),#ffffff) !important;border-color:color-mix(in srgb,var(--primary) 36%,#d9e6ef 64%) !important;}#reportPage .reference-report-overview-item::before{height:8px !important;background:var(--primary) !important}#reportPage .reference-report-overview-item strong{font-size:1.08rem !important}#reportPage .reference-unit-heading{text-align:center !important;font-size:.88rem !important;}#reportPage .reference-level-row{border-bottom:1px solid color-mix(in srgb,var(--u) 12%,#dde8ef 88%) !important;}#reportPage .reference-level-row:nth-child(even){background:color-mix(in srgb,var(--u) 7%,#ffffff 93%) !important}#reportPage .reference-level-row:nth-child(odd){background:#ffffff !important}#reportPage .reference-level-cell.score{background:color-mix(in srgb,var(--u) 10%,#ffffff 90%);border-radius:10px;padding:6px 4px;}#reportPage .reference-level-cell.accuracy{background:color-mix(in srgb,var(--u) 7%,#ffffff 93%);border-radius:10px;padding:6px 4px;}#reportPage .reference-level-cell.evaluation{background:linear-gradient(145deg,color-mix(in srgb,var(--u) 13%,#ffffff 87%),#ffffff) !important;border:1.5px solid color-mix(in srgb,var(--u) 28%,#dbe6ee 72%) !important;}#reportPage .reference-level-name{background:linear-gradient(180deg,#ffffff,var(--us)) !important;border:1.5px solid color-mix(in srgb,var(--u) 34%,#e0e8ee 66%) !important;}#reportPage .reference-level-row.not-played .reference-level-cell.score,
#reportPage .reference-level-row.not-played .reference-level-cell.accuracy{background:#f7f8fa !important}
@media(max-width:700px){#loginPage .login-card,
#studentPage .student-app-card,
#reportPage .reference-report-card{border-width:2px !important}
}/* ==== Report Vivid UI: fixed educational colors,
independent from theme ==== */
#reportPage .reference-report-card{
  background:linear-gradient(180deg,#fffafd 0%,#ffffff 32%,#f8fbff 100%) !important;
  border:2px solid #181818 !important;
  box-shadow:0 20px 44px rgba(34,41,54,.16) !important;
}#reportPage .reference-report-filters{
  background:linear-gradient(135deg,#fff4fa 0%,#eef7ff 52%,#fff9e6 100%) !important;

  box-shadow:0 7px 16px rgba(45,62,80,.08) !important;
}#reportPage .reference-report-filters select{
  color:#463445 !important;
  background:#fff !important;
  border:2px solid #dc8fb5 !important;
  box-shadow:inset 0 0 0 3px #fff5fa !important;
}#reportPage .reference-report-overview-item{

  box-shadow:0 8px 17px rgba(45,62,80,.08) !important;
}#reportPage .reference-report-overview-item:nth-child(1){
  background:linear-gradient(145deg,#e4f3ff 0%,#ffffff 100%) !important;
}#reportPage .reference-report-overview-item:nth-child(1)::before{background:#3489d8 !important}#reportPage .reference-report-overview-item:nth-child(1) strong{color:#1768aa !important}#reportPage .reference-report-overview-item:nth-child(2){
  background:linear-gradient(145deg,#e8faef 0%,#ffffff 100%) !important;
}#reportPage .reference-report-overview-item:nth-child(2)::before{background:#31a76c !important}#reportPage .reference-report-overview-item:nth-child(2) strong{color:#1d7e4e !important}#reportPage .reference-unit-block{
  --u:#7a5ac8;--us:#f1ecff;

  background:#fff !important;
  box-shadow:0 9px 20px rgba(34,53,75,.09) !important;
}#reportPage .reference-unit-block:nth-child(4n/**/+1){--u:#3f8fd8;--us:#eaf6ff}#reportPage .reference-unit-block:nth-child(4n/**/+2){--u:#cf4d93;--us:#fff0f8}#reportPage .reference-unit-block:nth-child(4n/**/+3){--u:#7d59c7;--us:#f2edff}#reportPage .reference-unit-block:nth-child(4n/**/+4){--u:#e29029;--us:#fff4df}#reportPage .reference-unit-heading{
  background:linear-gradient(135deg,var(--u),color-mix(in srgb,var(--u) 72%,white 28%)) !important;
  color:#fff !important;
  border-bottom:2px solid #2b2b2b !important;
  text-shadow:0 1px 2px rgba(0,0,0,.12);
  padding-top:12px !important;
}#reportPage .reference-unit-heading::before{display:none !important}#reportPage .reference-level-head{
  background:#f3f5f8 !important;
  color:#4d5d6b !important;
  border-bottom:2px solid #cfd8df !important;
}/* easy = green */
#reportPage .reference-level-row.level-easy{
  background:linear-gradient(90deg,#effcf4 0%,#ffffff 100%) !important;
  border-bottom:1px solid #a9dfbe !important;
}#reportPage .level-easy .reference-level-name{
  background:linear-gradient(135deg,#27a65f,#4fc47e) !important;
  color:#fff !important;
  border:2px solid #147a40 !important;
  box-shadow:0 4px 10px rgba(39,166,95,.18);
}#reportPage .level-easy .reference-level-cell.score,
#reportPage .level-easy .reference-level-cell.accuracy,
#reportPage .level-easy .reference-level-cell.evaluation{
  background:#e7f8ed !important;
  color:#176d3e !important;
  border:1.5px solid #9ed9b5 !important;
}/* medium = yellow */
#reportPage .reference-level-row.level-medium{
  background:linear-gradient(90deg,#fff9df 0%,#ffffff 100%) !important;
  border-bottom:1px solid #ecd27a !important;
}#reportPage .level-medium .reference-level-name{
  background:linear-gradient(135deg,#e3aa18,#f5c84b) !important;
  color:#503800 !important;
  border:2px solid #b78309 !important;
  box-shadow:0 4px 10px rgba(227,170,24,.18);
}#reportPage .level-medium .reference-level-cell.score,
#reportPage .level-medium .reference-level-cell.accuracy,
#reportPage .level-medium .reference-level-cell.evaluation{
  background:#fff5c9 !important;
  color:#805a00 !important;
  border:1.5px solid #e5c95c !important;
}/* hard = red */
#reportPage .reference-level-row.level-hard{
  background:linear-gradient(90deg,#fff0f0 0%,#ffffff 100%) !important;
  border-bottom:1px solid #edaaaa !important;
}#reportPage .level-hard .reference-level-name{
  background:linear-gradient(135deg,#d94a4a,#ec6b6b) !important;
  color:#fff !important;
  border:2px solid #ac3030 !important;
  box-shadow:0 4px 10px rgba(217,74,74,.18);
}#reportPage .level-hard .reference-level-cell.score,
#reportPage .level-hard .reference-level-cell.accuracy,
#reportPage .level-hard .reference-level-cell.evaluation{
  background:#ffe3e3 !important;
  color:#a12d2d !important;
  border:1.5px solid #e59a9a !important;
}#reportPage .reference-level-cell{
  text-align:center !important;
}#reportPage .reference-level-row:not(.not-played) > .reference-level-cell:not(.score):not(.accuracy):not(.evaluation){
  background:#fff !important;
  border:1.5px solid #d5dee5 !important;
  border-radius:10px;
  padding:6px 4px;
}#reportPage .reference-level-row.not-played{
  opacity:.72;
  background:#f7f8fa !important;
}#reportPage .reference-level-row.not-played .reference-level-name{
  background:#e9edf1 !important;
  color:#6f7b85 !important;
  border:1.5px solid #cbd5dd !important;
  box-shadow:none !important;
}#reportPage .reference-level-row.not-played .reference-level-cell{
  background:#f5f7f8 !important;
  color:#8c98a1 !important;
  border-color:#d9e0e5 !important;
}

@media(max-width:700px){#reportPage .reference-unit-heading{font-size:.76rem !important}#reportPage .reference-level-row{gap:3px !important}#reportPage .reference-level-cell.score,
#reportPage .reference-level-cell.accuracy,
#reportPage .reference-level-cell.evaluation{padding:5px 3px !important}
}/* ==== Report header: match the site pastel background ==== */

#reportPage .reference-report-header h2{

  text-shadow:none !important;
}/* ==== user requested polish adjustments ==== */

#studentPage .student-brand-header .brand-text strong{font-size:1rem!important}#studentPage .student-app-card,
#reportPage .reference-report-card{


  padding-top:18px!important;
}.student-quickbar{


  gap:12px!important;


}.theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.theme-option{
  min-height:56px!important;padding:8px 3px!important;border-radius:14px!important;
  border-width:1.5px!important
}.theme-option::after,
.theme-option.selected::after{content:none!important;display:none!important}.theme-option.selected{
  border-color:var(--c)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 18%,transparent)!important
}.swatch{width:30px!important;height:30px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 3px 8px rgba(25,58,92,.10)!important}


@media(max-width:700px){#studentPage .student-app-card,
#reportPage .reference-report-card{margin-top:36px!important;padding-top:16px!important}.theme-grid{gap:7px!important}.theme-option{min-height:52px!important}.swatch{width:27px!important;height:27px!important}
}/* ===== clean student rebuild 2026-08-13 ===== */
#loginPage .logo img{background:transparent!important;}#studentPage .student-app-card,
#reportPage .reference-report-card{overflow:visible!important;margin-top:0!important;}.student-quick-btn{
  position:absolute!important;top:0!important;width:32px!important;height:32px!important;min-width:32px!important;
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  pointer-events:auto!important;overflow:visible!important;filter:none!important
}.student-quick-btn.theme{right:0!important;left:auto!important}.student-quick-btn.guide{left:0!important;right:auto!important}.student-quick-btn .qi{display:block!important;width:100%!important;height:100%!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;color:transparent!important;font-size:0!important}.student-quick-btn.theme .qi{background-image:url("../assets/images/theme-palette.png")!important}.student-quick-btn.guide .qi{background-image:url("../assets/images/guide-book.png")!important}.student-quick-btn:hover{transform:scale(1.05)!important;filter:drop-shadow(0 3px 5px rgba(0,0,0,.12))!important}.student-brand-header .brand img{width:76px!important;height:36px!important;flex:0 0 76px!important;object-fit:contain!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}#studentPage .student-brand-header .brand img{flex-basis:92px!important;}#themeModal .modal-card{width:min(270px,calc(100vw - 34px))!important;padding:13px!important;border-radius:20px!important}#themeModal .modal-head{margin-bottom:10px!important}#themeModal .modal-head strong{font-size:.78rem!important}#themeModal .close-btn{width:30px!important;height:30px!important;border-radius:9px!important;font-size:.76rem!important}#themeModal .theme-grid{grid-template-columns:repeat(4,46px)!important;justify-content:center!important;gap:7px!important}#themeModal .theme-option{
  width:46px!important;height:46px!important;min-height:46px!important;padding:0!important;margin:0!important;
  border:0!important;border-radius:13px!important;background:transparent!important;box-shadow:none!important
}#themeModal .theme-option::after,
#themeModal .theme-option.selected::after{display:none!important;content:none!important}#themeModal .swatch{width:27px!important;height:27px!important;margin:auto!important;border-radius:50%!important;box-shadow:0 3px 7px rgba(28,52,74,.12),inset 0 1px 0 rgba(255,255,255,.55)!important;transition:.16s!important}#themeModal .theme-option.selected{border:0!important;box-shadow:none!important}#themeModal .theme-option.selected .swatch{outline:2px solid #263746!important;outline-offset:3px!important;transform:scale(1.03)!important}

@media(max-width:700px){.student-quick-btn{width:29px!important;height:29px!important;min-width:29px!important}.student-brand-header .brand img{width:70px!important;height:33px!important;flex-basis:70px!important}#studentPage .student-brand-header .brand img{flex-basis:84px!important}
}/* ===== اصلاح نهایی هدر «دبستان معرفت»: کاملاً داخل کارت اصلی ===== */
#studentPage .student-brand-header,
#reportPage .student-brand-header{


  min-width:0!important;


  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  overflow:hidden!important;
}#studentPage .student-brand-header .brand,
#reportPage .student-brand-header .brand{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}#studentPage .student-brand-header .brand-text,
#reportPage .student-brand-header .brand-text{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
}#studentPage .student-brand-header .brand-text strong,
#reportPage .student-brand-header .brand-text strong{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  line-height:1.45!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}#studentPage .student-brand-header .student-exit,
#reportPage .student-brand-header .student-exit{
  flex:0 0 auto!important;
  margin:0!important;
}
@media(max-width:700px){#studentPage .student-brand-header,
#reportPage .student-brand-header{
    gap:8px!important;
  }
}/* ===== اصلاح نهایی چیدمان دانش‌آموز: هدر چسبیده + اسکرول داخلی + بردرهای واضح ===== */
.shell{height:calc(100dvh - 28px)!important;min-height:0!important}#studentPage,
#reportPage{height:100%!important;min-height:0!important}/* کارت اصلی ثابت می‌ماند؛ فقط محتوای داخل آن اسکرول می‌شود */
#studentPage .student-app-card,
#reportPage .reference-report-card{


  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;

  position:relative!important;
}/* هدر دبستان معرفت از راست، چپ و بالا دقیقاً به لبه کارت اصلی می‌چسبد */
#studentPage .student-brand-header,
#reportPage .student-brand-header{

  max-width:none!important;


  border:2.5px solid color-mix(in srgb,var(--primary) 72%,#263544 28%)!important;
  border-bottom-color:color-mix(in srgb,var(--primary) 58%,#263544 42%)!important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 18%,transparent)!important;


  z-index:25!important;


}/* منوی بالای دانش‌آموز: کادرها کمی واضح‌تر */
.student-nav{
  border:2px solid color-mix(in srgb,var(--primary) 42%,#cbdbe6 58%)!important;
  box-shadow:0 7px 16px rgba(34,75,106,.08)!important;
}.student-nav-btn{
  border:2px solid color-mix(in srgb,var(--navc) 44%,#d5e3ed 56%)!important;
  box-shadow:0 5px 12px color-mix(in srgb,var(--navc) 9%,transparent)!important;
}.student-nav-btn:hover,
.student-nav-btn.active{
  border-color:color-mix(in srgb,var(--navc) 64%,#b8cfdf 36%)!important;
}/* کارت‌های درس با بردر پررنگ‌تر از رنگ اختصاصی خود کارت */
#studentPage .lesson{
  border:2.5px solid color-mix(in srgb,var(--lc) 56%,#d8e7f1 44%)!important;
}#studentPage .lesson:hover{
  border-color:color-mix(in srgb,var(--lc) 72%,#cadde9 28%)!important;
}/* کارنامه: کادرهای داخلی واضح‌تر، بدون تغییر رنگ‌بندی اصلی */

#reportPage .reference-report-filters{
  border:2px solid color-mix(in srgb,var(--primary) 42%,#dbe7f1 58%)!important;
}#reportPage .reference-report-overview-item{
  border:2.5px solid color-mix(in srgb,var(--primary) 48%,#d7e5f0 52%)!important;
}#reportPage .reference-report-overview-item:nth-child(2){
  border-color:color-mix(in srgb,var(--secondary) 50%,#d7e5f0 50%)!important;
}#reportPage .reference-unit-block{
  border:2.5px solid color-mix(in srgb,var(--u) 56%,#d8e6ef 44%)!important;
}

@media(max-width:700px){.shell{height:calc(100dvh - 20px)!important;min-height:0!important}#studentPage,
#reportPage{height:100%!important;padding-top:0!important;padding-bottom:0!important}#studentPage .student-brand-header,
#reportPage .student-brand-header{
    width:calc(100% + 20px)!important;
    top:-10px!important;
    inset-block-start:-10px!important;
  }
}/* ===== ریزتنظیم نهایی: هدر دقیق روی لبه کارت و قاب ثابت ===== */
#studentPage,
#reportPage{padding:0!important}
#studentPage .student-brand-header{


  inset-block-start:-12px!important;
}/* کارنامه به‌دلیل padding متفاوت کارت، اندازه مستقل دارد */
#reportPage .student-brand-header{


  inset-block-start:-20px!important;
}

@media(max-width:700px){#studentPage .student-brand-header{
    top:-12px!important;
    inset-block-start:-12px!important;
  }#reportPage .student-brand-header{
    top:-14px!important;
    inset-block-start:-14px!important;
  }
}/* ===== فقط اصلاحات درخواستی: بدون تغییر اندازه کارت اصلی ===== */
#studentPage .student-brand-header,
#reportPage .student-brand-header{

  inset-block-start:-16px!important;
  margin-top:-16px!important;
}.student-quickbar{

  grid-template-columns:1fr 1fr!important;
  justify-items:center!important;


}.student-quick-btn.theme,
.student-quick-btn.guide{
  position:static!important;
  right:auto!important;
  left:auto!important;
}#studentPage .lesson,
#studentPage .lesson:hover{border-color:var(--lc)!important}#reportPage .reference-unit-block{border-color:var(--u)!important}

@media(max-width:700px){
}/* ===== اصلاح دقیق نهایی طبق درخواست کاربر ===== */
/* ارتفاع و ساختار هدر در هر سه صفحه دانش‌آموز دقیقاً یکسان است. */
#studentPage .student-brand-header,
#reportPage .student-brand-header{
  width:100%!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  margin:0 0 12px!important;
  padding:10px 12px!important;
  top:auto!important;
  inset:auto!important;
  position:relative!important;
  transform:none!important;
  border-radius:18px!important;
  box-sizing:border-box!important;
}#studentPage .student-brand-header .brand img,
#reportPage .student-brand-header .brand img{
  width:76px!important;height:38px!important;flex:0 0 76px!important;
}/* همه اجزای داخلی، بدون تغییر اندازه کارت اصلی، منظم و وسط کارت قرار می‌گیرند. */
#studentPage .student-nav,
#studentPage .lessons-grid,
#reportPage .student-page-chrome,
#reportPage .reference-report-header,
#reportPage .reference-report-filters,
#reportPage .reference-report-overview,
#reportPage .reference-report-list-wrap{
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}#studentPage .lessons-grid{justify-content:center!important;align-items:stretch!important}#reportPage .reference-units{justify-items:stretch!important}/* رنگ بردر هر درس دقیقاً مطابق فهرست اعلام‌شده. */
#studentPage .lesson:nth-child(1){--lc:#E2B315!important;border-color:#E2B315!important}/* فارسی: زرد */
#studentPage .lesson:nth-child(2){--lc:#3189D8!important;border-color:#3189D8!important}/* نگارش: آبی */
#studentPage .lesson:nth-child(3){--lc:#E35B9A!important;border-color:#E35B9A!important}/* ریاضی: صورتی */
#studentPage .lesson:nth-child(4){--lc:#32A66A!important;border-color:#32A66A!important}/* علوم: سبز */
#studentPage .lesson:nth-child(5){--lc:#8B5BC7!important;border-color:#8B5BC7!important}/* هدیه: بنفش */
#studentPage .lesson:nth-child(6){--lc:#E48736!important;border-color:#E48736!important}/* مطالعات: نارنجی */
#studentPage .lesson:nth-child(7){--lc:#E2B315!important;border-color:#E2B315!important}/* اطلاعات: زرد */

/* ظاهر و راهنما: بدون پس‌زمینه، قرینه در راست و چپ بالای کارت اصلی. */
.student-quickbar{
  position:fixed!important;
  top:8px!important;
  right:14px!important;
  left:14px!important;
  width:auto!important;
  height:32px!important;
  z-index:100!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}.student-quick-btn,
.student-quick-btn:hover{
  position:static!important;
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  width:32px!important;height:32px!important;min-width:32px!important;
  margin:0!important;padding:0!important;
  pointer-events:auto!important;
  transform:none!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}

@media(max-width:700px){#studentPage .student-brand-header,
#reportPage .student-brand-header{
    height:60px!important;min-height:60px!important;max-height:60px!important;
    margin:0 0 10px!important;padding:9px 10px!important;border-radius:16px!important;
  }#studentPage .student-brand-header .brand img,
#reportPage .student-brand-header .brand img{
    width:70px!important;height:35px!important;flex-basis:70px!important;
  }.student-quickbar{top:7px!important;right:10px!important;left:10px!important;height:29px!important}.student-quick-btn,
.student-quick-btn:hover{width:29px!important;height:29px!important;min-width:29px!important}
}/* ===== جای‌گذاری دقیق هدر و دکمه‌های بالای کارت ===== */
body.student-mode #studentPage,
body.student-mode #reportPage{
  padding-top:42px!important;
  box-sizing:border-box!important;
}/* دکمه‌ها بیرون کارت و در دو سوی کاملاً قرینه قرار می‌گیرند. */
#studentPage .student-quickbar{
  position:fixed!important;
  top:16px!important;
  right:max(14px,calc((100vw - 1050px) / 2))!important;
  left:max(14px,calc((100vw - 1050px) / 2))!important;
}#reportPage .student-quickbar{
  position:fixed!important;
  top:16px!important;
  right:max(14px,calc((100vw - 700px) / 2))!important;
  left:max(14px,calc((100vw - 700px) / 2))!important;
}
#studentPage .student-brand-header{


  top:auto!important;
  inset:auto!important;

}/* هدر کارنامه: حذف دقیق padding افقی ۱۶ و padding بالایی ۱۸ پیکسل کارت. */
#reportPage .student-brand-header{


  top:auto!important;
  inset:auto!important;

}

@media(max-width:700px){body.student-mode #studentPage,
body.student-mode #reportPage{padding-top:38px!important}#studentPage .student-app-card,
#reportPage .reference-report-card{
    height:calc(100% - 38px)!important;
    max-height:calc(100% - 38px)!important;
  }#studentPage .student-quickbar,
#reportPage .student-quickbar{
    top:10px!important;right:8px!important;left:8px!important;
  }
}/* ===== اصلاح ساختاری قطعی: دکمه‌ها واقعاً بیرون کارت + هدر بدون فاصله ===== */
body.student-mode #studentPage,
body.student-mode #reportPage{
  position:relative!important;
  padding:42px 0 0!important;
}#studentPage .student-app-card,
#reportPage .reference-report-card{
  height:100%!important;
  max-height:100%!important;
}#studentPage > .student-quickbar,
#reportPage > .student-quickbar{
  position:absolute!important;
  top:4px!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  overflow:visible!important;
  z-index:100!important;
}
#studentPage .student-brand-header{
  width:calc(100% + 20px)!important;
  margin:-10px -10px 10px!important;
  border-radius:24px 24px 16px 16px!important;
}/* موبایل کارنامه: padding بالا ۱۲px و طرفین ۱۰px است. */
#reportPage .student-brand-header{
  width:calc(100% + 20px)!important;
  margin:-12px -10px 10px!important;
  border-radius:24px 24px 16px 16px!important;
}

@media(min-width:701px){
  /* دسکتاپ کارنامه: padding بالا ۱۸px و طرفین ۱۶px است. */

}/* ===== محاسبه نهایی هدر تا لبه بیرونی کارت ===== */
/* حذف فضای رزروشده اسکرول‌بار که در یک سمت هدر فاصله مصنوعی می‌ساخت. */
#studentPage .student-app-card,
#reportPage .reference-report-card{
  scrollbar-gutter:auto!important;
  scrollbar-width:none!important;
}#studentPage .student-app-card::-webkit-scrollbar,
#reportPage .reference-report-card::-webkit-scrollbar{width:0!important;height:0!important}


@media(min-width:701px){#studentPage .student-brand-header{
    width:calc(100% + 30px)!important;
    margin:-15px -15px 12px!important;
    border-radius:28px 28px 18px 18px!important;
  }/* دسکتاپ کارنامه: راست/چپ 16+2=18 و بالا 18+2=20px. */
  #reportPage .student-brand-header{
    width:calc(100% + 36px)!important;
    margin:-20px -18px 12px!important;
    border-radius:32px 32px 18px 18px!important;
  }
}


@media(max-width:700px){#studentPage .student-brand-header{
    width:calc(100% + 24px)!important;
    margin:-12px -12px 10px!important;
    border-radius:26px 26px 16px 16px!important;
  }/* موبایل کارنامه: طرفین 10+2=12 و بالا 12+2=14px. */
  #reportPage .student-brand-header{
    width:calc(100% + 24px)!important;
    margin:-14px -12px 10px!important;
    border-radius:26px 26px 16px 16px!important;
  }
}.review-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.review-choice{
  min-height:92px;border:2px solid color-mix(in srgb,var(--primary) 32%,#dce7ef 68%);border-radius:18px;
  background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--light) 30%,white 70%));
  color:#24445d;font-weight:950;font-size:.82rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px
}.review-choice span{font-size:1.65rem}.review-choice:hover{transform:translateY(-2px);border-color:var(--primary)}
@media(max-width:520px){.review-choice-grid{grid-template-columns:1fr}.review-choice{min-height:72px;flex-direction:row}}
.student-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}#studentPage[data-grade="3"] .lesson[data-lesson="بند نویسی"]{--lc:#8B5BC7!important;border-color:#8B5BC7!important}#studentPage[data-grade="3"] .lesson[data-lesson="ضرب"]{--lc:#32A66A!important;border-color:#32A66A!important}#studentPage[data-grade="3"] .lesson[data-lesson="اطلاعات عمومی"]{--lc:#E35B9A!important;border-color:#E35B9A!important}#reportPage.staff-report > .student-quickbar{display:none!important}
@media(max-width:520px){}.review1-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:520px){.review1-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review1-choice-grid .review-choice{min-height:78px;flex-direction:column}}/* برای درس‌های بدون سطح، ستون سطح از کارنامه حذف می‌شود. */
#reportPage .reference-level-head.without-level,
#reportPage .reference-level-row.without-level{grid-template-columns:repeat(4,minmax(0,1fr))!important}/* اصلاح نهایی سربرگ‌ها: نمایش کامل پنل اداری و اتصال هدر دانش‌آموز به لبه بالا */
#teacherPage,
#adminPage{height:100%!important;padding:10px 0!important}#teacherPage .app-card,
#adminPage .app-card{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:auto!important;
}#teacherPage .topbar,
#adminPage .topbar{
  margin:0 0 16px!important;
  border-radius:18px!important;
}#teacherPage .teacher-topbar .brand img,
#adminPage .topbar .brand img{
  width:70px!important;
  height:70px!important;
}.staff-exit{
  min-width:52px!important;
  width:52px!important;
  height:28px!important;
  padding:0 7px!important;
  border-radius:9px!important;
  font-size:.55rem!important;
}#studentPage .student-app-card{padding-top:0!important}#studentPage .student-brand-header{margin-top:-2px!important}
@media(max-width:700px){#teacherPage,
#adminPage{padding:8px 0!important}#teacherPage .topbar,
#adminPage .topbar{margin:0 0 12px!important;border-radius:15px!important}#teacherPage .teacher-topbar .brand img,
#adminPage .topbar .brand img{width:64px!important;height:64px!important}.staff-exit{min-width:46px!important;width:46px!important;height:25px!important;padding:0 5px!important;font-size:.5rem!important}
}/* ===== راهنمای رنگی دانش‌آموزان پایه دوم تا ششم ===== */
#guideModal{padding:14px;background:rgba(20,37,58,.58);backdrop-filter:blur(7px)}#guideModal .modal-card{
  width:min(940px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;
  overflow:auto;border-radius:28px;background:#f7fbff;border:1px solid rgba(255,255,255,.85);
  box-shadow:0 26px 75px rgba(17,40,68,.28);scrollbar-color:#91a9c6 transparent
}#guideModal .modal-head{
  position:sticky;top:0;z-index:8;margin:0;padding:11px 14px;
  background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid #e2ebf4
}#guideModal .modal-head strong{font-size:.84rem;color:#29445d}#guideModal .close-btn{flex:0 0 34px;color:#344f67;background:#edf4fa;cursor:pointer}.guide-simple{padding:4px 18px 18px;text-align:right;line-height:2;font-size:.76rem;color:#34485a}.guide-advanced{padding:0 14px 16px;color:#29445d;text-align:right}.guide-advanced[hidden],
.guide-simple[hidden]{display:none!important}.guide-hero{
  position:relative;overflow:hidden;margin:0 -14px 14px;padding:27px 22px 24px;
  color:#fff;text-align:center;background:linear-gradient(125deg,#246fd0 0%,#7359d9 50%,#d94e96 100%)
}.guide-hero::before,
.guide-hero::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.14)}.guide-hero::before{width:155px;height:155px;right:-55px;top:-80px}.guide-hero::after{width:110px;height:110px;left:-35px;bottom:-60px}.guide-hero-icon{display:block;font-size:2.2rem;line-height:1;margin-bottom:8px;filter:drop-shadow(0 5px 8px rgba(19,34,71,.22))}.guide-hero h2{position:relative;margin:0 0 8px;font-size:1.28rem;line-height:1.65;font-weight:950}.guide-hero p{position:relative;max-width:700px;margin:0 auto;font-size:.75rem;line-height:2;color:rgba(255,255,255,.94)}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.guide-card{
  --gc:#3189d8;--gs:#eef7ff;position:relative;overflow:hidden;padding:14px;
  border:1.5px solid color-mix(in srgb,var(--gc) 28%,#dce8f1 72%);border-radius:19px;
  background:linear-gradient(145deg,#fff,var(--gs));box-shadow:0 7px 17px rgba(34,67,96,.07)
}.guide-card::before{content:"";position:absolute;right:0;top:0;width:5px;height:100%;background:var(--gc)}.guide-card.wide{grid-column:1/-1}.guide-card.purple{--gc:#8059cf;--gs:#f5efff}.guide-card.pink{--gc:#d94e96;--gs:#fff0f8}.guide-card.green{--gc:#269868;--gs:#edf9f3}.guide-card.orange{--gc:#e27636;--gs:#fff3eb}.guide-card.gold{--gc:#c48a10;--gs:#fff8e3}.guide-card.blue{--gc:#3189d8;--gs:#eef7ff}.guide-card-title{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--gc);font-size:.86rem;font-weight:950}.guide-card-title span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#fff;box-shadow:0 4px 10px rgba(36,64,91,.09);font-size:1rem}.guide-card p{margin:5px 0;font-size:.69rem;line-height:1.95;color:#385168}.guide-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:9px 0}.guide-level{padding:8px 5px;border-radius:12px;text-align:center;font-size:.65rem;font-weight:950;background:#fff;border:1px solid #dde8f1}.guide-level.easy{color:#17845a;border-color:#9ddbc3;background:#effbf6}.guide-level.medium{color:#b77400;border-color:#f2d58e;background:#fff9e9}.guide-level.hard{color:#c23e73;border-color:#efb0ca;background:#fff1f7}.guide-evaluation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 0}.guide-evaluation-item{padding:8px 4px;border:1px solid #dce7ef;border-radius:11px;background:#fff;text-align:center}.guide-evaluation-item strong{display:block;margin-bottom:3px;font-size:.62rem;color:#284e6b}.guide-evaluation-item span{display:block;font-size:.56rem;font-weight:900;color:#4d6475}.guide-evaluation-item.very-good{background:#ecfaf3;border-color:#a9dec2}.guide-evaluation-item.good{background:#eef7ff;border-color:#add1ec}.guide-evaluation-item.acceptable{background:#fff9e9;border-color:#efd69b}.guide-evaluation-item.effort{background:#fff0f2;border-color:#edbdc5}.guide-table-wrap{width:100%;overflow-x:auto;margin-top:9px;border:1px solid #dbe7f0;border-radius:14px;background:#fff}.guide-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.64rem;text-align:center}.guide-table th{padding:9px 7px;background:color-mix(in srgb,var(--gc) 13%,#fff 87%);color:#29445d;font-weight:950;white-space:nowrap}.guide-table td{padding:9px 7px;border-top:1px solid #e6eef4;color:#40566a;line-height:1.55}.guide-table th:first-child,
.guide-table td:first-child{text-align:right;font-weight:900}.guide-table tr:nth-child(even) td{background:#fbfdff}.guide-note{margin-top:9px!important;padding:8px 10px;border-radius:11px;background:#fff;border:1px dashed color-mix(in srgb,var(--gc) 45%,#dce8f1 55%);font-weight:850}.guide-family{margin-top:11px;padding:14px 15px;border-radius:18px;color:#354e62;background:linear-gradient(135deg,#fff8df,#fff1f7);border:1.5px solid #efcf7a}.guide-family strong{display:block;margin-bottom:5px;color:#9a6400;font-size:.78rem}.guide-family p{margin:4px 0;font-size:.68rem;line-height:1.95}

/* ورود نرم و مرحله‌ای پنجره راهنما */
@keyframes guideBackdropIn{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(7px)}
}
@keyframes guidePanelIn{0%{opacity:0;transform:translateY(38px) scale(.88);filter:blur(5px)}62%{opacity:1;transform:translateY(-7px) scale(1.012);filter:blur(0)}82%{transform:translateY(3px) scale(.997)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
@keyframes guideHeroIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}
}
@keyframes guideIconPop{0%{opacity:0;transform:scale(.3) rotate(-18deg)}68%{opacity:1;transform:scale(1.18) rotate(7deg)}100%{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes guideCardRise{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes guideButtonTap{0%,
100%{transform:scale(1)}45%{transform:scale(.82) rotate(-8deg)}75%{transform:scale(1.13) rotate(5deg)}
}#guideModal.show{animation:guideBackdropIn .3s ease-out both}#guideModal.show .modal-card{transform-origin:center;animation:guidePanelIn .64s cubic-bezier(.2,.9,.22,1.18) both}#guideModal.show .guide-hero{animation:guideHeroIn .5s .18s ease-out both}#guideModal.show .guide-hero-icon{animation:guideIconPop .62s .32s cubic-bezier(.2,.9,.25,1.3) both}#guideModal.show .guide-advanced:not([hidden]) .guide-card{animation:guideCardRise .48s ease-out both}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(1){animation-delay:.3s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(2){animation-delay:.36s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(3){animation-delay:.42s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(4){animation-delay:.48s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(5){animation-delay:.54s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(6){animation-delay:.6s}#guideModal.show .guide-advanced:not([hidden]) .guide-card:nth-child(7){animation-delay:.66s}#guideModal.show .guide-family{animation:guideCardRise .48s .72s ease-out both}.student-quick-btn.guide:active .qi{animation:guideButtonTap .34s ease-out}

@media(max-width:680px){#guideModal{padding:7px}#guideModal .modal-card{width:calc(100vw - 14px);max-height:calc(100dvh - 14px);border-radius:21px}#guideModal .modal-head{padding:8px 10px}.guide-advanced{padding:0 8px 10px}.guide-simple{padding:2px 13px 13px}.guide-hero{margin:0 -8px 10px;padding:20px 12px 18px}.guide-hero-icon{font-size:1.8rem}.guide-hero h2{font-size:1rem}.guide-hero p{font-size:.63rem;line-height:1.85}.guide-grid{grid-template-columns:1fr;gap:8px}.guide-card.wide{grid-column:auto}.guide-card{padding:11px;border-radius:16px}.guide-card-title{font-size:.75rem;margin-bottom:6px}.guide-card-title span{width:28px;height:28px;font-size:.9rem}.guide-card p{font-size:.61rem;line-height:1.85}.guide-level{font-size:.56rem;padding:7px 3px}.guide-table{min-width:560px;font-size:.57rem}.guide-table th,
.guide-table td{padding:8px 6px}.guide-family{padding:11px}.guide-family strong{font-size:.69rem}.guide-family p{font-size:.59rem}
}
@media(prefers-reduced-motion:reduce){#guideModal.show,
#guideModal.show .modal-card,
#guideModal.show .guide-hero,
#guideModal.show .guide-hero-icon,
#guideModal.show .guide-advanced:not([hidden]) .guide-card,
#guideModal.show .guide-family,
.student-quick-btn.guide:active .qi{
    animation:none!important;transform:none!important;filter:none!important;opacity:1!important
  }
}/* ورود نمایشی معلم به پنل واقعی دانش‌آموز */
.teacher-play-launch{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0 0 11px;padding:11px 12px;border:1px solid #bfd4e2;border-radius:12px;
  background:#f2f8fc;color:#173f5b
}.teacher-play-launch div{min-width:0}.teacher-play-launch strong{display:block;font-size:.75rem;font-weight:950;margin-bottom:2px}.teacher-play-launch small{display:block;font-size:.52rem;line-height:1.6;color:#687d8c}.teacher-play-btn{
  flex:0 0 auto;height:38px;padding:0 13px;border:1px solid #1d679d;border-radius:9px;
  background:#2478b5;color:#fff;font-family:inherit;font-size:.62rem;font-weight:950;cursor:pointer
}.teacher-play-btn:hover{background:#1d679d}
@media(max-width:680px){.teacher-play-launch{padding:9px;gap:8px}.teacher-play-launch strong{font-size:.67rem}.teacher-play-launch small{font-size:.47rem}.teacher-play-btn{height:35px;padding:0 9px;font-size:.54rem}
}/* راهنمای رسمی پنل معلم */
#teacherPage .teacher-guide-btn{
  display:none;width:52px;height:28px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:9px;
  background:rgba(255,255,255,.12);color:#fff;font-family:inherit;font-size:.82rem;font-weight:950;cursor:pointer
}#teacherPage .teacher-guide-btn.available{display:grid;place-items:center}#teacherPage .teacher-guide-btn:hover{background:rgba(255,255,255,.22)}#teacherGuideModal{padding:12px;background:rgba(13,38,55,.64);backdrop-filter:blur(5px)}#teacherGuideModal .teacher-guide-modal-card{
  width:min(940px,100%);max-height:calc(100dvh - 24px);padding:0;overflow:hidden;
  display:flex;flex-direction:column;border:1px solid #b8cbd8;border-radius:18px;background:#f3f6f8;
  box-shadow:0 22px 60px rgba(10,39,58,.3)
}.teacher-guide-head{
  flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 16px;background:#173f5b;color:#fff;border-bottom:4px solid #2f80b9
}.teacher-guide-head strong{display:block;font-size:.9rem;font-weight:950}.teacher-guide-head small{display:block;margin-top:3px;font-size:.52rem;opacity:.78}.teacher-guide-head .close-btn{background:#fff;color:#173f5b;border:0;width:36px;height:36px}.teacher-guide-body{overflow:auto;padding:14px;scrollbar-color:#9fb8c9 transparent}.teacher-guide-intro{
  margin:0 0 11px;padding:12px 14px;border-right:5px solid #2f80b9;border-radius:11px;
  background:#fff;color:#405868;font-size:.65rem;line-height:1.95
}.teacher-guide-section{
  margin-bottom:10px;padding:13px 14px;border:1px solid #d4e0e7;border-radius:12px;background:#fff;color:#334e60
}.teacher-guide-section h3{margin:0 0 8px;color:#173f5b;font-size:.76rem;font-weight:950}.teacher-guide-section p{margin:5px 0;font-size:.61rem;line-height:1.95;color:#4d6473}.teacher-guide-section ul{margin:6px 0;padding-right:18px}.teacher-guide-section li{margin:4px 0;font-size:.6rem;line-height:1.85;color:#435c6c}.teacher-guide-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.teacher-guide-metric{padding:9px;border:1px solid #d7e3ea;border-top:3px solid #2f80b9;border-radius:9px;background:#f8fbfd}.teacher-guide-metric strong{display:block;margin-bottom:4px;color:#174f75;font-size:.62rem}.teacher-guide-metric span{display:block;color:#647985;font-size:.53rem;line-height:1.7}.teacher-guide-preview{border-color:#aac9dc;background:#f2f8fc}.teacher-guide-preview h3{color:#155c8b}.teacher-guide-note{padding:9px 10px;border-radius:9px;background:#fff8e8;border:1px solid #efd49b;color:#76541e!important}.teacher-guide-table-wrap{width:100%;overflow-x:auto;margin-top:8px;border:1px solid #d3e0e8;border-radius:10px}.teacher-guide-table{width:100%;min-width:620px;border-collapse:collapse;text-align:center;font-size:.55rem;background:#fff}.teacher-guide-table th{padding:8px 6px;background:#e8f0f5;color:#173f5b;font-weight:950;white-space:nowrap}.teacher-guide-table td{padding:8px 6px;border-top:1px solid #e0e8ed;color:#405a6b;line-height:1.55}.teacher-guide-table th:first-child,
.teacher-guide-table td:first-child{text-align:right;font-weight:900}.teacher-guide-table tr:nth-child(even) td{background:#f8fafb}.teacher-guide-table.evaluation-table{min-width:0}.teacher-guide-final{
  margin:0;padding:13px 14px;border:1px solid #9fc3d8;border-radius:12px;background:#eaf4fa;
  color:#254f69;font-size:.63rem;line-height:2
}
@keyframes teacherGuideBackdropIn{from{opacity:0}to{opacity:1}}
@keyframes teacherGuidePanelIn{from{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes teacherGuideHeadIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}
}
@keyframes teacherGuideSectionIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}
}#teacherGuideModal.show{animation:teacherGuideBackdropIn .26s ease-out both}#teacherGuideModal.show .teacher-guide-modal-card{animation:teacherGuidePanelIn .46s cubic-bezier(.2,.82,.25,1.08) both}#teacherGuideModal.show .teacher-guide-head{animation:teacherGuideHeadIn .34s .12s ease-out both}#teacherGuideModal.show .teacher-guide-intro,
#teacherGuideModal.show .teacher-guide-section,
#teacherGuideModal.show .teacher-guide-final{opacity:0;animation:teacherGuideSectionIn .38s ease-out both}#teacherGuideModal.show .teacher-guide-intro{animation-delay:.18s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(1){animation-delay:.23s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(2){animation-delay:.27s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(3){animation-delay:.31s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(4){animation-delay:.35s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(5){animation-delay:.39s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(6){animation-delay:.43s}#teacherGuideModal.show .teacher-guide-section:nth-of-type(n/**/+7){animation-delay:.47s}#teacherGuideModal.show .teacher-guide-final{animation-delay:.51s}
@media(max-width:680px){#teacherPage .teacher-topbar .actions{gap:4px}#teacherPage .teacher-guide-btn{width:46px;height:25px;border-radius:8px;font-size:.72rem}#teacherGuideModal{padding:6px}#teacherGuideModal .teacher-guide-modal-card{max-height:calc(100dvh - 12px);border-radius:14px}.teacher-guide-head{padding:10px}.teacher-guide-head strong{font-size:.75rem}.teacher-guide-head small{font-size:.46rem}.teacher-guide-head .close-btn{width:33px;height:33px}.teacher-guide-body{padding:8px}.teacher-guide-intro{padding:9px 10px;font-size:.56rem}.teacher-guide-section{padding:10px;margin-bottom:7px}.teacher-guide-section h3{font-size:.67rem}.teacher-guide-section p,
.teacher-guide-section li{font-size:.53rem}.teacher-guide-metrics{grid-template-columns:1fr}.teacher-guide-metric{padding:8px}.teacher-guide-metric strong{font-size:.57rem}.teacher-guide-metric span{font-size:.49rem}.teacher-guide-table{font-size:.5rem}.teacher-guide-final{font-size:.55rem;padding:10px}.guide-evaluation{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-evaluation-item strong{font-size:.56rem}.guide-evaluation-item span{font-size:.51rem}
}
@media(prefers-reduced-motion:reduce){#teacherGuideModal.show,
#teacherGuideModal.show .teacher-guide-modal-card,
#teacherGuideModal.show .teacher-guide-head,
#teacherGuideModal.show .teacher-guide-intro,
#teacherGuideModal.show .teacher-guide-section,
#teacherGuideModal.show .teacher-guide-final{
    animation:none!important;transform:none!important;opacity:1!important
  }
}/* نمایش دقیق پیشرفت بند نویسی در کارنامه */
#reportPage .reference-unit-heading.paragraph-heading{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;flex-wrap:wrap!important;
}#reportPage .reference-unit-heading.paragraph-heading small{
  padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.52);
  color:#fff;font-size:.58rem;font-weight:900;text-shadow:none;
}
@media(max-width:700px){#reportPage .reference-unit-heading.paragraph-heading{gap:5px!important}#reportPage .reference-unit-heading.paragraph-heading small{font-size:.49rem;padding:3px 7px}
}/* ===== اصلاحات 2026-09-05: رنگ دلخواه، ورود رنگ‌ها و عنوان یکپارچهٔ کارنامه ===== */
#themeModal .theme-grid{
  perspective:700px;
}#themeModal .theme-option.theme-enter{
  animation:themeColorEnter .58s cubic-bezier(.18,.89,.32,1.28) both;
  animation-delay:calc(var(--theme-order,0) * 55ms);
  transform-origin:50% 70%;
  will-change:transform,opacity,filter;
}#themeModal .theme-option.theme-enter .swatch{
  animation:themeSwatchGlow .72s cubic-bezier(.18,.89,.32,1.18) both;
  animation-delay:calc((var(--theme-order,0) * 55ms) + 70ms);
}
@keyframes themeColorEnter{0%{opacity:0;transform:translateY(18px) scale(.72) rotate(-7deg);filter:blur(3px)}62%{opacity:1;transform:translateY(-3px) scale(1.045) rotate(1.5deg);filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:blur(0)}
}
@keyframes themeSwatchGlow{0%{transform:scale(.72);filter:saturate(.75) brightness(.95)}58%{transform:scale(1.12);filter:saturate(1.18) brightness(1.05)}100%{transform:scale(1);filter:saturate(1) brightness(1)}
}/* عنوان کارنامه در نمای دانش‌آموز حذف و در نمای کارکنان نمایش داده می‌شود. */
#reportPage .reference-report-header{
  min-height:42px!important;
  margin:2px 0 9px!important;
  padding:2px 52px 7px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}#reportPage .reference-report-header > div{
  width:auto!important;
  max-width:100%!important;
  display:flex!important;
  justify-content:center!important;
}#reportPage .reference-report-header h2{
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0 11px 8px!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  color:color-mix(in srgb,var(--primary) 70%,#263f53 30%)!important;
  font-size:1.08rem!important;
  line-height:1.45!important;
  font-weight:950!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}#reportPage .reference-report-header h2::before{

  font-size:.94em;
  line-height:1;
  filter:saturate(.9);
}#reportPage .reference-report-header h2::after{
  content:"";
  position:absolute;
  right:18%;left:18%;bottom:0;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--primary),var(--secondary),transparent);
  opacity:.68;
}#reportPage .reference-report-back{
  left:2px!important;
}

@media(max-width:700px){#reportPage .reference-report-header{
    min-height:38px!important;
    margin:0 0 7px!important;
    padding:1px 44px 6px!important;
  }#reportPage .reference-report-header h2{
    font-size:.94rem!important;
    padding-bottom:7px!important;
  }#reportPage .reference-report-back{
    width:33px!important;height:33px!important;
  }
}

@media(prefers-reduced-motion:reduce){#themeModal .theme-option.theme-enter,
#themeModal .theme-option.theme-enter .swatch{
    animation:none!important;
  }
}#review1Modal .review-choice,
#reviewModal .review-choice{
    gap:0!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:1rem!important;
    font-weight:950!important;
  }#review1Modal .review-choice span,
#reviewModal .review-choice span{
    display:none!important;
  }
  @media(max-width:520px){#review1Modal .review-choice,
#reviewModal .review-choice{
      flex-direction:column!important;
    }
  }/* اصلاح کارنامه: حذف ایموجی کنار عنوان و چسباندن هدر دانش‌آموز به لبه بالای کارت اصلی */
#reportPage .reference-report-header h2::before{
  content:none!important;
  display:none!important;
}#reportPage .reference-report-header h2{gap:0!important;}#reportPage:not(.staff-report) .reference-report-card{
  padding-top:0!important;
}#reportPage:not(.staff-report) .student-brand-header{
  margin-top:-2px!important;
}
@media(max-width:700px){#reportPage:not(.staff-report) .reference-report-card{padding-top:0!important;}#reportPage:not(.staff-report) .student-brand-header{margin-top:-2px!important;}
}/* ===== یکسان‌سازی لوگوی هدر دروس با لوگوی کارنامه ===== */
#studentPage .student-brand-header .brand img{
  width:76px!important;
  height:38px!important;
  flex:0 0 76px!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
@media(max-width:700px){#studentPage .student-brand-header .brand img{
    width:70px!important;
    height:35px!important;
    flex:0 0 70px!important;
  }
}/* یکسان‌سازی اندازه قاب اصلی کارنامه دانش‌آموز با قاب اصلی دروس */
#reportPage:not(.staff-report) .reference-report-card{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  margin-left:0!important;
  margin-right:0!important;
}/* ===== هماهنگ‌سازی صفحه ورود با اندازهٔ صفحات اصلی | 2026-09-05 ===== */
#loginPage{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:42px 0 0!important;
  box-sizing:border-box!important;
}#loginPage .login-card{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  margin:0!important;
}#loginPage .login-card > .login-title,
#loginPage .login-card > .login-sub,
#loginPage .login-card > .role-tabs,
#loginPage .login-card > .field,
#loginPage .login-card > .error,
#loginPage .login-card > .primary-btn{
  width:100%!important;
  max-width:446px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}#loginPage > .login-quickbar{
  position:absolute!important;
  top:4px!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  height:32px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  pointer-events:none!important;
  z-index:100!important;
}#loginPage > .login-quickbar .student-quick-btn{pointer-events:auto!important}
@media(max-width:700px){#loginPage{padding-top:42px!important}#loginPage .login-card > .login-title,
#loginPage .login-card > .login-sub,
#loginPage .login-card > .role-tabs,
#loginPage .login-card > .field,
#loginPage .login-card > .error,
#loginPage .login-card > .primary-btn{max-width:446px!important}#loginPage > .login-quickbar{top:4px!important;height:32px!important}
}/* ===== بازطراحی نهایی صفحه ورود: بدون انیمیشن ورود ===== */
#loginPage .login-card{
  display:flex!important;
  flex-direction:column!important;
}#loginPage .login-card::before{
  content:"";position:absolute;z-index:-1;top:0;right:0;left:0;height:9px;
  background:linear-gradient(90deg,var(--primary),var(--secondary),color-mix(in srgb,var(--secondary) 60%,#8f77d9 40%));
}#loginPage .login-title{
  width:100%!important;text-align:center!important;
}#loginPage .login-title::after{
  width:54px!important;height:4px!important;margin:8px auto 0!important;opacity:.55!important;
  background:linear-gradient(90deg,var(--primary),var(--secondary))!important;
}#loginPage .login-sub{
  width:100%!important;text-align:center!important;
}#loginPage .role-tabs{
  display:grid!important;
}#loginPage .role-tab{
  --role-c:var(--primary);
  position:relative!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease!important;
}#loginPage .role-tab[data-role="student"]{--role-c:#3186c7}#loginPage .role-tab[data-role="teacher"]{--role-c:#d45491}#loginPage .role-tab[data-role="admin"]{--role-c:#7b63bf}#loginPage .role-tab::before{position:absolute;top:0;right:24%;left:24%;height:4px;border-radius:0 0 7px 7px;
  background:var(--role-c);opacity:.38;
}#loginPage .role-tab:hover{
  transform:none!important;
}#loginPage .role-tab.active{
  color:color-mix(in srgb,var(--role-c) 80%,#243746 20%)!important;
  border-color:color-mix(in srgb,var(--role-c) 58%,#d7e0e8 42%)!important;
  background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--role-c) 8%,#fff 92%))!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--role-c) 14%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--role-c) 8%,white 92%)!important;
}#loginPage .role-tab.active::before{right:16%;left:16%;height:5px;opacity:1}#loginPage .role-icon{font-size:0!important;
}#loginPage .role-icon svg{display:block}#loginPage .field{text-align:right!important;
}#loginPage .field label{
  display:block!important;
}#loginPage .field input::placeholder{color:#9aa3ab!important;font-weight:650!important}#loginPage .field input:focus,
#loginPage .field select:focus{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 11%,transparent),0 5px 12px rgba(49,64,79,.05)!important;
}#loginPage .eye{
  display:grid!important;place-items:center!important;
}#loginPage .eye svg{display:block}#loginPage .primary-btn{
  box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 24%,transparent)!important;
}#loginPage .primary-btn:active{transform:scale(.99)!important}#loginPage .error{
  width:100%!important;margin:0 auto 10px!important;
  border:1px solid #efc5c8!important;background:#fff5f5!important;
  color:#a43c44!important;text-align:center!important;
}
@media(max-width:700px){#loginPage .logo{border-radius:21px!important;padding:6px!important;}#loginPage .login-title{margin-bottom:2px!important}#loginPage .login-title::after{width:45px!important;height:3px!important;margin-top:6px!important}#loginPage .role-tabs{max-width:446px!important}
}
@media(max-width:380px){#loginPage .role-tabs{gap:5px!important}#loginPage .role-tab{min-height:66px!important}#loginPage .role-icon{width:31px!important;height:31px!important}#loginPage .role-label{font-size:.55rem!important}
}/* ===== Login professional refinement | 2026-09-05 ===== */
#loginPage .role-tab:hover{border-color:#cbd6dd!important;box-shadow:none!important;
}#loginPage .role-tab.active{
  background:color-mix(in srgb,var(--role-c) 6%,#fff 94%)!important;
  border-color:color-mix(in srgb,var(--role-c) 48%,#cfd9e0 52%)!important;
  color:color-mix(in srgb,var(--role-c) 78%,#263845 22%)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--role-c) 6%,transparent)!important;
}#loginPage .field input:focus,
#loginPage .field select:focus{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)!important;
}#loginPage .primary-btn{
  box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
@media(max-width:700px){
}/* ===== Login balanced professional design | 2026-09-05 ===== */
#loginPage .login-card{
  position:relative!important;
  overflow:hidden!important;
}#loginPage .login-card::before{display:none!important}#loginPage .login-card::after{
  content:"";position:absolute;z-index:-1;left:-62px;top:21%;width:150px;height:150px;border-radius:50%;
  background:color-mix(in srgb,var(--primary) 6%,transparent);filter:blur(2px);pointer-events:none
}#loginPage .role-tabs{margin-bottom:17px!important;
}#loginPage .role-tab:hover{
  border-color:color-mix(in srgb,var(--role-c) 34%,#d6e0e7 66%)!important;
  box-shadow:0 7px 16px color-mix(in srgb,var(--role-c) 8%,transparent)!important;
}#loginPage .role-tab.active{
  background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--role-c) 9%,#fff 91%))!important;
  border-color:color-mix(in srgb,var(--role-c) 58%,#d4dee5 42%)!important;
  box-shadow:0 7px 17px color-mix(in srgb,var(--role-c) 12%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--role-c) 7%,white 93%)!important;
}#loginPage .field{margin-bottom:11px!important}#loginPage .field input:hover,
#loginPage .field select:hover{background:#fff!important}#loginPage .field input:focus,
#loginPage .field select:focus{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent),0 6px 14px rgba(37,57,73,.055)!important;
}#loginPage .primary-btn{margin-top:3px!important;
  box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 22%,transparent)!important;
}
@media(max-width:700px){#loginPage .role-icon{border-radius:11px!important}
}/* ===== Marefat student entrance + in-page game host (clean rebuild) ===== */
#marefatEarlyStudentSplash{
  position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;
  background:linear-gradient(125deg,#ffd9eb 0%,#ffcfe7 20%,#e7f2ff 42%,#fff0c4 64%,#e2f8e9 84%,#ece4ff 100%);
  pointer-events:none;overflow:hidden
}html.marefat-student-boot #marefatEarlyStudentSplash{display:flex}html.marefat-student-boot #loginPage{visibility:hidden!important}#marefatEarlyStudentSplash img{
  display:block;width:min(80vw,700px);max-height:44vh;object-fit:contain;
  filter:drop-shadow(0 16px 30px rgba(41,64,92,.12));transform:translateZ(0) scale(.98)
}#marefatStudentIntro{
  position:fixed;inset:0;z-index:2147483001;overflow:hidden;pointer-events:none;
  background:linear-gradient(125deg,#ffd9eb 0%,#ffcfe7 20%,#e7f2ff 42%,#fff0c4 64%,#e2f8e9 84%,#ece4ff 100%)
}#marefatStudentIntroLogo{
  position:fixed;display:block;object-fit:contain;margin:0;padding:0;border:0;background:transparent;
  opacity:0;transform:translateZ(0) scale(.965);will-change:left,top,width,height,opacity,transform,filter;
  filter:drop-shadow(0 16px 30px rgba(41,64,92,.13))
}body.student-intro-running{overflow:hidden!important}body.student-intro-running #studentPage .student-brand-header .brand img{opacity:0!important}#marefatGameHost{
  position:fixed;inset:0;z-index:2147482500;background:#fff;display:block
}#marefatGameHost iframe{display:block;width:100%;height:100%;border:0;background:#fff}body.marefat-game-open{overflow:hidden!important}

/* ===== اصلاح مرحله‌ای صفحه دانش‌آموز: قاب موبایل، هدر، خروج و ناوبری ===== */
.student-exit{
  width:36px!important;
  min-width:36px!important;
  height:36px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
}
.student-exit svg{width:20px;height:20px;display:block}

.student-nav-btn[data-nav="lessons"],
.student-nav-btn[data-nav="report"]{
  --navc:var(--primary)!important;
  --navsoft:color-mix(in srgb,var(--primary) 10%,white 90%)!important;
}
.student-nav-btn::before{opacity:0!important}
.student-nav-btn.active::before{opacity:.9!important}


#reportPage:not(.staff-report) .reference-report-header{display:none!important}

@media(max-width:700px){
  html,
  body{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important}
  body.student-mode{padding:10px 8px 86px!important}
  body.student-mode .shell{height:auto!important;min-height:calc(100dvh - 96px)!important}
  body.student-mode #studentPage,
  body.student-mode #reportPage{
    height:auto!important;
    min-height:0!important;
    padding:38px 0 0!important;
    overflow:visible!important;
  }
  #studentPage .student-app-card,
  #reportPage:not(.staff-report) .reference-report-card{
    width:calc(100% - 18px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto 14px!important;
    overflow:visible!important;
  }
  #studentPage .student-brand-header,
  #reportPage:not(.staff-report) .student-brand-header{
    top:8px!important;
  }
  .student-exit{
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    border-radius:10px!important;
  }
  .student-exit svg{width:19px;height:19px}
  #studentPage .student-nav,
  #reportPage:not(.staff-report) .student-nav{
    position:fixed!important;
    right:auto!important;
    left:50%!important;
    bottom:max(10px,env(safe-area-inset-bottom))!important;
    transform:translateX(-50%)!important;
    z-index:90!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:0 10px 28px rgba(40,57,74,.18)!important;
    backdrop-filter:blur(12px)!important;
  }
  .student-nav-btn{
    border-color:color-mix(in srgb,var(--primary) 24%,#d5e3ed 76%)!important;
    color:color-mix(in srgb,var(--primary) 56%,#526678 44%)!important;
    box-shadow:none!important;
  }
  .student-nav-btn.active{
    border-color:color-mix(in srgb,var(--primary) 56%,#c8d9e5 44%)!important;
    background:color-mix(in srgb,var(--primary) 10%,white 90%)!important;
    color:var(--primary)!important;
  }
}

/* ===== صفحه دانش‌آموز: قاب ثابت با اسکرول داخلی و ناوبری چسبیده ===== */
html,
body{height:100%!important;overflow:hidden!important}
body.student-mode{padding:10px!important;overflow:hidden!important}
body.student-mode .shell{
  width:min(1050px,100%)!important;
  height:calc(100dvh - 20px)!important;
  min-height:0!important;
}
body.student-mode #studentPage,
body.student-mode #reportPage:not(.staff-report){
  position:relative!important;
  height:100%!important;
  min-height:0!important;
  padding:50px 0 0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.student-mode #studentPage.active,
body.student-mode #reportPage.active:not(.staff-report){
  display:flex!important;
  flex-direction:column!important;
}

/* ابزارهای ظاهر و راهنما بالای قاب می‌مانند و با آن تداخل ندارند. */
body.student-mode #studentPage > .student-quickbar,
body.student-mode #reportPage:not(.staff-report) > .student-quickbar{
  position:absolute!important;
  top:8px!important;
  right:4px!important;
  left:4px!important;
  width:auto!important;
  height:32px!important;
  z-index:100!important;
}

/* قاب دروس و کارنامه دقیقاً یک اندازه و یک ساختار دارند. */
#studentPage .student-app-card,
#reportPage:not(.staff-report) .reference-report-card{
  --student-card-pad:15px;
  flex:1 1 auto!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:var(--student-card-pad)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* در کارنامه، پوستهٔ دانش‌آموز در چیدمان کارت حل می‌شود تا هدر و منو ثابت بمانند. */
#reportPage:not(.staff-report) .student-page-chrome{display:contents!important}

#studentPage .student-brand-header,
#reportPage:not(.staff-report) .student-brand-header{
  position:relative!important;
  flex:0 0 auto!important;
  order:0!important;
  top:auto!important;
  inset:auto!important;
  z-index:20!important;
  border-radius:28px 28px 17px 17px!important;
}

/* فقط بخش میانی حرکت می‌کند. */
#studentPage .lessons-grid,
#reportPage:not(.staff-report) .reference-report-content{
  flex:1 1 auto!important;
  order:1!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
#studentPage .lessons-grid{align-content:start!important;padding:2px 2px 8px!important}
#reportPage:not(.staff-report) .reference-report-content{padding:1px 2px 8px!important}
#reportPage:not(.staff-report) .reference-report-list-wrap{
  max-height:none!important;
  overflow:visible!important;
}

/* منوی پایین تمام عرض قاب را می‌گیرد و به سه لبهٔ آن می‌چسبد. */
#studentPage .student-nav,
#reportPage:not(.staff-report) .student-nav{
  position:relative!important;
  flex:0 0 auto!important;
  order:2!important;
  right:auto!important;
  left:auto!important;
  bottom:auto!important;
  width:calc(100% + 30px)!important;
  max-width:none!important;
  margin:10px -15px -15px!important;
  padding:7px!important;
  transform:none!important;
  z-index:20!important;
  border-radius:17px 17px 28px 28px!important;
  backdrop-filter:blur(10px)!important;
}

@media(max-width:700px){
  body.student-mode #studentPage,
  body.student-mode #reportPage:not(.staff-report){
    padding:48px 5px 3px!important;
  }
  body.student-mode #studentPage > .student-quickbar,
  body.student-mode #reportPage:not(.staff-report) > .student-quickbar{
    top:9px!important;
    right:8px!important;
    left:8px!important;
    height:29px!important;
  }
  #studentPage .student-app-card,
  #reportPage:not(.staff-report) .reference-report-card{
    --student-card-pad:12px;
    border-radius:24px!important;
  }
  #studentPage .student-brand-header,
  #reportPage:not(.staff-report) .student-brand-header{
    margin-bottom:8px!important;
    border-radius:24px 24px 15px 15px!important;
  }
  #studentPage .student-nav,
  #reportPage:not(.staff-report) .student-nav{
    width:calc(100% + 24px)!important;
    margin:8px -12px -12px!important;
    padding:6px!important;
    border-radius:15px 15px 24px 24px!important;
  }
  .student-nav-btn{height:48px!important}
}

/* ===== پرداخت نهایی ناوبری و خلاصهٔ پیشرفت دانش‌آموز ===== */
body.student-mode #studentPage,
body.student-mode #reportPage:not(.staff-report){
  padding-top:46px!important;
}

#studentPage .student-nav,
#reportPage:not(.staff-report) .student-nav{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
  background:rgba(255,255,255,.96)!important;
  border:0!important;
  border-top:1px solid color-mix(in srgb,var(--primary) 18%,#d8e4ec 82%)!important;
  box-shadow:0 -6px 18px rgba(37,64,84,.07)!important;
}
#studentPage .student-nav-btn,
#reportPage:not(.staff-report) .student-nav-btn{
  height:52px!important;
  min-width:0!important;
  padding:5px 8px!important;
  gap:2px!important;
  color:#6d7f8d!important;
  background:transparent!important;
  border:0!important;
  border-radius:12px!important;
  box-shadow:none!important;
  transform:none!important;
}
#studentPage .student-nav-btn::before,
#reportPage:not(.staff-report) .student-nav-btn::before{display:none!important}
#studentPage .student-nav-btn.active,
#reportPage:not(.staff-report) .student-nav-btn.active{
  color:var(--primary)!important;
  background:color-mix(in srgb,var(--primary) 9%,white 91%)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 14%,transparent)!important;
}
.student-nav-icon{
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-size:contain!important;
  mask-size:contain!important;
}


#studentPage .student-nav-btn b,
#reportPage:not(.staff-report) .student-nav-btn b{
  font-size:.58rem!important;
  line-height:1.25!important;
  font-weight:900!important;
}

/* انتخاب درس و دو شاخص، یک خلاصهٔ واحد هستند؛ اطلاعات حذف نشده است. */
#reportPage:not(.staff-report) .reference-report-summary{
  margin:2px 0 12px!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.82)!important;
  border:1.5px solid color-mix(in srgb,var(--primary) 22%,#d9e5ed 78%)!important;
  border-radius:17px!important;
  box-shadow:0 6px 16px rgba(42,74,96,.055)!important;
}
#reportPage:not(.staff-report) .reference-report-filters{
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#reportPage:not(.staff-report) .reference-report-filters label{
  color:#566b7b!important;
  font-size:.6rem!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
#reportPage.staff-report .reference-report-filters label{display:none!important}
#reportPage:not(.staff-report) .reference-report-filters select{
  height:38px!important;
  min-width:0!important;
  padding:0 10px!important;
  color:#29485f!important;
  background:#fff!important;
  border:1px solid color-mix(in srgb,var(--primary) 22%,#d4e0e8 78%)!important;
  border-radius:10px!important;
  box-shadow:none!important;
  font-size:.67rem!important;
  font-weight:850!important;
}
#reportPage:not(.staff-report) .reference-report-overview{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border-top:1px solid color-mix(in srgb,var(--primary) 14%,#dce6ed 86%)!important;
}
#reportPage:not(.staff-report) .reference-report-overview-item{
  min-height:58px!important;
  padding:8px 6px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#reportPage:not(.staff-report) .reference-report-overview-item + .reference-report-overview-item{
  border-right:1px solid color-mix(in srgb,var(--primary) 14%,#dce6ed 86%)!important;
}
#reportPage:not(.staff-report) .reference-report-overview-item::before{display:none!important}
#reportPage:not(.staff-report) .reference-report-overview-item span{
  color:#718391!important;
  font-size:.53rem!important;
  font-weight:800!important;
}
#reportPage:not(.staff-report) .reference-report-overview-item strong{
  margin-top:2px!important;
  color:var(--primary)!important;
  font-size:.92rem!important;
  font-weight:950!important;
}

@media(max-width:700px){
  body.student-mode #studentPage,
  body.student-mode #reportPage:not(.staff-report){padding-top:44px!important}
  #studentPage .student-nav-btn,
  #reportPage:not(.staff-report) .student-nav-btn{height:49px!important}

  #studentPage .student-nav-btn b,
  #reportPage:not(.staff-report) .student-nav-btn b{font-size:.56rem!important}
  #reportPage:not(.staff-report) .reference-report-summary{border-radius:15px!important}
  #reportPage:not(.staff-report) .reference-report-filters{padding:8px!important;gap:8px!important}
  #reportPage:not(.staff-report) .reference-report-filters select{height:36px!important;font-size:.63rem!important}
  #reportPage:not(.staff-report) .reference-report-overview-item{min-height:54px!important;padding:7px 4px!important}
}

/* ===== رفع بازخورد نمایش: هدر لب‌به‌لب، آیکون سازگار و عناوین دقیق ===== */
#studentPage .student-brand-header,
#reportPage:not(.staff-report) .student-brand-header{
  width:calc(100% + 34px)!important;
  margin:-17px -17px 8px!important;
}
.student-nav-icon{
  display:block!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  object-fit:contain!important;
  background:transparent!important;
  -webkit-mask:none!important;
  mask:none!important;
  opacity:.72!important;
  filter:none!important;
}
.student-nav-btn.active .student-nav-icon{opacity:1!important}
#reportPage:not(.staff-report) .reference-report-filters{
  display:block!important;
  padding:8px 10px!important;
}
#reportPage:not(.staff-report) .reference-report-filters select{width:100%!important}

@media(max-width:700px){
  #studentPage .student-brand-header,
  #reportPage:not(.staff-report) .student-brand-header{
    width:calc(100% + 28px)!important;
    margin:-14px -14px 8px!important;
  }
  .student-nav-icon{width:21px!important;height:21px!important;flex-basis:21px!important}
}

/* ===== صفحهٔ ورود حرفه‌ای و فشرده؛ هماهنگ با هویت معرفت ===== */
#loginPage .login-card{
  isolation:isolate!important;
  justify-content:center!important;
  align-items:stretch!important;
  padding:24px 22px 22px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  background:rgba(255,255,255,.965)!important;
  border-radius:28px!important;
  box-shadow:0 18px 44px rgba(38,60,78,.13),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
#loginPage .login-card::before,
#loginPage .login-card::after{display:none!important;content:none!important}

#loginPage .logo{
  width:132px!important;
  height:66px!important;
  margin:0 auto 8px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 6px 11px rgba(48,64,78,.07))!important;
}
#loginPage .logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#loginPage .login-title{
  max-width:450px!important;
  margin:0 auto 1px!important;
  color:#263b4b!important;
  font-size:1.2rem!important;
  line-height:1.6!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
}
#loginPage .login-title::after{display:none!important;content:none!important}
#loginPage .login-sub{
  max-width:450px!important;
  margin:0 auto 15px!important;
  color:#7b8892!important;
  font-size:.66rem!important;
  line-height:1.7!important;
  font-weight:720!important;
}

/* سه نقش، کارت‌های هم‌اندازه و همیشه قابل مشاهده هستند. */
#loginPage .role-tabs{
  width:100%!important;
  max-width:438px!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 auto 14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#loginPage .role-tab{
  min-width:0!important;
  min-height:70px!important;
  padding:7px 4px!important;
  gap:4px!important;
  background:#fff!important;
  border:1px solid #d9e2e8!important;
  border-radius:12px!important;
  color:#647582!important;
  box-shadow:none!important;
  transform:none!important;
}
#loginPage .role-tab::before{display:none!important;content:none!important}
#loginPage .role-tab:hover{
  background:#fff!important;
  border-color:color-mix(in srgb,var(--role-c) 34%,#d5e0e7 66%)!important;
  box-shadow:0 4px 11px color-mix(in srgb,var(--role-c) 7%,transparent)!important;
}
#loginPage .role-tab.active{
  color:color-mix(in srgb,var(--role-c) 82%,#263845 18%)!important;
  background:color-mix(in srgb,var(--role-c) 6%,white 94%)!important;
  border-color:color-mix(in srgb,var(--role-c) 54%,#d4dfe6 46%)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--role-c) 7%,transparent)!important;
}
#loginPage .role-icon{
  width:34px!important;
  height:34px!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  color:var(--role-c)!important;
  background:transparent!important;
  border:0!important;
  border-radius:9px!important;
}
#loginPage .role-icon svg{width:21px!important;height:21px!important}
#loginPage .role-label{
  color:inherit!important;
  font-size:.62rem!important;
  line-height:1.25!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

#loginPage .field{
  width:100%!important;
  max-width:420px!important;
  margin:0 auto 9px!important;
}
#loginPage .field label{
  margin:0 2px 4px!important;
  color:#52636f!important;
  font-size:.64rem!important;
  font-weight:850!important;
}
#loginPage .field input,
#loginPage .field select{
  height:45px!important;
  padding:0 12px!important;
  color:#253b4a!important;
  background:#fff!important;
  border:1px solid #ccd8e0!important;
  border-radius:10px!important;
  box-shadow:none!important;
  font-size:.76rem!important;
  font-weight:720!important;
}
#loginPage .field input:hover,
#loginPage .field select:hover{border-color:#b8c7d1!important}
#loginPage .field input:focus,
#loginPage .field select:focus{
  border-color:var(--primary)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 9%,transparent)!important;
}
#loginPage .eye{
  left:7px!important;
  width:32px!important;
  height:32px!important;
  color:#71828e!important;
  background:transparent!important;
  border:0!important;
  border-radius:8px!important;
}
#loginPage .eye:hover{color:var(--primary)!important;background:#f3f6f8!important}
#loginPage .eye svg{width:17px!important;height:17px!important}
#loginPage .primary-btn{
  width:100%!important;
  max-width:420px!important;
  min-height:46px!important;
  margin:3px auto 0!important;
  padding:0 16px!important;
  color:#fff!important;
  background:var(--primary)!important;
  border:0!important;
  border-radius:10px!important;
  box-shadow:0 8px 17px color-mix(in srgb,var(--primary) 17%,transparent)!important;
  font-size:.82rem!important;
  font-weight:950!important;
}
#loginPage .primary-btn:hover{filter:brightness(.97)!important}
#loginPage .error{max-width:420px!important;border-radius:9px!important;font-size:.64rem!important}

@media(max-width:700px){
  #loginPage{padding:42px 5px 3px!important}
  #loginPage .login-card{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    padding:15px 11px 14px!important;
    border-radius:24px!important;
  }
  #loginPage .logo{width:108px!important;height:55px!important;margin-bottom:5px!important}
  #loginPage .login-title{font-size:1.02rem!important}
  #loginPage .login-sub{font-size:.58rem!important;margin-bottom:11px!important}
  #loginPage .role-tabs{gap:5px!important;margin-bottom:11px!important}
  #loginPage .role-tab{min-height:62px!important;padding:5px 3px!important;gap:2px!important;border-radius:10px!important}
  #loginPage .role-icon{width:29px!important;height:29px!important}
  #loginPage .role-icon svg{width:19px!important;height:19px!important}
  #loginPage .role-label{font-size:.56rem!important}
  #loginPage .field{margin-bottom:7px!important}
  #loginPage .field label{font-size:.58rem!important;margin-bottom:3px!important}
  #loginPage .field input,
  #loginPage .field select{height:42px!important;border-radius:9px!important;font-size:.7rem!important}
  #loginPage .primary-btn{min-height:43px!important;border-radius:9px!important;font-size:.76rem!important}
}

@media(max-height:650px) and (max-width:700px){
  #loginPage .login-card{justify-content:flex-start!important}
  #loginPage .logo{width:90px!important;height:44px!important;margin-bottom:3px!important}
  #loginPage .login-sub{margin-bottom:8px!important}
  #loginPage .role-tabs{margin-bottom:8px!important}
  #loginPage .role-tab{min-height:55px!important}
  #loginPage .field{margin-bottom:6px!important}
}

/* ===== اصلاح مرحله‌ای پنل معلم و کارنامهٔ مشترک ===== */
/* هدر معلم: بدون نوار تزئینی، با نام و پایهٔ واقعی. */
#teacherPage .teacher-topbar{
  min-height:58px!important;
  padding:8px 12px!important;
  margin:0 0 11px!important;
  border:0!important;
  border-radius:14px!important;
}
#teacherPage .teacher-topbar::after{display:none!important;content:none!important}
#teacherPage .teacher-topbar .brand{gap:9px!important;min-width:0!important}
#teacherPage .teacher-topbar .brand img{
  width:52px!important;
  height:42px!important;
  flex:0 0 52px!important;
  object-fit:contain!important;
}
#teacherPage .teacher-head-text{min-width:0!important}
#teacherPage .teacher-head-text strong{
  display:block!important;
  color:#fff!important;
  font-size:.84rem!important;
  font-weight:950!important;
  line-height:1.45!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#teacherPage .teacher-head-text small{
  display:block!important;
  margin-top:1px!important;
  color:rgba(255,255,255,.82)!important;
  font-size:.56rem!important;
  font-weight:750!important;
  line-height:1.45!important;
}
#teacherPage .teacher-topbar .actions{
  flex:0 0 auto!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
}
#teacherPage .staff-exit,
#teacherPage .teacher-guide-btn{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  padding:0!important;
  border-radius:9px!important;
  display:grid!important;
  place-items:center!important;
  font-size:.76rem!important;
}
#teacherPage .teacher-guide-btn:not(.available){display:none!important}
#teacherPage .staff-exit svg{width:18px!important;height:18px!important;display:block!important}

/* سه شاخص بالای فهرست، کوتاه و خوانا می‌مانند. */
#teacherPage .teacher-stats{
  gap:7px!important;
  margin-bottom:9px!important;
}
#teacherPage .teacher-stats .stat{
  min-height:62px!important;
  padding:7px 6px!important;
  border-radius:10px!important;
  box-shadow:0 3px 8px rgba(31,56,73,.06)!important;
}
#teacherPage .teacher-stats .stat::before{
  width:4px!important;
  border-radius:0 9px 9px 0!important;
}
#teacherPage .teacher-stats .stat span{
  margin-bottom:3px!important;
  font-size:.53rem!important;
  line-height:1.35!important;
}
#teacherPage .teacher-stats .stat strong{font-size:1rem!important}

/* دکمهٔ برگشت مطابق مرجع: دایرهٔ ساده با فلش رو به چپ. */
#reportPage .reference-report-back{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  color:#1f2933!important;
  background:#fff!important;
  border:2px solid #1f2933!important;
  border-radius:50%!important;
  box-shadow:none!important;
}
#reportPage .reference-report-back svg{width:21px!important;height:21px!important;display:block!important}
#reportPage .reference-report-back:hover{color:var(--primary)!important;border-color:var(--primary)!important}

/* دید معلم از کارنامه، همان داده، تم و اجزای دید دانش‌آموز را استفاده می‌کند. */
#reportPage.staff-report{
  height:100%!important;
  min-height:0!important;
  padding:10px 0!important;
  overflow:hidden!important;
}
#reportPage.staff-report .reference-report-card{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  margin:0!important;
  padding:15px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  border-radius:28px!important;
}
#reportPage.staff-report .reference-report-header{
  position:relative!important;
  flex:0 0 auto!important;
  min-height:44px!important;
  margin:0 0 9px!important;
  padding:2px 48px 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#reportPage.staff-report .reference-report-header h2{
  margin:0!important;
  padding-bottom:6px!important;
  font-size:.9rem!important;
  line-height:1.55!important;
}
#reportPage.staff-report .reference-report-content{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:1px 2px 7px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
}
#reportPage.staff-report .reference-report-summary{
  margin:2px 0 12px!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.82)!important;
  border:1.5px solid color-mix(in srgb,var(--primary) 22%,#d9e5ed 78%)!important;
  border-radius:17px!important;
  box-shadow:0 6px 16px rgba(42,74,96,.055)!important;
}
#reportPage.staff-report .reference-report-filters{
  display:block!important;
  margin:0!important;
  padding:8px 10px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#reportPage.staff-report .reference-report-filters select{
  width:100%!important;
  height:38px!important;
  padding:0 10px!important;
  color:#29485f!important;
  background:#fff!important;
  border:1px solid color-mix(in srgb,var(--primary) 22%,#d4e0e8 78%)!important;
  border-radius:10px!important;
  box-shadow:none!important;
  font-size:.67rem!important;
  font-weight:850!important;
}
#reportPage.staff-report .reference-report-overview{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border-top:1px solid color-mix(in srgb,var(--primary) 14%,#dce6ed 86%)!important;
}
#reportPage.staff-report .reference-report-overview-item{
  min-height:58px!important;
  padding:8px 6px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#reportPage.staff-report .reference-report-overview-item + .reference-report-overview-item{
  border-right:1px solid color-mix(in srgb,var(--primary) 14%,#dce6ed 86%)!important;
}
#reportPage.staff-report .reference-report-overview-item::before{display:none!important}
#reportPage.staff-report .reference-report-overview-item span{
  color:#718391!important;
  font-size:.53rem!important;
  font-weight:800!important;
}
#reportPage.staff-report .reference-report-overview-item strong{
  margin-top:2px!important;
  color:var(--primary)!important;
  font-size:.92rem!important;
  font-weight:950!important;
}
#reportPage.staff-report .reference-report-list-wrap{max-height:none!important;overflow:visible!important}

@media(max-width:680px){
  #teacherPage .teacher-topbar{min-height:54px!important;padding:7px 9px!important;margin-bottom:8px!important}
  #teacherPage .teacher-topbar .brand img{width:44px!important;height:36px!important;flex-basis:44px!important}
  #teacherPage .teacher-head-text strong{font-size:.73rem!important}
  #teacherPage .teacher-head-text small{font-size:.49rem!important}
  #teacherPage .staff-exit,
  #teacherPage .teacher-guide-btn{width:31px!important;min-width:31px!important;height:31px!important;border-radius:8px!important}
  #teacherPage .staff-exit svg{width:17px!important;height:17px!important}
  #teacherPage .teacher-stats{gap:5px!important;margin-bottom:7px!important}
  #teacherPage .teacher-stats .stat{min-height:54px!important;padding:5px 3px!important;border-radius:8px!important}
  #teacherPage .teacher-stats .stat span{font-size:.44rem!important;margin-bottom:2px!important}
  #teacherPage .teacher-stats .stat strong{font-size:.84rem!important}
  #reportPage.staff-report{padding:8px 0!important}
  #reportPage.staff-report .reference-report-card{padding:11px!important;border-radius:24px!important}
  #reportPage.staff-report .reference-report-header{min-height:40px!important;margin-bottom:7px!important;padding:1px 43px 6px!important}
  #reportPage.staff-report .reference-report-header h2{font-size:.76rem!important}
  #reportPage .reference-report-back{width:34px!important;min-width:34px!important;height:34px!important}
  #reportPage .reference-report-back svg{width:19px!important;height:19px!important}
  #reportPage.staff-report .reference-report-summary{border-radius:15px!important}
  #reportPage.staff-report .reference-report-filters{padding:8px!important}
  #reportPage.staff-report .reference-report-filters select{height:36px!important;font-size:.63rem!important}
  #reportPage.staff-report .reference-report-overview-item{min-height:54px!important;padding:7px 4px!important}
}

/* ===== اصلاح دقیق بازخورد: بردر ورود و دکمهٔ متنی خروج معلم ===== */
#loginPage .login-card{
  border:2px solid #1e1e1e!important;
}
#teacherPage .staff-exit{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:none!important;
  font-size:.55rem!important;
  font-weight:950!important;
}
#teacherPage .staff-exit:hover{background:rgba(255,255,255,.22)!important}
#teacherPage .staff-exit span{display:block!important;line-height:1!important}

/* ===== پنل مدیر: کنترل‌های فشرده و ویرایش دانش‌آموز ===== */
#teacherPage .teacher-guide-btn,
#teacherPage .staff-exit{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:none!important;
}

#adminPage .admin-exit{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  padding:0!important;
  border-radius:9px!important;
  display:grid!important;
  place-items:center!important;
}
#adminPage .admin-exit svg{width:18px!important;height:18px!important;display:block!important}

#adminPage .dashboard-grid{
  gap:7px!important;
  margin-bottom:9px!important;
}
#adminPage .dashboard-grid .stat{
  min-height:60px!important;
  padding:7px 6px!important;
  border-radius:10px!important;
  box-shadow:0 3px 8px rgba(31,56,73,.06)!important;
}
#adminPage .dashboard-grid .stat::before{width:4px!important}
#adminPage .dashboard-grid .stat span{
  margin-bottom:3px!important;
  font-size:.53rem!important;
  line-height:1.35!important;
}
#adminPage .dashboard-grid .stat strong{font-size:.94rem!important}


#adminStudentsPanel .admin-filter{margin:0!important}


#adminPage .admin-row{grid-template-columns:1.45fr .65fr .48fr minmax(176px,1fr)!important}
#adminPage .admin-student-actions{gap:4px!important}
#adminPage .admin-student-actions .status-toggle{min-width:72px!important;padding:0 7px!important}
#adminPage .admin-student-actions .view-btn{height:32px!important;padding:0 8px!important}
#adminPage .admin-edit-btn{
  width:32px!important;
  min-width:32px!important;
  height:32px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  color:#1d679d!important;
  background:#edf6fc!important;
  border:1px solid #9fc6df!important;
  border-radius:8px!important;
  cursor:pointer!important;
}
#adminPage .admin-edit-btn:hover{background:#dceef9!important;border-color:#70add2!important}
#adminPage .admin-edit-btn svg{width:16px!important;height:16px!important}
#adminPage #addPanel.editing{
  border-color:#2478b5!important;
  box-shadow:0 0 0 3px rgba(36,120,181,.09),0 4px 12px rgba(31,79,112,.10)!important;
}

@media(max-width:680px){
  #adminPage .admin-exit{width:31px!important;min-width:31px!important;height:31px!important;border-radius:8px!important}
  #adminPage .admin-exit svg{width:17px!important;height:17px!important}
  #adminPage .dashboard-grid{gap:5px!important;margin-bottom:7px!important}
  #adminPage .dashboard-grid .stat{min-height:52px!important;padding:5px 3px!important;border-radius:8px!important}
  #adminPage .dashboard-grid .stat span{font-size:.44rem!important;margin-bottom:2px!important}
  #adminPage .dashboard-grid .stat strong{font-size:.8rem!important}


  #adminPage .admin-row{grid-template-columns:1.35fr .58fr .42fr minmax(166px,auto)!important}
}

/* ===== ثبت کاربر در تب مستقل + خروج یکسان معلم و مدیر ===== */
#adminPage .topbar::after{display:none!important;content:none!important}

#teacherPage .staff-exit,
#adminPage .staff-exit{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
#teacherPage .staff-exit:hover,
#adminPage .staff-exit:hover{background:rgba(255,255,255,.22)!important}
#teacherPage .staff-exit svg,
#adminPage .staff-exit svg{width:18px!important;height:18px!important;display:block!important}

#adminPage .admin-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#adminPage .admin-register-panel{padding:14px!important}
#adminPage .admin-register-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:11px!important;
  padding-bottom:10px!important;
  border-bottom:1px solid #d7e1e8!important;
}
#adminPage .admin-register-head > strong{
  color:#1e3f56!important;
  font-size:.82rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
#adminPage .admin-user-type{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px!important;
  min-width:210px!important;
  padding:4px!important;
  background:#e8eef3!important;
  border:1px solid #c5d2dc!important;
  border-radius:10px!important;
}
#adminPage .admin-user-type-btn{
  height:34px!important;
  padding:0 12px!important;
  color:#526a79!important;
  background:transparent!important;
  border:0!important;
  border-radius:7px!important;
  font-family:inherit!important;
  font-size:.65rem!important;
  font-weight:900!important;
  cursor:pointer!important;
}
#adminPage .admin-user-type-btn.active{
  color:#fff!important;
  background:#2478b5!important;
  box-shadow:0 3px 8px rgba(36,120,181,.2)!important;
}
#adminPage .admin-user-type-btn:disabled{opacity:.42!important;cursor:not-allowed!important}
#adminPage .admin-user-form{display:none!important}
#adminPage .admin-user-form.active{display:block!important}
#adminPage .admin-register-panel .add-panel{
  margin:0!important;
  padding:14px!important;
}
#adminPage .admin-register-panel .form-actions{margin-top:11px!important}

@media(max-width:680px){
  #teacherPage .staff-exit,
  #adminPage .staff-exit{width:31px!important;min-width:31px!important;height:31px!important;border-radius:8px!important}
  #teacherPage .staff-exit svg,
  #adminPage .staff-exit svg{width:17px!important;height:17px!important}
  #adminPage .admin-tabs{gap:4px!important;padding:4px!important;margin-bottom:9px!important}
  #adminPage .admin-tab{height:36px!important;padding:0 4px!important;font-size:.59rem!important}
  #adminPage .admin-register-panel{padding:10px!important}
  #adminPage .admin-register-head{gap:7px!important;margin-bottom:8px!important;padding-bottom:8px!important}
  #adminPage .admin-register-head > strong{font-size:.68rem!important}
  #adminPage .admin-user-type{min-width:156px!important;padding:3px!important;gap:3px!important}
  #adminPage .admin-user-type-btn{height:31px!important;padding:0 6px!important;font-size:.56rem!important}
  #adminPage .admin-register-panel .add-panel{padding:10px!important}
}

/* ===== پرداخت بصری نهایی: ریتم مشترک، حالت خالی و حرکت محدود ===== */
:root{
  --radius-shell:28px;
  --radius-panel:16px;
  --radius-control:10px;
  --shadow-shell:0 20px 52px rgba(25,58,92,.13),inset 0 1px 0 rgba(255,255,255,.88);
  --shadow-panel:0 5px 14px rgba(31,59,80,.06);
}
.card{border-radius:var(--radius-shell)!important;box-shadow:var(--shadow-shell)!important}
.lesson,
.stat,
.student-row,
.admin-row,
.teacher-admin-row,
.teacher-play-launch,
.reference-report-summary,
.reference-unit-block,
.guide-card,
.teacher-guide-section{
  border-radius:var(--radius-panel)!important;
  box-shadow:var(--shadow-panel)!important;
}
.role-tab,
.student-nav-btn,
.view-btn,
.flat-btn,
.status-toggle,
.admin-edit-btn,
.teacher-play-btn,
.field input,
.field select,
.form-grid input,
.form-grid select,
.admin-filter input,
.admin-filter select,
.teacher-admin-filter input,
.teacher-admin-filter select,
.teacher-search-wrap,
.reference-report-filters select{border-radius:var(--radius-control)!important}
.student-nav,
.admin-tabs,
.admin-user-type{box-shadow:none!important}

.empty-state{
  grid-column:1/-1;
  width:100%;
  min-height:150px;
  padding:24px 16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#607483;
  background:rgba(255,255,255,.72);
  border:1px dashed color-mix(in srgb,var(--primary) 26%,#cbd8e1 74%);
  border-radius:var(--radius-panel);
}
.empty-state-icon{
  width:48px;
  height:48px;
  margin-bottom:9px;
  display:grid;
  place-items:center;
  color:var(--primary);
  background:color-mix(in srgb,var(--primary) 10%,white 90%);
  border-radius:50%;
}
.empty-state-icon svg{width:25px;height:25px;display:block}
.empty-state strong{color:#304b5e;font-size:.78rem;font-weight:950;line-height:1.8}
.empty-state small{max-width:420px;margin-top:3px;color:#718492;font-size:.63rem;font-weight:700;line-height:1.9}
#teacherPage .empty-state,
#adminPage .empty-state,
#reportPage.staff-report .empty-state{background:#f8fbfd}

/* حرکت فقط برای تغییر زمینهٔ کاری و پنجره‌ها؛ ردیف‌ها و کارت‌ها ثابت می‌مانند. */
.page.active{animation:marefat-page-enter .2s ease-out both}
.admin-panel.active{animation:marefat-panel-enter .18s ease-out both}
.modal.show .modal-card{animation:marefat-dialog-enter .2s ease-out both}
@keyframes marefat-page-enter{from{opacity:.01;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes marefat-panel-enter{from{opacity:.01;transform:translateY(3px)}to{opacity:1;transform:none}}
@keyframes marefat-dialog-enter{from{opacity:.01;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}

button,
.lesson,
.student-row,
.admin-row,
.teacher-admin-row{transition-duration:.18s!important}
button:active{transform:scale(.98)}
button:focus-visible,
input:focus-visible,
select:focus-visible{
  outline:3px solid color-mix(in srgb,var(--primary) 24%,transparent)!important;
  outline-offset:2px!important;
}

@media(max-width:700px){
  :root{--radius-shell:24px;--radius-panel:14px;--radius-control:9px}
  .empty-state{min-height:128px;padding:18px 11px}
  .empty-state-icon{width:43px;height:43px}
  .empty-state strong{font-size:.7rem}
  .empty-state small{font-size:.57rem}
}
@media(prefers-reduced-motion:reduce){
  .page.active,
  .admin-panel.active,
  .modal.show .modal-card{animation:none!important}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}
}
