/* =========================================================
   v294 - Samsung 2010 / old Smart TV safe layout
   این فایل فقط وقتی ?tv=1 یا مرورگر تلویزیون تشخیص داده شود فعال می‌شود.
   نمایش عادی موبایل/لپ‌تاپ بدون کلاس daily-tv-legacy دست‌نخورده می‌ماند.
   ========================================================= */
html.daily-tv-legacy-root,
html.daily-tv-legacy-root body{
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#071426;
}
body.daily-tv-legacy,
body.daily-tv-legacy *{
  font-family:Tahoma,Arial,sans-serif !important;
  letter-spacing:0 !important;
  word-spacing:normal !important;
  text-rendering:auto !important;
  -webkit-font-smoothing:antialiased;
  direction:rtl;
}
body.daily-tv-legacy .tv-wrapper{
  width:100%;
  height:100%;
  min-height:0 !important;
  padding:14px !important;
  overflow:hidden !important;
  background:#071426 !important;
}
body.daily-tv-legacy .topbar{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  width:auto !important;
  height:250px !important;
  margin:0 0 14px 0 !important;
  padding:18px 24px !important;
  border-radius:26px !important;
  overflow:hidden !important;
  background:#111827 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  display:block !important;
}
body.daily-tv-legacy .header-main-row{
  position:relative !important;
  height:160px !important;
  display:block !important;
}
body.daily-tv-legacy .brand{
  position:absolute !important;
  right:20px !important;
  top:18px !important;
  left:360px !important;
  height:122px !important;
  display:block !important;
  text-align:right !important;
  white-space:normal !important;
}
body.daily-tv-legacy .logo-box{
  float:right !important;
  width:108px !important;
  height:108px !important;
  margin-left:18px !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#f59e0b !important;
}
body.daily-tv-legacy .logo-box img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
body.daily-tv-legacy h1,
body.daily-tv-legacy #academyName{
  display:block !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  font-size:38px !important;
  line-height:1.45 !important;
  font-weight:bold !important;
  color:#fff !important;
  text-align:right !important;
}
body.daily-tv-legacy #subtitle{
  display:block !important;
  margin:4px 0 0 !important;
  padding:0 !important;
  font-size:21px !important;
  line-height:1.8 !important;
  color:#dbeafe !important;
  text-align:right !important;
}
body.daily-tv-legacy .time-box{
  position:absolute !important;
  left:20px !important;
  top:18px !important;
  width:310px !important;
  height:125px !important;
  display:block !important;
  text-align:left !important;
}
body.daily-tv-legacy #clock{
  display:block !important;
  font-size:54px !important;
  line-height:1.1 !important;
  font-weight:bold !important;
  color:#38bdf8 !important;
  text-align:left !important;
  direction:ltr !important;
}
body.daily-tv-legacy #date{
  display:block !important;
  margin-top:10px !important;
  font-size:22px !important;
  font-weight:bold !important;
  color:#fff !important;
  text-align:left !important;
}
body.daily-tv-legacy .header-announcement{
  position:absolute !important;
  left:28px !important;
  right:28px !important;
  bottom:18px !important;
  height:58px !important;
  min-height:58px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:block !important;
  direction:ltr !important;
  border-radius:20px !important;
  background:#dc2626 !important;
  border:1px solid rgba(255,255,255,.18) !important;
}
body.daily-tv-legacy #announcementText{
  position:relative !important;
  width:100% !important;
  height:58px !important;
  overflow:hidden !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  direction:ltr !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy .tv-ticker-track{
  position:absolute !important;
  top:0 !important;
  left:0;
  height:58px !important;
  line-height:58px !important;
  white-space:nowrap !important;
  display:block !important;
  direction:rtl !important;
  color:#fff !important;
  font-size:26px !important;
  font-weight:bold !important;
}
body.daily-tv-legacy .dashboard{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:770px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .side-panel{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:430px !important;
  height:735px !important;
  display:block !important;
  overflow:hidden !important;
  margin:0 !important;
  padding:0 !important;
}
body.daily-tv-legacy .schedule-area{
  position:absolute !important;
  left:455px !important;
  right:0 !important;
  top:0 !important;
  height:735px !important;
  display:block !important;
  overflow:hidden !important;
  margin:0 !important;
  padding:0 !important;
}
body.daily-tv-legacy .panel{
  display:block !important;
  background:#111827 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:24px !important;
  padding:18px !important;
  margin:0 0 18px 0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body.daily-tv-legacy .schedule-area .panel{
  height:348px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .panel-title,
body.daily-tv-legacy .panel h2{
  margin:0 0 16px 0 !important;
  padding:0 !important;
  font-size:32px !important;
  line-height:1.4 !important;
  font-weight:bold !important;
  color:#38bdf8 !important;
  text-align:right !important;
}
body.daily-tv-legacy .now-panel{
  height:345px !important;
}
body.daily-tv-legacy .notices-panel{
  height:260px !important;
}
body.daily-tv-legacy .current-card{
  display:block !important;
  height:245px !important;
  overflow:hidden !important;
  font-size:22px !important;
  line-height:2 !important;
  color:#fff !important;
  background:#0f172a !important;
  border-radius:20px !important;
  padding:18px !important;
}
body.daily-tv-legacy #noticesList{
  margin:0 !important;
  padding:0 22px 0 0 !important;
  font-size:20px !important;
  line-height:2 !important;
  color:#e5e7eb !important;
}
body.daily-tv-legacy .daily-dropdown-nav,
body.daily-tv-legacy footer{
  display:none !important;
}
body.daily-tv-legacy .table-wrap{
  display:block !important;
  width:100% !important;
  height:260px !important;
  overflow:hidden !important;
  border-radius:14px !important;
}
body.daily-tv-legacy table{
  width:100% !important;
  border-collapse:collapse !important;
  table-layout:fixed !important;
  direction:rtl !important;
  font-size:18px !important;
  color:#fff !important;
}
body.daily-tv-legacy th{
  background:#1f2d44 !important;
  color:#fff !important;
  font-size:17px !important;
  font-weight:bold !important;
  padding:10px 8px !important;
  line-height:1.6 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  text-align:center !important;
}
body.daily-tv-legacy td{
  color:#f8fafc !important;
  font-size:17px !important;
  padding:9px 8px !important;
  line-height:1.7 !important;
  border:1px solid rgba(255,255,255,.08) !important;
  text-align:center !important;
  vertical-align:middle !important;
  overflow:hidden !important;
}
body.daily-tv-legacy td:first-child,
body.daily-tv-legacy .time-cell{
  direction:ltr !important;
  color:#38bdf8 !important;
  font-weight:bold !important;
  font-size:19px !important;
}
body.daily-tv-legacy .teacher,
body.daily-tv-legacy .notes-cell{
  display:block !important;
  color:#cbd5e1 !important;
  font-size:15px !important;
}
body.daily-tv-legacy .status-badge{
  display:inline-block !important;
  min-width:80px !important;
  border-radius:20px !important;
  padding:6px 10px !important;
  background:#1e3a8a !important;
  color:#dbeafe !important;
  font-size:14px !important;
  font-weight:bold !important;
}
body.daily-tv-legacy .status-live{background:#166534 !important;color:#dcfce7 !important;}
body.daily-tv-legacy .status-held{background:#374151 !important;color:#e5e7eb !important;}
body.daily-tv-legacy .status-cancelled{background:#7f1d1d !important;color:#fee2e2 !important;}
body.daily-tv-legacy .no-schedule-message{
  font-size:22px !important;
  line-height:2 !important;
  padding:28px !important;
  color:#fed7aa !important;
  text-align:center !important;
}
@media (max-width:1400px){
  body.daily-tv-legacy .dashboard{height:640px !important;}
  body.daily-tv-legacy .schedule-area .panel{height:292px !important;}
  body.daily-tv-legacy .table-wrap{height:205px !important;}
  body.daily-tv-legacy .side-panel{height:610px !important;}
  body.daily-tv-legacy .now-panel{height:292px !important;}
  body.daily-tv-legacy .notices-panel{height:220px !important;}
  body.daily-tv-legacy td,body.daily-tv-legacy th{font-size:15px !important;padding:7px 6px !important;}
}


/* =========================================================
   v295 - Legacy TV layout repair
   Fixes:
   1) Page can scroll on old Samsung TV browsers.
   2) Layout no longer relies on absolute-positioned columns.
   3) Announcement enters from LEFT and moves to RIGHT.
   4) Current class box is clearer and more card-like.
   ========================================================= */
html.daily-tv-legacy-root,
html.daily-tv-legacy-root body{
  height:auto !important;
  min-height:100% !important;
  overflow:auto !important;
}
body.daily-tv-legacy .tv-wrapper{
  height:auto !important;
  min-height:100% !important;
  overflow:visible !important;
  padding:14px 18px 26px !important;
}
body.daily-tv-legacy .topbar{
  height:250px !important;
  margin-bottom:16px !important;
}
body.daily-tv-legacy .dashboard{
  position:relative !important;
  display:table !important;
  table-layout:fixed !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  padding:0 !important;
  margin:0 !important;
  border-collapse:separate !important;
  border-spacing:18px 0 !important;
}
body.daily-tv-legacy .schedule-area{
  position:relative !important;
  display:table-cell !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  vertical-align:top !important;
  margin:0 !important;
  padding:0 !important;
}
body.daily-tv-legacy .side-panel{
  position:relative !important;
  display:table-cell !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  width:410px !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  vertical-align:top !important;
  margin:0 !important;
  padding:0 !important;
}
body.daily-tv-legacy .schedule-area .panel{
  height:auto !important;
  min-height:315px !important;
  max-height:none !important;
  overflow:hidden !important;
  margin-bottom:18px !important;
  padding:16px !important;
}
body.daily-tv-legacy .panel-title,
body.daily-tv-legacy .panel h2{
  font-size:30px !important;
  margin-bottom:12px !important;
}
body.daily-tv-legacy .table-wrap{
  height:245px !important;
  overflow:hidden !important;
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.08) !important;
}
body.daily-tv-legacy table{
  width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  font-size:17px !important;
}
body.daily-tv-legacy th,
body.daily-tv-legacy td{
  padding:8px 7px !important;
  line-height:1.75 !important;
  font-size:17px !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow:hidden !important;
  text-align:center !important;
}
body.daily-tv-legacy th{
  font-size:17px !important;
  background:#233047 !important;
}
body.daily-tv-legacy .time-cell,
body.daily-tv-legacy td:first-child{
  font-size:20px !important;
  color:#38bdf8 !important;
  font-weight:bold !important;
  direction:ltr !important;
}
body.daily-tv-legacy .status-badge{
  display:inline-block !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  font-size:15px !important;
  line-height:1.5 !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy .teacher{
  display:block !important;
  margin-top:2px !important;
  font-size:14px !important;
  color:#cbd5e1 !important;
}
body.daily-tv-legacy .now-panel{
  height:auto !important;
  min-height:330px !important;
  padding:18px !important;
  border-color:rgba(56,189,248,.22) !important;
  background:#101b31 !important;
}
body.daily-tv-legacy .current-card{
  height:auto !important;
  min-height:225px !important;
  max-height:none !important;
  overflow:hidden !important;
  padding:16px !important;
  border:1px solid rgba(56,189,248,.22) !important;
  background:#0b1426 !important;
  border-radius:22px !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04) !important;
}
body.daily-tv-legacy .current-card > div{
  display:block !important;
  margin:0 0 12px !important;
  padding:12px 14px !important;
  border-radius:18px !important;
  background:rgba(56,189,248,.08) !important;
  border:1px solid rgba(56,189,248,.20) !important;
  color:#fff !important;
  font-size:21px !important;
  line-height:1.85 !important;
  text-align:right !important;
}
body.daily-tv-legacy .current-card strong{
  display:block !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1.7 !important;
  margin-bottom:2px !important;
}
body.daily-tv-legacy .current-card hr{
  border:0 !important;
  border-top:1px solid rgba(255,255,255,.16) !important;
  margin:8px 0 !important;
}
body.daily-tv-legacy .notices-panel{
  height:auto !important;
  min-height:250px !important;
}
body.daily-tv-legacy .header-announcement{
  direction:ltr !important;
}
body.daily-tv-legacy #announcementText{
  direction:ltr !important;
}
body.daily-tv-legacy .tv-ticker-track{
  left:auto;
  right:auto;
  direction:rtl !important;
  text-align:right !important;
  will-change:left;
}


/* =========================================================
   v296 - Samsung TV final readability + marquee fix
   فقط در حالت body.daily-tv-legacy فعال است.
   - نوار اطلاعیه با marquee قدیمی و قابل اعتماد
   - جدول‌ها جمع‌وجورتر و بدون ستون توضیحات
   - صفحه در تلویزیون و لپ‌تاپ با ?tv=1 اسکرول‌پذیر
   ========================================================= */

html.daily-tv-legacy-root,
html.daily-tv-legacy-root body{
  overflow:auto !important;
  height:auto !important;
  min-height:100% !important;
}

body.daily-tv-legacy{
  overflow:auto !important;
  min-height:100vh !important;
  background:#071426 !important;
}

body.daily-tv-legacy .tv-wrapper{
  height:auto !important;
  min-height:100vh !important;
  overflow:visible !important;
  padding:18px 24px 34px !important;
}

body.daily-tv-legacy .topbar{
  height:238px !important;
  min-height:238px !important;
  margin:0 0 16px 0 !important;
  overflow:hidden !important;
}

body.daily-tv-legacy .header-main-row{
  height:145px !important;
}

body.daily-tv-legacy .brand{
  top:14px !important;
  right:22px !important;
  left:330px !important;
  height:125px !important;
}

body.daily-tv-legacy .time-box{
  top:18px !important;
  left:22px !important;
  width:292px !important;
}

body.daily-tv-legacy #academyName{
  font-size:36px !important;
  line-height:1.35 !important;
}

body.daily-tv-legacy #subtitle{
  font-size:20px !important;
  line-height:1.7 !important;
}

body.daily-tv-legacy .header-announcement{
  height:58px !important;
  bottom:16px !important;
  left:28px !important;
  right:28px !important;
  direction:ltr !important;
}

body.daily-tv-legacy #announcementText{
  height:58px !important;
  line-height:58px !important;
  overflow:hidden !important;
  direction:ltr !important;
  text-align:left !important;
  background:transparent !important;
}

body.daily-tv-legacy .tv-ticker-marquee{
  width:100% !important;
  height:58px !important;
  line-height:58px !important;
  display:block !important;
  color:#fff !important;
  font-size:28px !important;
  font-weight:bold !important;
  direction:rtl !important;
  text-align:right !important;
  white-space:nowrap !important;
}

/* بعضی مرورگرهای قدیمی اگر marquee را اجرا نکنند، حداقل متن را داخل کادر نمایش می‌دهند. */
body.daily-tv-legacy .tv-ticker-track{
  display:none !important;
}

body.daily-tv-legacy .dashboard{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:710px !important;
  overflow:visible !important;
  padding:0 !important;
  margin:0 !important;
}

body.daily-tv-legacy .side-panel{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:30% !important;
  min-width:360px !important;
  height:auto !important;
  overflow:visible !important;
}

body.daily-tv-legacy .schedule-area{
  position:relative !important;
  display:block !important;
  margin-left:32% !important;
  width:auto !important;
  height:auto !important;
  overflow:visible !important;
  right:auto !important;
  left:auto !important;
  top:auto !important;
}

body.daily-tv-legacy .panel{
  background:#111827 !important;
  border:1px solid rgba(56,189,248,.18) !important;
  border-radius:22px !important;
  padding:16px !important;
  margin:0 0 16px 0 !important;
}

body.daily-tv-legacy .schedule-area .panel{
  height:286px !important;
  overflow:hidden !important;
}

body.daily-tv-legacy .panel-title,
body.daily-tv-legacy .panel h2{
  font-size:30px !important;
  line-height:1.35 !important;
  margin:0 0 12px 0 !important;
  color:#38bdf8 !important;
}

body.daily-tv-legacy .now-panel{
  height:330px !important;
  background:
    radial-gradient(circle at top right,rgba(56,189,248,.12),transparent 36%),
    #111827 !important;
}

body.daily-tv-legacy .notices-panel{
  min-height:245px !important;
}

body.daily-tv-legacy .current-card{
  height:242px !important;
  padding:14px !important;
  border:1px solid rgba(56,189,248,.32) !important;
  background:#0f2238 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04) !important;
  font-size:22px !important;
  line-height:1.9 !important;
}

body.daily-tv-legacy .current-card > div{
  padding:10px 8px !important;
  border-radius:14px !important;
  background:rgba(15,23,42,.46) !important;
  margin-bottom:8px !important;
}

body.daily-tv-legacy .current-card hr{
  border:0 !important;
  border-top:1px solid rgba(255,255,255,.18) !important;
  margin:8px 0 !important;
}

body.daily-tv-legacy .table-wrap{
  height:212px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:14px !important;
}

body.daily-tv-legacy table{
  table-layout:fixed !important;
  width:100% !important;
  border-collapse:collapse !important;
  font-size:16px !important;
}

/* ستون توضیحات در تلویزیون حذف می‌شود تا اطلاعات اصلی خراب و شکسته نشوند. */
body.daily-tv-legacy th:nth-child(6),
body.daily-tv-legacy td:nth-child(6){
  display:none !important;
}

body.daily-tv-legacy th:nth-child(1),
body.daily-tv-legacy td:nth-child(1){
  width:17% !important;
  direction:ltr !important;
  white-space:normal !important;
}

body.daily-tv-legacy th:nth-child(2),
body.daily-tv-legacy td:nth-child(2){
  width:12% !important;
}

body.daily-tv-legacy th:nth-child(3),
body.daily-tv-legacy td:nth-child(3){
  width:20% !important;
}

body.daily-tv-legacy th:nth-child(4),
body.daily-tv-legacy td:nth-child(4){
  width:32% !important;
}

body.daily-tv-legacy th:nth-child(5),
body.daily-tv-legacy td:nth-child(5){
  width:19% !important;
}

body.daily-tv-legacy th{
  padding:8px 6px !important;
  font-size:16px !important;
  line-height:1.35 !important;
}

body.daily-tv-legacy td{
  padding:7px 6px !important;
  font-size:16px !important;
  line-height:1.45 !important;
  height:58px !important;
  max-height:58px !important;
  overflow:hidden !important;
}

body.daily-tv-legacy .time-cell,
body.daily-tv-legacy td:first-child{
  font-size:18px !important;
  line-height:1.35 !important;
  color:#38bdf8 !important;
  font-weight:bold !important;
}

body.daily-tv-legacy .teacher{
  font-size:13px !important;
  line-height:1.45 !important;
  margin-top:2px !important;
  color:#cbd5e1 !important;
}

body.daily-tv-legacy .status-badge{
  font-size:14px !important;
  line-height:1.35 !important;
  padding:6px 9px !important;
  white-space:normal !important;
}

/* حالت تلویزیون روی لپ‌تاپ‌های با عرض کمتر هم منظم بماند */
@media(max-width:1100px){
  body.daily-tv-legacy .side-panel{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    display:block !important;
    margin-bottom:16px !important;
  }
  body.daily-tv-legacy .schedule-area{
    margin-left:0 !important;
    width:100% !important;
  }
  body.daily-tv-legacy .now-panel,
  body.daily-tv-legacy .notices-panel{
    height:auto !important;
    min-height:0 !important;
  }
  body.daily-tv-legacy .schedule-area .panel{
    height:auto !important;
    min-height:286px !important;
  }
}


/* =========================================================
   v297 - TV-only final fixes
   1) TV date/time uses server Date header + latest schedule date, not broken TV clock.
   2) Evening table and long tables auto-scroll inside their box.
   3) Current class box is more visual for TV.
   4) Ticker text is visible immediately and moves left-to-right.
   Only active with body.daily-tv-legacy.
   ========================================================= */
html.daily-tv-legacy-root,
html.daily-tv-legacy-root body,
body.daily-tv-legacy{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  height:auto !important;
  min-height:100% !important;
}
body.daily-tv-legacy .tv-wrapper{
  height:auto !important;
  min-height:100vh !important;
  overflow:visible !important;
  padding:14px 20px 80px !important;
}
body.daily-tv-legacy .topbar{
  height:218px !important;
  min-height:218px !important;
  margin-bottom:14px !important;
}
body.daily-tv-legacy .header-main-row{height:130px !important;}
body.daily-tv-legacy .logo-box{width:96px !important;height:96px !important;border-radius:22px !important;}
body.daily-tv-legacy .brand{top:10px !important;right:20px !important;left:315px !important;height:115px !important;}
body.daily-tv-legacy #academyName{font-size:34px !important;line-height:1.35 !important;margin-top:5px !important;}
body.daily-tv-legacy #subtitle{font-size:19px !important;line-height:1.65 !important;}
body.daily-tv-legacy .time-box{top:16px !important;left:20px !important;width:285px !important;height:110px !important;}
body.daily-tv-legacy #clock{font-size:50px !important;line-height:1.05 !important;}
body.daily-tv-legacy #date{font-size:21px !important;margin-top:8px !important;direction:rtl !important;text-align:left !important;}
body.daily-tv-legacy .header-announcement{
  height:54px !important;
  min-height:54px !important;
  bottom:14px !important;
  left:26px !important;
  right:26px !important;
  background:linear-gradient(90deg,#ef4444,#dc2626,#f97316) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16) !important;
}
body.daily-tv-legacy #announcementText{height:54px !important;line-height:54px !important;position:relative !important;overflow:hidden !important;}
body.daily-tv-legacy .tv-ticker-marquee{display:none !important;}
body.daily-tv-legacy .tv-ticker-track{
  display:block !important;
  position:absolute !important;
  top:0 !important;
  left:0;
  width:auto !important;
  min-width:2400px !important;
  height:54px !important;
  line-height:54px !important;
  white-space:nowrap !important;
  direction:rtl !important;
  text-align:right !important;
  color:#fff !important;
  font-size:26px !important;
  font-weight:bold !important;
}
body.daily-tv-legacy .tv-ticker-track span{display:inline-block !important;padding:0 42px !important;}
body.daily-tv-legacy .dashboard{
  min-height:620px !important;
  padding-bottom:30px !important;
  overflow:visible !important;
}
body.daily-tv-legacy .side-panel{width:29% !important;min-width:335px !important;}
body.daily-tv-legacy .schedule-area{margin-left:31% !important;}
body.daily-tv-legacy .panel{border-color:rgba(56,189,248,.22) !important;background:#101827 !important;}
body.daily-tv-legacy .schedule-area .panel{
  height:246px !important;
  min-height:246px !important;
  margin-bottom:14px !important;
  padding:14px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .panel-title,
body.daily-tv-legacy .panel h2{font-size:28px !important;margin-bottom:9px !important;line-height:1.28 !important;}
body.daily-tv-legacy .table-wrap{
  height:174px !important;
  overflow:hidden !important;
  border-radius:14px !important;
  background:#0b1426 !important;
  border:1px solid rgba(56,189,248,.16) !important;
}
body.daily-tv-legacy table{font-size:15px !important;table-layout:fixed !important;width:100% !important;}
body.daily-tv-legacy th{font-size:15px !important;padding:7px 5px !important;line-height:1.25 !important;background:#22304a !important;}
body.daily-tv-legacy td{font-size:15px !important;padding:6px 5px !important;line-height:1.38 !important;height:54px !important;max-height:54px !important;}
body.daily-tv-legacy .tv-col-time,body.daily-tv-legacy .time-cell{width:17% !important;}
body.daily-tv-legacy .tv-col-room,body.daily-tv-legacy .room-cell{width:12% !important;}
body.daily-tv-legacy .tv-col-subject,body.daily-tv-legacy .subject-cell{width:20% !important;}
body.daily-tv-legacy .tv-col-teacher,body.daily-tv-legacy .teacher-cell{width:34% !important;}
body.daily-tv-legacy .tv-col-status,body.daily-tv-legacy .status-cell{width:17% !important;}
body.daily-tv-legacy .time-cell{font-size:17px !important;line-height:1.35 !important;color:#38bdf8 !important;font-weight:bold !important;direction:ltr !important;}
body.daily-tv-legacy .teacher{font-size:12px !important;line-height:1.35 !important;color:#b9c6d8 !important;}
body.daily-tv-legacy .status-badge{font-size:13px !important;padding:5px 8px !important;line-height:1.3 !important;white-space:normal !important;}
body.daily-tv-legacy .now-panel{
  height:300px !important;
  min-height:300px !important;
  padding:16px !important;
  background:radial-gradient(circle at top right,rgba(56,189,248,.18),transparent 38%),linear-gradient(135deg,#0f1b31,#0b1426) !important;
  border:1px solid rgba(56,189,248,.36) !important;
}
body.daily-tv-legacy .now-panel h2{font-size:30px !important;color:#38bdf8 !important;text-shadow:0 0 18px rgba(56,189,248,.18) !important;}
body.daily-tv-legacy .current-card{
  height:222px !important;
  min-height:222px !important;
  overflow:hidden !important;
  padding:12px !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,rgba(7,20,38,.96),rgba(15,35,58,.94)) !important;
  border:1px solid rgba(56,189,248,.38) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 16px 38px rgba(0,0,0,.18) !important;
}
body.daily-tv-legacy .tv-current-item{
  position:relative !important;
  margin:0 0 10px !important;
  padding:12px 18px 12px 12px !important;
  border-radius:18px !important;
  background:rgba(56,189,248,.10) !important;
  border:1px solid rgba(56,189,248,.28) !important;
  text-align:right !important;
}
body.daily-tv-legacy .tv-current-item strong{display:block !important;color:#fff !important;font-size:24px !important;line-height:1.4 !important;direction:ltr !important;text-align:right !important;}
body.daily-tv-legacy .tv-current-item em{display:block !important;color:#eaf6ff !important;font-style:normal !important;font-size:22px !important;line-height:1.7 !important;}
body.daily-tv-legacy .tv-current-item small{display:block !important;color:#b7c8dc !important;font-size:18px !important;line-height:1.6 !important;}
body.daily-tv-legacy .tv-live-dot{color:#22c55e !important;font-size:18px !important;margin-left:6px !important;}
body.daily-tv-legacy .tv-empty-current{
  height:100% !important;
  display:block !important;
  text-align:center !important;
  padding-top:30px !important;
  color:#dbeafe !important;
}
body.daily-tv-legacy .tv-empty-current span{display:block !important;font-size:40px !important;margin-bottom:8px !important;color:#38bdf8 !important;}
body.daily-tv-legacy .tv-empty-current strong{display:block !important;font-size:25px !important;line-height:1.8 !important;color:#fff !important;}
body.daily-tv-legacy .tv-empty-current small{display:block !important;font-size:18px !important;line-height:1.8 !important;color:#b7c8dc !important;}
body.daily-tv-legacy .notices-panel{height:230px !important;min-height:230px !important;overflow:hidden !important;}
body.daily-tv-legacy #noticesList{max-height:145px !important;overflow:hidden !important;font-size:19px !important;line-height:1.9 !important;}
body.daily-tv-legacy .no-schedule-message{font-size:20px !important;padding:20px !important;line-height:1.8 !important;}
@media(max-width:1100px){
  body.daily-tv-legacy .side-panel{position:relative !important;width:100% !important;min-width:0 !important;margin-bottom:14px !important;}
  body.daily-tv-legacy .schedule-area{margin-left:0 !important;width:100% !important;}
  body.daily-tv-legacy .schedule-area .panel{height:250px !important;min-height:250px !important;}
  body.daily-tv-legacy .table-wrap{height:178px !important;}
}


/* =========================================================
   v298 - TV LEGACY ANNOUNCEMENT FIX
   Very old Samsung browsers: no CSS animation dependency.
   app-tv-legacy.js moves .tv-ticker-track with left pixels.
   ========================================================= */
body.daily-tv-legacy .header-announcement{
  position:absolute !important;
  left:26px !important;
  right:26px !important;
  bottom:14px !important;
  height:54px !important;
  min-height:54px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:block !important;
  direction:ltr !important;
  background:linear-gradient(90deg,#ef4444,#dc2626,#f97316) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:20px !important;
}
body.daily-tv-legacy #announcementText{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  width:100% !important;
  height:54px !important;
  line-height:54px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:block !important;
  direction:ltr !important;
  transform:none !important;
  animation:none !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy .tv-ticker-track{
  position:absolute !important;
  top:0 !important;
  left:-40px;
  right:auto !important;
  height:54px !important;
  line-height:54px !important;
  white-space:nowrap !important;
  display:block !important;
  width:auto !important;
  min-width:1800px !important;
  direction:rtl !important;
  text-align:right !important;
  color:#fff !important;
  font-size:26px !important;
  font-weight:bold !important;
  transform:none !important;
  animation:none !important;
}
body.daily-tv-legacy .tv-ticker-track span{
  display:inline-block !important;
  padding:0 42px !important;
  direction:rtl !important;
}


/* =========================================================
   v299 - TV announcement + 5 fixed rows for schedule tables
   Only active when ?tv=1 / daily-tv-legacy is enabled.
   ========================================================= */
body.daily-tv-legacy .header-announcement{
  position:absolute !important;
  left:26px !important;
  right:26px !important;
  bottom:14px !important;
  height:56px !important;
  min-height:56px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:block !important;
  direction:ltr !important;
  background:linear-gradient(90deg,#ef4444,#dc2626,#f97316) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:20px !important;
}
body.daily-tv-legacy #announcementText{
  position:relative !important;
  width:100% !important;
  height:56px !important;
  line-height:56px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:block !important;
  direction:ltr !important;
  transform:none !important;
  animation:none !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy .tv-ticker-track{
  position:absolute !important;
  top:0 !important;
  left:-1000px;
  right:auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:56px !important;
  line-height:56px !important;
  white-space:nowrap !important;
  display:inline-block !important;
  direction:rtl !important;
  text-align:right !important;
  color:#fff !important;
  font-size:27px !important;
  font-weight:bold !important;
  transform:none !important;
  animation:none !important;
}
body.daily-tv-legacy .tv-ticker-track span{
  display:inline-block !important;
  padding:0 46px !important;
  direction:rtl !important;
  white-space:nowrap !important;
}

body.daily-tv-legacy .schedule-area .panel{
  min-height:410px !important;
  height:410px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .table-wrap{
  height:332px !important; /* header + 5 fixed rows */
  max-height:332px !important;
  overflow:hidden !important;
  border-radius:16px !important;
  background:#0b1426 !important;
  border:1px solid rgba(56,189,248,.18) !important;
}
body.daily-tv-legacy table{
  table-layout:fixed !important;
  width:100% !important;
  border-collapse:collapse !important;
  font-size:15px !important;
}
body.daily-tv-legacy th{
  height:42px !important;
  max-height:42px !important;
  padding:6px 5px !important;
  line-height:1.25 !important;
  font-size:15px !important;
  background:#22304a !important;
}
body.daily-tv-legacy td{
  height:54px !important;
  max-height:54px !important;
  padding:6px 5px !important;
  line-height:1.35 !important;
  font-size:15px !important;
  overflow:hidden !important;
}


/* =========================================================
   v300 - TV table viewport: 5 rows fixed, internal auto-scroll by app-tv-legacy.js
   ========================================================= */
body.daily-tv-legacy .schedule-area .panel{
  height:430px !important;
  min-height:430px !important;
  max-height:430px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .table-wrap{
  height:338px !important;
  min-height:338px !important;
  max-height:338px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy th{
  height:43px !important;
  max-height:43px !important;
  line-height:1.25 !important;
}
body.daily-tv-legacy td{
  height:55px !important;
  max-height:55px !important;
  line-height:1.28 !important;
  overflow:hidden !important;
}

/* =========================================================
   v301 - TV only: 3 visible rows + compact columns + downwards internal motion
   This block is active only when body.daily-tv-legacy is present (?tv=1 / TV).
   ========================================================= */
body.daily-tv-legacy .schedule-area .panel{
  height:302px !important;
  min-height:302px !important;
  max-height:302px !important;
  padding:18px 18px 14px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .schedule-area .panel h2,
body.daily-tv-legacy .schedule-area .panel .panel-title{
  margin:0 0 10px !important;
  font-size:31px !important;
  line-height:1.25 !important;
}
body.daily-tv-legacy .table-wrap{
  height:210px !important;          /* header + about 3 readable rows */
  min-height:210px !important;
  max-height:210px !important;
  overflow:hidden !important;
  border-radius:15px !important;
}
body.daily-tv-legacy table{
  width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  font-size:14px !important;
}
body.daily-tv-legacy th{
  height:34px !important;
  max-height:34px !important;
  padding:4px 3px !important;
  line-height:1.15 !important;
  font-size:14px !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy td{
  height:48px !important;
  max-height:48px !important;
  padding:4px 3px !important;
  line-height:1.18 !important;
  font-size:14px !important;
  white-space:normal !important;
  overflow:hidden !important;
}
body.daily-tv-legacy .tv-col-time,
body.daily-tv-legacy .time-cell{width:17% !important;}
body.daily-tv-legacy .tv-col-room,
body.daily-tv-legacy .room-cell{width:14% !important;}
body.daily-tv-legacy .tv-col-subject,
body.daily-tv-legacy .subject-cell{width:22% !important;}
body.daily-tv-legacy .tv-col-teacher,
body.daily-tv-legacy .teacher-cell{width:27% !important;}
body.daily-tv-legacy .tv-col-status,
body.daily-tv-legacy .status-cell{width:20% !important;}
body.daily-tv-legacy .teacher-cell{
  font-size:13px !important;
  line-height:1.18 !important;
}
body.daily-tv-legacy .teacher{
  display:block !important;
  margin-top:1px !important;
  font-size:11px !important;
  line-height:1.1 !important;
  opacity:.78 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.daily-tv-legacy .status-badge{
  min-width:0 !important;
  padding:5px 8px !important;
  font-size:12px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
body.daily-tv-legacy .time-cell{
  font-size:17px !important;
  line-height:1.2 !important;
}
body.daily-tv-legacy .dashboard{
  gap:12px !important;
}
body.daily-tv-legacy .side-panel{
  width:29% !important;
}
body.daily-tv-legacy .schedule-area{
  margin-left:30% !important;
}
@media(max-width:900px){
  body.daily-tv-legacy .side-panel{width:100% !important;}
  body.daily-tv-legacy .schedule-area{margin-left:0 !important;}
}


/* =========================================================
   v302 - TV red ticker frame fit + keep 3-row compact tables
   Only applies when ?tv=1 / body.daily-tv-legacy is active.
   ========================================================= */
body.daily-tv-legacy .header-announcement{
  left:34px !important;
  right:34px !important;
  width:auto !important;
  max-width:none !important;
  box-sizing:border-box !important;
  margin:0 !important;
}
body.daily-tv-legacy #announcementText{
  width:100% !important;
  box-sizing:border-box !important;
}
body.daily-tv-legacy .tv-ticker-track{
  box-sizing:border-box !important;
}
body.daily-tv-legacy .schedule-area .panel{
  height:302px !important;
  min-height:302px !important;
  max-height:302px !important;
}
body.daily-tv-legacy .table-wrap{
  height:210px !important;
  min-height:210px !important;
  max-height:210px !important;
}
body.daily-tv-legacy .tv-col-time,
body.daily-tv-legacy .time-cell{width:18% !important;}
body.daily-tv-legacy .tv-col-room,
body.daily-tv-legacy .room-cell{width:13% !important;}
body.daily-tv-legacy .tv-col-subject,
body.daily-tv-legacy .subject-cell{width:24% !important;}
body.daily-tv-legacy .tv-col-teacher,
body.daily-tv-legacy .teacher-cell{width:25% !important;}
body.daily-tv-legacy .tv-col-status,
body.daily-tv-legacy .status-cell{width:20% !important;}


/* =========================================================
   v303 - TV only
   1) Table inner motion is bottom-to-top.
   2) Current classes box scrolls bottom-to-top only when more than one class exists.
   Does not affect normal laptop/mobile mode.
   ========================================================= */
body.daily-tv-legacy .current-card.tv-current-scroll{
  height:178px !important;
  min-height:178px !important;
  max-height:178px !important;
  overflow:hidden !important;
  padding:12px !important;
}
body.daily-tv-legacy .current-card.tv-current-scroll .tv-current-item{
  margin-bottom:10px !important;
}
body.daily-tv-legacy .table-wrap{
  overflow:hidden !important;
}


/* =========================================================
   v304 - TV only: keep inner table motion active even at Samsung TV zoom 85%.
   Normal laptop/mobile mode is untouched.
   ========================================================= */
body.daily-tv-legacy .table-wrap{
  height:188px !important;
  min-height:188px !important;
  max-height:188px !important;
  overflow:hidden !important;
}
body.daily-tv-legacy td{
  height:46px !important;
  max-height:46px !important;
  padding-top:3px !important;
  padding-bottom:3px !important;
}
body.daily-tv-legacy th{
  height:32px !important;
  max-height:32px !important;
}
body.daily-tv-legacy .current-card.tv-current-scroll{
  height:156px !important;
  min-height:156px !important;
  max-height:156px !important;
}


/* v308: TV v304 scroll/fitting preserved. Time sorting removed only from JS render order. */
