/* NEET topic-wise — compact picker layouts */

.neet-tw-page{
  width:min(1180px, calc(100vw - 28px));
  max-width:none;
  min-height:calc(100vh - 142px);
  margin:0 auto;
  padding:10px 8px 22px;
  position:relative;
  z-index:1;
}

.neet-tw-hero{
  text-align:left;
  margin:0 auto 14px;
  padding:17px 20px;
  border-radius:20px;
  border:1px solid rgba(245,180,0,.22);
  background:
    radial-gradient(660px 190px at 14% 0%, rgba(245,180,0,.18), transparent 58%),
    radial-gradient(560px 190px at 88% 18%, rgba(56,189,248,.13), transparent 58%),
    linear-gradient(135deg, rgba(107,44,174,.20), rgba(16,8,38,.88));
  box-shadow:0 22px 54px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06);
}
.neet-tw-hero::after{ display:none; }
.neet-tw-kicker{
  font-size:.66rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
  color:var(--gold,#f5b400); margin:0 0 3px;
}
.neet-tw-title{ margin:0 0 5px; font-size:clamp(1.5rem,2.4vw,2.05rem); font-weight:950; color:#fff; letter-spacing:-.02em; }
.neet-tw-sub{ margin:0; color:rgba(255,255,255,.72); font-size:.88rem; line-height:1.42; max-width:620px; }

.neet-tw-subject-row{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px;
  max-width:none; margin:0 auto;
}
@media(max-width:640px){
  .neet-tw-subject-row{ grid-template-columns:1fr; max-width:280px; }
}

.neet-tw-subject-pick{
  position:relative;
  overflow:hidden;
  display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:10px;
  min-height:250px;
  padding:22px 20px 18px; border-radius:20px; text-decoration:none; color:#fff;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(240px 120px at 18% 0%, rgba(245,180,0,.12), transparent 60%),
    linear-gradient(160deg,rgba(107,44,174,.25),rgba(16,8,38,.95));
  box-shadow:0 18px 46px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .15s, border-color .15s, box-shadow .15s;
}
.neet-tw-subject-pick::before{
  content:"";
  position:absolute;
  inset:-50% -34% auto auto;
  width:190px;
  height:190px;
  border-radius:50%;
  background:rgba(245,180,0,.08);
  filter:blur(4px);
}
.neet-tw-subject-pick em{
  position:relative;
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 14px;
  border-radius:12px;
  font-style:normal; font-size:.72rem; font-weight:950; color:#0b0612;
  letter-spacing:.06em; text-transform:uppercase;
  background:#f5b400;
  box-shadow:0 12px 24px rgba(245,180,0,.24);
}
.neet-tw-subject-pick:hover{
  transform:translateY(-5px); border-color:rgba(245,180,0,.45);
  box-shadow:0 26px 62px rgba(107,44,174,.28), 0 0 0 1px rgba(245,180,0,.10) inset;
}
.neet-tw-subject-pick i{
  position:relative;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:16px;
  font-size:1.45rem;
  color:var(--gold,#f5b400);
  background:rgba(245,180,0,.12);
  border:1px solid rgba(245,180,0,.28);
}
.neet-tw-subject-pick span{ position:relative; font-weight:950; font-size:1.35rem; margin-top:8px; }
.neet-tw-subject-pick small{
  position:relative;
  display:block;
  max-width:92%;
  font-size:.86rem;
  font-weight:800;
  line-height:1.4;
  color:rgba(255,255,255,.62);
}
.neet-tw-subject-pick.bio i{ color:#4ade80; border-color:rgba(74,222,128,.32); background:rgba(74,222,128,.12); }
.neet-tw-subject-pick.phy i{ color:#60a5fa; border-color:rgba(96,165,250,.32); background:rgba(96,165,250,.12); }
.neet-tw-subject-pick.chem i{ color:#f472b6; border-color:rgba(244,114,182,.32); background:rgba(244,114,182,.12); }

.neet-tw-class-row{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;
  max-width:440px; margin:0;
}
.neet-tw-class-row--arena{
  grid-template-columns:repeat(2,minmax(260px,1fr));
  gap:16px;
  max-width:none;
}
@media(max-width:480px){
  .neet-tw-class-row{ max-width:100%; }
}
.neet-tw-class-pick{
  position:relative;
  overflow:hidden;
  display:flex; flex-direction:column; gap:8px; padding:22px 20px 18px; border-radius:20px;
  min-height:190px;
  text-decoration:none; color:#fff; border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(240px 120px at 16% 0%, rgba(245,180,0,.14), transparent 60%),
    linear-gradient(145deg,rgba(245,180,0,.13),rgba(16,8,38,.94));
  box-shadow:0 18px 46px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .15s, box-shadow .15s;
}
.neet-tw-class-pick::before{
  content:"";
  position:absolute;
  inset:-50% -34% auto auto;
  width:170px;
  height:170px;
  border-radius:50%;
  background:rgba(245,180,0,.08);
  filter:blur(4px);
}
.neet-tw-class-pick:hover{ transform:translateY(-5px); box-shadow:0 26px 62px rgba(107,44,174,.26), 0 0 0 1px rgba(245,180,0,.10) inset; }
.neet-tw-class-num{ position:relative; font-weight:950; font-size:1.5rem; color:var(--gold,#f5b400); }
.neet-tw-class-meta{ position:relative; font-size:.9rem; font-weight:850; color:rgba(255,255,255,.68); }
.neet-tw-class-copy{ position:relative; font-size:.82rem; font-weight:800; line-height:1.4; color:rgba(255,255,255,.56); max-width:88%; }
.neet-tw-class-go{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  margin-top:auto;
  min-height:34px;
  padding:8px 14px;
  border-radius:12px;
  font-size:.72rem;
  font-weight:950;
  color:#0b0612;
  background:#f5b400;
  box-shadow:0 12px 24px rgba(245,180,0,.24);
}

.neet-tw-grid{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:8px;
  max-width:720px; margin:0 auto;
}
.neet-tw-grid--arena{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  max-width:none;
  margin:0 auto;
}
.neet-tw-grid.compact .neet-tw-card{ min-height:72px; padding:10px 8px; }
.neet-tw-grid--arena.compact .neet-tw-card,
.neet-tw-grid--arena .neet-tw-card{ min-height:126px; padding:16px 14px; }
.neet-tw-card{
  position:relative;
  overflow:hidden;
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start; text-align:left;
  text-decoration:none; color:#fff; min-height:80px; padding:10px 8px; border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(180px 90px at 12% 0%, rgba(245,180,0,.12), transparent 60%),
    linear-gradient(165deg,rgba(107,44,174,.18),rgba(16,8,38,.92));
  box-shadow:0 12px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .15s, border-color .15s, box-shadow .15s;
}
.neet-tw-card::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-48px;
  width:88px;
  height:88px;
  border-radius:50%;
  background:rgba(245,180,0,.07);
}
.neet-tw-card:hover{
  transform:translateY(-4px); border-color:rgba(245,180,0,.4);
  box-shadow:0 18px 42px rgba(245,180,0,.12), 0 0 0 1px rgba(245,180,0,.08) inset;
}
.neet-tw-card-num{
  position:relative;
  font-size:.58rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  color:var(--gold,#f5b400); margin-bottom:8px;
}
.neet-tw-card-name{ position:relative; font-size:.94rem; font-weight:950; line-height:1.22; }
.neet-tw-card-wt{
  position:relative;
  display:inline-flex;
  width:max-content;
  margin-top:auto;
  padding:5px 8px;
  border-radius:999px;
  font-size:.58rem;
  color:#0b0612;
  background:#f5b400;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.neet-tw-card--locked{ opacity:.88; cursor:default; display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px; }
.neet-tw-card--locked .neet-tw-card-num,.neet-tw-card--locked .neet-tw-card-name{ filter:blur(3px); opacity:.42; user-select:none; }
.neet-tw-card:not(.neet-tw-card--locked):first-child{ border-color:rgba(245,180,0,.52); box-shadow:0 18px 46px rgba(245,180,0,.14),inset 0 0 0 1px rgba(245,180,0,.1); }
.neet-tw-locked-vault{ position:relative; grid-column:1/-1; overflow:hidden; border:1px solid rgba(245,180,0,.2); border-radius:20px; background:rgba(10,5,20,.72); }
.neet-tw-locked-vault__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; max-height:240px; padding:12px; overflow:hidden; filter:blur(4px); opacity:.34; pointer-events:none; user-select:none; }
.neet-tw-locked-vault__cta{ position:relative; z-index:2; display:flex; align-items:center; justify-content:center; gap:12px; min-height:78px; padding:14px 18px; text-align:left; border-bottom:1px solid rgba(245,180,0,.18); background:linear-gradient(90deg,rgba(60,25,77,.96),rgba(20,8,35,.96)); box-shadow:0 14px 32px rgba(0,0,0,.28); }
.neet-tw-locked-vault__cta>i{ display:grid; flex:0 0 auto; place-items:center; width:42px; height:42px; border-radius:50%; color:#211029; background:#f5b400; box-shadow:0 0 28px rgba(245,180,0,.3); }
.neet-tw-locked-vault__cta strong{ color:#fff; font-size:1.06rem; }
.neet-tw-locked-vault__cta span{ color:rgba(255,255,255,.72); font-size:.9rem; }
.neet-tw-locked-vault__cta a{ flex:0 0 auto; margin-left:8px; padding:10px 16px; border-radius:12px; color:#211029; background:#f5b400; font-weight:950; text-decoration:none; }
@media(max-width:920px){.neet-tw-locked-vault__grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.neet-tw-locked-vault__grid{grid-template-columns:1fr;max-height:170px}.neet-tw-locked-vault__cta{flex-wrap:wrap;justify-content:flex-start}.neet-tw-locked-vault__cta span{flex:1;min-width:190px}.neet-tw-locked-vault__cta a{width:100%;margin-left:0;text-align:center}}
.neet-tw-lock{ position:relative; color:#f5b400; margin-left:auto; }
.neet-tw-unlock{ position:relative; font-size:.78rem; font-weight:900; color:#f5b400; text-decoration:none; width:100%; }
.neet-tw-unlock:hover{ text-decoration:underline; }

.neet-practice-back{
  display:inline-block; margin-bottom:10px; font-size:.82rem; font-weight:800;
  color:var(--gold,#f5b400); text-decoration:none; opacity:.9;
}
.neet-instr-arena{
  border:1px solid rgba(245,180,0,.25);
  background:linear-gradient(160deg,rgba(107,44,174,.15),rgba(16,8,38,.95));
  border-radius:14px; padding:14px;
}
.neet-cta-pulse{ animation:neetPulse 2s ease-in-out infinite; }
@keyframes neetPulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(245,180,0,.4); }
  50%{ box-shadow:0 0 0 8px rgba(245,180,0,0); }
}
.neet-practice-page.compact{ max-width:640px; margin:0 auto; }

@media(max-width:920px){
  .neet-tw-page{ width:min(760px, calc(100vw - 22px)); min-height:auto; }
  .neet-tw-subject-row{ grid-template-columns:1fr; }
  .neet-tw-subject-pick{ min-height:210px; }
  .neet-tw-class-row--arena{ grid-template-columns:1fr; max-width:none; }
  .neet-tw-grid--arena{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px){
  .neet-tw-hero{ padding:16px 14px; border-radius:18px; }
  .neet-tw-subject-pick{ min-height:0; padding:18px 15px; }
  .neet-tw-class-pick{ min-height:0; padding:18px 15px; }
  .neet-tw-grid--arena{ grid-template-columns:1fr; }
  .neet-tw-grid--arena .neet-tw-card{ min-height:104px; }
}
