:root{--blue:#1877F2;--blue2:#0f5ec9;--navy:#13213a;--bg:#f0f2f5;--card:#fff;--text:#162033;--muted:#667085;--line:#e6eaf0;--red:#d9303e;--green:#13a663;--shadow:0 12px 32px rgba(31,44,69,.08);--radius:18px;--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Leelawadee UI",Tahoma,Arial,sans-serif;line-height:1.6}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 32px));margin:auto}.navbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-inner{min-height:70px;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:1.2rem;font-weight:900;color:var(--navy);white-space:nowrap}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--blue),#6da9ff);display:grid;place-items:center;color:#fff}.nav-links{display:flex;align-items:center;gap:8px;margin-left:auto}.nav-link{padding:10px 12px;border-radius:10px;color:#475467;font-weight:800;font-size:.9rem}.nav-link:hover{background:#edf4ff;color:var(--blue)}.btn{border:0;border-radius:12px;padding:11px 16px;cursor:pointer;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.22s ease}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue2);transform:translateY(-2px);box-shadow:0 10px 22px rgba(24,119,242,.22)}.btn-light{background:#fff;border:1px solid var(--line)}.btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.btn-danger-light{background:#fff1f2;color:#bd2630}.btn-sm{padding:8px 11px;font-size:.85rem;border-radius:10px}.hero{padding:70px 0 52px;background:radial-gradient(circle at 80% 12%,#dceaff 0,transparent 35%),linear-gradient(180deg,#f8fbff,var(--bg))}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center}.eyebrow{display:inline-flex;gap:7px;align-items:center;background:#e9f2ff;color:var(--blue);padding:7px 11px;border-radius:999px;font-size:.83rem;font-weight:900}.hero h1{font-size:clamp(2.2rem,5vw,4.1rem);line-height:1.08;letter-spacing:-.04em;margin:18px 0;color:#142039}.hero p{font-size:1.07rem;color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.demo-card{min-height:285px;border:10px solid #101b30;background:linear-gradient(145deg,#14223b,#1e3764);border-radius:24px;display:grid;place-items:center;text-align:center;color:#fff;padding:28px;box-shadow:0 24px 55px rgba(17,34,64,.18)}.play-bubble{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue);font-size:1.35rem;margin:0 auto 14px}.section{padding:68px 0}.section-title{text-align:center;margin-bottom:30px}.section-title h2{margin:0 0 6px;font-size:clamp(1.6rem,3vw,2.25rem)}.section-title p{margin:0;color:var(--muted)}.feature-grid,.subject-grid,.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 7px 22px rgba(31,44,69,.04)}.feature-card,.subject-card,.package-card{padding:24px;transition:.28s ease}.feature-card:hover,.subject-card:hover,.package-card:hover{transform:translateY(-6px);border-color:#cfe2ff;box-shadow:0 18px 44px rgba(24,119,242,.13)}.subject-top{display:flex;gap:14px;align-items:center}.subject-icon{width:54px;height:54px;border-radius:16px;background:#eef5ff;display:grid;place-items:center;font-size:1.65rem}.subject-card h3{margin:0}.subject-card p{color:var(--muted)}.subject-meta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:#eef5ff;color:var(--blue);font-size:.78rem;font-weight:900}.badge-green{background:#eaf8f1;color:#0d8a53}.badge-red{background:#fff0f1;color:#c02d36}.badge-gray{background:#f2f4f7;color:#667085}.price{font-size:2rem;font-weight:900;color:var(--navy);margin:10px 0}.package-card.featured{border:2px solid var(--blue);position:relative}.package-ribbon{position:absolute;top:-12px;right:18px;background:var(--blue);color:#fff;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:900}.instructor-card{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:28px}.instructor-photo{width:100%;aspect-ratio:1;border-radius:20px;background:linear-gradient(145deg,#dfeaff,#b9d4ff);display:grid;place-items:center;font-size:4rem}.footer{padding:35px 0;background:#111d33;color:#cbd5e1;margin-top:30px}.subject-hero{padding:38px 0 26px;background:linear-gradient(180deg,#f7fbff,var(--bg))}.subject-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.subject-head h1{font-size:clamp(2rem,4vw,3rem);margin:8px 0}.subject-head p{color:var(--muted);max-width:820px}.search-panel{position:sticky;top:82px;z-index:25;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 8px 22px rgba(31,44,69,.05)}.search-row{display:flex;gap:10px}.search-input{flex:1;border:1px solid #dfe4ea;border-radius:13px;padding:12px 14px;outline:none}.search-input:focus{border-color:#a9caff;box-shadow:0 0 0 4px rgba(24,119,242,.08)}.filter-scroller{display:flex;gap:8px;overflow:auto;padding-top:10px;scrollbar-width:none}.filter-scroller::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;border:1px solid var(--line);background:#fff;color:#475467;padding:8px 11px;border-radius:999px;font-weight:850;cursor:pointer}.filter-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}.progress-box{margin-top:12px;background:#e9f2ff;border-radius:13px;padding:11px 13px}.progress-track{height:8px;background:#d6e5f8;border-radius:999px;overflow:hidden;margin-top:7px}.progress-bar{height:100%;width:0;background:var(--blue);transition:width .35s ease}.lesson-list{display:grid;gap:12px;margin-top:18px}.lesson-row{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.24s ease}.lesson-row:hover{border-color:#cfe2ff;box-shadow:0 10px 26px rgba(31,44,69,.07)}.lesson-main{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;padding:16px}.ep-chip{background:#edf4ff;color:var(--blue);border-radius:12px;padding:10px 12px;text-align:center;font-weight:900}.lesson-title{font-weight:900;font-size:1.02rem}.lesson-sub{color:var(--muted);font-size:.86rem}.lesson-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.lesson-detail{display:none;border-top:1px solid var(--line);background:#fbfcfe;padding:16px}.lesson-row.open .lesson-detail{display:block}.content-item,.resource-item{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px;margin-bottom:9px}.content-info{min-width:0}.content-title{font-weight:900}.content-url{font-size:.76rem;color:#98a2b3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:560px}.content-actions{display:flex;gap:7px;flex-wrap:wrap}.empty-state{text-align:center;padding:40px;border:1px dashed #cfd6df;border-radius:16px;background:#fff;color:var(--muted)}.study-toolbar{position:sticky;top:0;z-index:70;background:#fff;border-bottom:1px solid var(--line);padding:10px 14px;display:flex;gap:8px;align-items:center}.study-title{font-weight:900;margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-shell{display:grid;grid-template-columns:1fr 1fr;height:calc(100vh - 62px)}.study-video{padding:20px;overflow:auto;background:#f5f8fc}.study-exam{border-left:1px solid var(--line);background:#fff}.study-exam iframe{width:100%;height:100%;border:0}.study-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.fb-placeholder{background:linear-gradient(145deg,#14223b,#203d70);color:#fff;border-radius:18px;padding:30px;text-align:center;margin-bottom:15px}.split-help{font-size:.88rem;color:var(--muted);margin-top:10px}.modal-backdrop{position:fixed;inset:0;background:rgba(8,15,30,.48);display:none;align-items:center;justify-content:center;z-index:200;padding:18px}.modal-backdrop.show{display:flex}.modal{width:min(520px,100%);background:#fff;border-radius:18px;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.22)}.form-control{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;margin:6px 0 12px}.reveal,.reveal-up,.reveal-left,.reveal-right,.reveal-scale{opacity:0;transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal,.reveal-up{transform:translateY(34px)}.reveal-left{transform:translateX(-38px)}.reveal-right{transform:translateX(38px)}.reveal-scale{transform:scale(.965)}.is-visible{opacity:1!important;transform:none!important}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}.hero-load{opacity:0;transform:translateY(20px);animation:heroUp .85s var(--ease) forwards}.hero-load.delay-1{animation-delay:.08s}.hero-load.delay-2{animation-delay:.16s}.hero-load.delay-3{animation-delay:.24s}.nav-load{opacity:0;transform:translateY(-10px);animation:navDown .65s ease forwards}@keyframes heroUp{to{opacity:1;transform:none}}@keyframes navDown{to{opacity:1;transform:none}}.admin-wrap{width:min(1240px,calc(100% - 28px));margin:28px auto}.admin-grid{display:grid;grid-template-columns:220px 1fr;gap:18px}.admin-side,.admin-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.admin-side{height:max-content;position:sticky;top:18px}.admin-side a{display:block;padding:10px 11px;border-radius:10px;font-weight:800}.admin-side a:hover,.admin-side a.active{background:#edf4ff;color:var(--blue)}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{background:#fafbfc;color:#667085;font-size:.84rem}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.alert{padding:11px 13px;border-radius:12px;margin:10px 0}.alert-ok{background:#eaf8f1;color:#0d8a53}.alert-warn{background:#fff5e6;color:#946200}
@media(max-width:900px){.hero-grid,.feature-grid,.subject-grid,.package-grid{grid-template-columns:1fr}.nav-links{overflow:auto;white-space:nowrap}.hide-mobile{display:none}.subject-head{display:block}.lesson-main{grid-template-columns:90px 1fr}.lesson-actions{grid-column:1/-1;justify-content:flex-start}.study-shell{display:block;height:auto}.study-video{min-height:44vh}.study-exam{height:70vh;border-left:0;border-top:1px solid var(--line)}.admin-grid{grid-template-columns:1fr}.admin-side{position:static}.instructor-card{grid-template-columns:1fr}.instructor-photo{max-width:180px}}@media(max-width:560px){.container{width:min(100% - 22px,1180px)}.brand span:last-child{display:none}.hero h1{font-size:2.35rem}.lesson-main{grid-template-columns:1fr}.ep-chip{width:max-content}.search-row{display:block}.search-input{width:100%;margin-bottom:8px}.content-item,.resource-item{align-items:flex-start;flex-direction:column}.content-actions{width:100%}.content-actions .btn{flex:1}.grid-2{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal,.reveal-up,.reveal-left,.reveal-right,.reveal-scale,.hero-load,.nav-load{opacity:1!important;transform:none!important}}


/* ===== EP badges inline with lesson title (V3) ===== */
.lesson-main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:16px;
}
.lesson-info{min-width:0;}
.lesson-heading-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 10px;
  min-width:0;
}
.ep-badge-list{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  flex:0 0 auto;
}
.ep-mini-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:5px 10px;
  border-radius:10px;
  background:#edf4ff;
  color:var(--blue);
  border:1px solid #d8e8ff;
  font-weight:900;
  font-size:.82rem;
  line-height:1;
  white-space:nowrap;
}
.ep-range-badge{min-width:auto;}
.ep-range-count{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 8px;
  border-radius:999px;
  background:#f2f4f7;
  color:#667085;
  font-size:.74rem;
  font-weight:850;
  white-space:nowrap;
}
.lesson-title{
  min-width:0;
  font-weight:900;
  font-size:1.02rem;
  color:var(--text);
}
.lesson-sub{
  margin-top:4px;
  color:var(--muted);
  font-size:.86rem;
}
.lesson-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
}

@media(max-width:900px){
  .lesson-main{grid-template-columns:1fr;gap:12px;}
  .lesson-actions{justify-content:flex-start;}
}
@media(max-width:560px){
  .lesson-heading-line{align-items:flex-start;gap:7px 8px;}
  .ep-mini-badge{min-height:30px;padding:5px 8px;font-size:.79rem;}
  .lesson-title{width:100%;font-size:1rem;}
  .lesson-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;}
  .lesson-actions .btn:last-child{grid-column:1/-1;}
}


/* ===== V4 Hybrid Login / Progress ===== */
.member-pill{
  display:inline-flex;
  align-items:center;
  max-width:210px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding:8px 11px;
  border-radius:999px;
  background:#eaf8f1;
  color:#087a49;
  font-size:.82rem;
  font-weight:850;
  border:1px solid #caefdd;
}

.account-progress-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px 16px;
  margin-bottom:12px;
  box-shadow:0 7px 22px rgba(31,44,69,.04);
}

.account-progress-main{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}

.account-avatar{
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:50%;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#edf4ff;
  color:var(--blue);
  font-size:1.2rem;
}

.account-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.account-mini{
  padding:10px 12px;
  margin-bottom:14px;
  border-radius:12px;
  background:#eef5ff;
  color:#395271;
  font-size:.87rem;
}

.account-mini a{
  color:var(--blue);
  font-weight:850;
  margin-left:5px;
}

/* Inline EP badge + ชื่อบทเรียนในแถวเดียว */
.lesson-main{
  grid-template-columns:minmax(0,1fr) auto !important;
}

.lesson-info{
  min-width:0;
}

.lesson-heading-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 10px;
  min-width:0;
}

.lesson-heading-line .lesson-title{
  min-width:180px;
  flex:1 1 260px;
}

.ep-badge-list{
  flex:0 0 auto;
}

@media (max-width:720px){
  .account-progress-card{
    align-items:flex-start;
    flex-direction:column;
  }

  .account-progress-card .btn{
    width:100%;
  }

  .member-pill{
    display:none;
  }

  .lesson-main{
    grid-template-columns:1fr !important;
  }

  .lesson-heading-line{
    align-items:flex-start;
  }

  .lesson-heading-line .lesson-title{
    flex-basis:100%;
    min-width:0;
  }
}


/* =========================================================
   V5 — Compact Subject Page / Category Dropdown / Price Sync
   ========================================================= */

.subject-hero-compact{
  padding:14px 0 8px !important;
  background:linear-gradient(180deg,#f7fbff 0%,#f0f2f5 100%);
}

.subject-compact-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px 18px;
  box-shadow:0 7px 22px rgba(31,44,69,.045);
}

.subject-compact-main{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.subject-compact-icon{
  flex:0 0 52px;
  width:52px;
  height:52px;
}

.subject-compact-copy{
  min-width:0;
}

.subject-compact-kicker{
  color:var(--blue);
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.02em;
  margin-bottom:1px;
}

.subject-compact-copy h1{
  font-size:1.62rem !important;
  line-height:1.18;
  margin:0 0 3px !important;
  letter-spacing:-.02em;
}

.subject-compact-copy p{
  margin:0 !important;
  color:var(--muted);
  font-size:.91rem;
  line-height:1.45;
  max-width:760px;
}

.subject-meta-compact{
  margin:8px 0 0 !important;
}

.subject-compact-side{
  min-width:176px;
  display:grid;
  grid-template-columns:auto auto;
  align-items:center;
  justify-content:end;
  gap:7px;
}

.compact-price-caption{
  grid-column:1/-1;
  text-align:right;
  color:var(--muted);
  font-size:.74rem;
  font-weight:800;
  line-height:1;
}

.compact-price-value{
  grid-column:1/-1;
  text-align:right;
  color:var(--navy);
  font-size:1.35rem;
  font-weight:950;
  line-height:1.1;
  margin-bottom:2px;
}

.subject-content-section{
  padding:8px 0 58px !important;
}

.account-progress-compact{
  min-height:52px;
  padding:9px 13px !important;
  margin-bottom:8px !important;
}

.account-progress-compact .account-avatar{
  width:34px;
  height:34px;
  flex-basis:34px;
  font-size:1rem;
}

.guest-inline-note{
  display:inline;
  margin-left:4px;
}

.search-panel-compact{
  top:78px;
  padding:10px !important;
  border-radius:16px !important;
}

.search-row-v5{
  display:grid !important;
  grid-template-columns:minmax(260px,1fr) minmax(230px,320px) auto;
  align-items:stretch;
  gap:8px !important;
}

.search-row-v5 .search-input{
  min-width:0;
}

.category-select-box{
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
  border:1px solid #dfe4ea;
  border-radius:13px;
  background:#fff;
  overflow:hidden;
  transition:border-color .16s,box-shadow .16s;
}

.category-select-box:focus-within{
  border-color:#a9caff;
  box-shadow:0 0 0 4px rgba(24,119,242,.08);
}

.category-select-label{
  flex:0 0 auto;
  padding-left:12px;
  color:#667085;
  font-size:.75rem;
  font-weight:850;
}

.category-select{
  min-width:0;
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  padding:10px 34px 10px 8px;
  color:#344054;
  font-weight:800;
  cursor:pointer;
}

.search-exam-btn{
  white-space:nowrap;
}

.progress-box-compact{
  margin-top:8px !important;
  padding:7px 10px !important;
}

.progress-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:.82rem;
}

.progress-box-compact .progress-track{
  height:6px;
  margin-top:5px;
}

/* Pricing inside subject */
.subject-package-section{
  margin-top:12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:13px 14px;
  box-shadow:0 7px 22px rgba(31,44,69,.035);
}

.subject-package-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:9px;
}

.subject-package-all-link{
  white-space:nowrap;
  color:var(--blue);
  font-size:.82rem;
  font-weight:850;
}

.subject-package-list{
  display:grid;
  gap:7px;
}

.subject-package-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:14px;
  align-items:center;
  padding:10px 11px;
  border:1px solid #edf0f4;
  border-radius:13px;
  background:#fbfcfe;
}

.subject-package-info{
  min-width:0;
}

.subject-package-title-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}

.subject-package-price{
  white-space:nowrap;
  color:var(--navy);
  font-size:1.08rem;
  font-weight:950;
}

/* Hide legacy horizontal category scroller on V5 subject page */
.search-panel-compact .filter-scroller{
  display:none !important;
}

@media(max-width:900px){
  .subject-compact-card{
    grid-template-columns:1fr;
    gap:11px;
  }

  .subject-compact-side{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
  }

  .compact-price-caption{
    width:100%;
    text-align:left;
  }

  .compact-price-value{
    width:auto;
    text-align:left;
    margin-right:auto;
  }

  .search-row-v5{
    grid-template-columns:minmax(0,1fr) minmax(210px,280px);
  }

  .search-exam-btn{
    grid-column:1/-1;
    width:max-content;
  }
}

@media(max-width:620px){
  .subject-hero-compact{
    padding-top:8px !important;
  }

  .subject-compact-card{
    padding:13px;
  }

  .subject-compact-main{
    align-items:flex-start;
  }

  .subject-compact-icon{
    width:44px;
    height:44px;
    flex-basis:44px;
    font-size:1.35rem;
  }

  .subject-compact-copy h1{
    font-size:1.34rem !important;
  }

  .subject-compact-copy p{
    font-size:.84rem;
  }

  .subject-meta-compact{
    gap:5px;
  }

  .subject-compact-side{
    border-top:1px solid var(--line);
    padding-top:10px;
  }

  .account-progress-compact{
    gap:8px !important;
  }

  .guest-inline-note{
    display:block;
    margin-left:0;
  }

  .search-panel-compact{
    position:relative !important;
    top:auto !important;
  }

  .search-row-v5{
    grid-template-columns:1fr;
  }

  .search-exam-btn{
    grid-column:auto;
    width:100%;
  }

  .category-select-box{
    min-height:45px;
  }

  .subject-package-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }

  .subject-package-row{
    grid-template-columns:1fr auto;
  }

  .subject-package-info{
    grid-column:1/-1;
  }

  .subject-package-row .btn{
    min-width:104px;
  }

  .progress-label-row{
    align-items:flex-start;
    flex-direction:column;
    gap:0;
  }
}


/* =========================================================
   V6 — Reviews + YouTube teaching samples
   ========================================================= */
.section-tight{padding-top:52px;padding-bottom:52px}
.hero-youtube-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 24px 55px rgba(17,34,64,.14)}
.hero-video-frame,.proof-video,.media-video-frame{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden}
.hero-video-frame iframe,.proof-video iframe,.media-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.hero-video-copy{padding:14px 16px;display:grid;gap:5px}.hero-video-copy strong{font-size:1.02rem}.hero-video-copy span:last-child{color:var(--muted);font-size:.86rem}
.teaching-section{background:linear-gradient(180deg,#f6f9ff 0,#f0f2f5 100%)}
.sample-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sample-card{overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.sample-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}
.sample-thumb{position:relative;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#16213b;cursor:pointer;display:block;overflow:hidden}.sample-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.sample-card:hover .sample-thumb img{transform:scale(1.035)}
.sample-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,12,25,.32))}.sample-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.95);color:#e62117;font-size:1.22rem;box-shadow:0 10px 28px rgba(0,0,0,.24)}
.sample-thumb-fallback{height:100%;display:grid;place-items:center;color:#fff;font-weight:900;font-size:1.25rem}
.sample-body{padding:16px}.sample-body h3{margin:8px 0 5px}.sample-body p{margin:0 0 12px;color:var(--muted);font-size:.9rem}.sample-meta{display:flex;gap:6px;flex-wrap:wrap}
.review-section{background:#fff}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-grid-page{align-items:start}
.review-card{overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.review-image{display:block;width:100%;padding:0;border:0;background:#f3f5f8;cursor:zoom-in;max-height:290px;overflow:hidden}.review-image img{width:100%;height:100%;max-height:290px;object-fit:cover;display:block}
.review-body{padding:17px}.review-stars{color:#f4a100;letter-spacing:1px;font-weight:900;font-size:1rem}.review-body blockquote{margin:10px 0 16px;font-size:.96rem;color:#344054;line-height:1.7}.review-person{display:grid;gap:1px}.review-person span{font-size:.8rem;color:var(--muted)}.review-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}.review-footer a{color:var(--blue);font-size:.82rem;font-weight:800}.center-action{text-align:center;margin-top:20px}.package-proof{display:block;color:#8a6200;background:#fff8e5;border:1px solid #fde7a7;border-radius:10px;padding:8px 10px;margin:10px 0 12px;font-size:.84rem;font-weight:850;text-align:center}
.subject-review-proof{display:inline-flex;color:var(--blue);font-weight:850;font-size:.82rem;margin-top:10px}
.subject-proof-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:12px;margin-top:12px}.proof-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 7px 22px rgba(31,44,69,.035);min-width:0}.proof-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.proof-panel-head a{color:var(--blue);font-size:.82rem;font-weight:850;white-space:nowrap}.proof-video{border-radius:13px}.proof-title{display:block;margin-top:10px}.proof-more-videos{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.proof-video-link{border:1px solid #dce6f4;background:#f7faff;color:#31547b;border-radius:10px;padding:7px 9px;font-size:.79rem;font-weight:800;cursor:pointer}.proof-video-link:hover{border-color:#a9caff;background:#edf5ff;color:var(--blue)}
.proof-review-list{display:grid;gap:9px}.proof-review-item{display:grid;grid-template-columns:auto 1fr;gap:10px;border:1px solid #edf0f4;border-radius:12px;padding:9px;background:#fbfcfe}.proof-review-thumb{width:68px;height:68px;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:#eef1f5}.proof-review-thumb img{width:100%;height:100%;object-fit:cover}.proof-review-copy{min-width:0}.proof-review-copy p{margin:3px 0;font-size:.82rem;line-height:1.45;color:#475467}.proof-review-copy strong{font-size:.82rem}.proof-review-copy>a{font-size:.75rem;color:var(--blue);margin-left:7px;font-weight:800}
.media-modal-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(6,12,24,.82);display:none;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(7px)}.media-modal-backdrop.show{display:flex}.media-modal-card{position:relative;width:min(1000px,96vw);background:#090f1b;border-radius:18px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.42)}.media-modal-close{position:absolute;right:10px;top:10px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;font-size:1.65rem;line-height:1;cursor:pointer}.image-modal-card{width:auto;max-width:94vw;max-height:92vh;background:transparent;overflow:visible}.image-modal-card img{display:block;max-width:92vw;max-height:88vh;object-fit:contain;border-radius:14px;box-shadow:0 20px 70px rgba(0,0,0,.5)}.modal-open{overflow:hidden}
.review-filter-bar{display:flex;gap:7px;overflow:auto;padding:6px 0 16px;scrollbar-width:none}.review-filter-bar::-webkit-scrollbar{display:none}.filter-link{white-space:nowrap;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.82rem;font-weight:800;color:#475467}.filter-link.active{background:var(--blue);border-color:var(--blue);color:#fff}
.admin-review-current{display:flex;align-items:center;gap:12px;margin:8px 0 12px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fafbfc}.admin-review-current img{width:96px;height:72px;object-fit:cover;border-radius:9px}
@media(max-width:900px){.sample-grid,.review-grid{grid-template-columns:repeat(2,1fr)}.subject-proof-grid{grid-template-columns:1fr}.hero-youtube-card{max-width:720px;margin:auto}}
@media(max-width:620px){.sample-grid,.review-grid{grid-template-columns:1fr}.review-image{max-height:360px}.review-image img{max-height:360px}.media-modal-backdrop{padding:10px}.subject-proof-grid{margin-top:9px}.proof-review-item{grid-template-columns:60px 1fr}.proof-review-thumb{width:60px;height:60px}}


/* =========================================================
   V6.2 — Compact price inside first subject card
   ========================================================= */
.subject-compact-side{
  position:relative;
}

.compact-package-details{
  position:relative;
}

.compact-package-details > summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
}

.compact-package-details > summary::-webkit-details-marker{
  display:none;
}

.compact-package-popover{
  position:absolute;
  z-index:60;
  right:0;
  top:calc(100% + 9px);
  width:min(440px, 88vw);
  background:#fff;
  border:1px solid var(--line);
  border-radius:15px;
  padding:12px;
  box-shadow:0 18px 44px rgba(20,36,64,.17);
}

.compact-package-popover::before{
  content:'';
  position:absolute;
  top:-6px;
  right:34px;
  width:12px;
  height:12px;
  background:#fff;
  border-left:1px solid var(--line);
  border-top:1px solid var(--line);
  transform:rotate(45deg);
}

.compact-package-popover-title{
  position:relative;
  z-index:1;
  font-size:.86rem;
  font-weight:900;
  color:var(--navy);
  margin-bottom:8px;
}

.compact-package-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:10px;
  padding:9px 0;
  border-top:1px solid #eef1f5;
}

.compact-package-item-main{
  min-width:0;
}

.compact-package-item-price{
  white-space:nowrap;
  font-weight:950;
  color:var(--navy);
}

.compact-package-all-link{
  display:block;
  text-align:right;
  margin-top:7px;
  color:var(--blue);
  font-size:.8rem;
  font-weight:850;
  text-decoration:none;
}

.subject-package-section{
  display:none !important;
}

@media(max-width:620px){
  .subject-compact-side{
    width:100%;
  }

  .compact-package-details{
    position:static;
  }

  .compact-package-popover{
    left:0;
    right:auto;
    width:100%;
    top:calc(100% + 8px);
  }

  .compact-package-popover::before{
    right:auto;
    left:86px;
  }

  .compact-package-item{
    grid-template-columns:1fr auto;
  }

  .compact-package-item .btn{
    grid-column:2;
  }
}
