/* QiRa Exam selector content only. The shared shell files remain byte-for-byte unchanged. */
.shell[data-current-route="exam"] .qira-exam-selector{
  width:100%!important;
  max-width:none!important;
  height:calc(100dvh - 76px);
  min-height:0!important;
  padding:14px 3.4vw 14px!important;
  display:grid!important;
  grid-template-rows:minmax(250px,1.75fr) minmax(220px,1.45fr) minmax(112px,.72fr);
  gap:12px;
  overflow:hidden;
}

.qira-exam-selector-hero{
  grid-template-columns:minmax(390px,.88fr) minmax(560px,1.24fr) minmax(310px,.68fr)!important;
}
.qira-exam-hero-visual{position:relative;grid-column:1;grid-row:1;height:100%;min-height:0;z-index:2}
.qira-exam-hero-copy{position:relative;grid-column:2;grid-row:1;z-index:4;align-self:center;padding:22px clamp(22px,2.7vw,52px) 22px clamp(10px,1.5vw,28px)}
.qira-exam-hero-icon-wrap{position:relative;grid-column:3;grid-row:1;height:100%;min-height:0;display:grid;place-items:center;z-index:3;padding:18px 25px 12px 0}
.qira-exam-badge{display:inline-flex;align-items:center;min-height:38px;padding:0 17px;margin-bottom:14px;border-radius:12px;background:linear-gradient(135deg,#7226e8,#a044ef);color:#fff;font-size:14px;line-height:1;font-weight:950;box-shadow:0 8px 18px rgba(111,37,224,.26)}
.qira-exam-hero-copy h1{max-width:730px;margin:0 0 12px;font-size:clamp(30px,2.45vw,48px);line-height:1.05;letter-spacing:-1.5px;color:#111a3d}
.qira-exam-hero-copy p{max-width:720px;margin:0;font-size:clamp(13px,1vw,18px);line-height:1.42;color:#4f5b7c;font-weight:650}
.qira-exam-hero-mascot{position:absolute;left:50%;top:51%;width:min(29vw,365px);height:min(29vw,365px);transform:translate(-48%,-45%);object-fit:contain;z-index:4;filter:drop-shadow(0 22px 20px rgba(33,39,85,.18))}
.qira-exam-hero-icon{width:min(100%,330px);height:min(90%,260px);object-fit:contain;filter:drop-shadow(0 18px 18px rgba(72,53,114,.18))}
.qira-exam-float{position:absolute;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:24px;font-style:normal;font-weight:950;z-index:5;box-shadow:0 10px 18px rgba(43,35,82,.20)}
.qira-exam-float-star-one{left:4%;top:16%;background:linear-gradient(135deg,#ffc85c,#ff9c23);transform:rotate(-9deg)}
.qira-exam-float-star-two{left:8%;bottom:18%;background:linear-gradient(135deg,#a469ff,#6c35de);transform:rotate(8deg)}
.qira-exam-float-medal{right:3%;top:28%;border-radius:50%;background:linear-gradient(135deg,#ff6d9f,#e8367a);transform:rotate(8deg)}
.qira-exam-float-check{right:10%;bottom:14%;background:linear-gradient(135deg,#5be34c,#20bb46);transform:rotate(-7deg)}

.qira-exam-year-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.qira-exam-year-card .qira-card-copy{right:16px!important}
.qira-exam-year-card .qira-year-art img{width:98%!important;height:100%!important}

@media (min-width:901px) and (max-height:950px){
  .shell[data-current-route="exam"] .qira-exam-selector{height:calc(100dvh - 68px);padding:10px 2.4vw!important;grid-template-rows:minmax(225px,1.72fr) minmax(190px,1.36fr) minmax(102px,.67fr);gap:9px}
  .qira-exam-selector-hero{border-radius:25px}
  .qira-exam-hero-copy{padding:15px 26px 15px 8px}
  .qira-exam-badge{min-height:31px;padding:0 13px;margin-bottom:9px;font-size:11px;border-radius:9px}
  .qira-exam-hero-copy h1{font-size:35px;margin-bottom:7px}
  .qira-exam-hero-copy p{font-size:13px}
  .qira-exam-hero-mascot{width:min(28vw,330px);height:min(28vw,330px)}
  .qira-exam-hero-icon{width:min(94%,285px);height:min(88%,220px)}
  .qira-exam-year-grid{gap:9px!important}
}

@media (max-width:900px){
  .shell[data-current-route="exam"] .qira-exam-selector{height:auto;min-height:0!important;padding:12px 13px 94px!important;display:grid!important;grid-template-rows:auto!important;gap:11px;overflow:visible}
  .qira-exam-selector-hero{min-height:390px;grid-template-columns:minmax(0,52%) minmax(0,48%)!important;grid-template-rows:1fr!important}
  .qira-exam-hero-visual{grid-column:1}
  .qira-exam-hero-copy{grid-column:2;padding:19px 14px 18px 6px}
  .qira-exam-hero-icon-wrap{display:none}
  .qira-exam-badge{align-self:flex-start;min-height:29px;padding:0 12px;margin-bottom:9px;font-size:10px;border-radius:9px}
  .qira-exam-hero-copy h1{font-size:clamp(24px,6.8vw,31px);line-height:1.07;letter-spacing:-.8px;margin-bottom:9px}
  .qira-exam-hero-copy p{font-size:12px;line-height:1.38}
  .qira-exam-hero-mascot{left:48%;top:52%;width:245px;height:245px;transform:translate(-50%,-43%)}
  .qira-exam-float{width:39px;height:39px;border-radius:11px;font-size:20px}
  .qira-exam-year-grid{grid-template-columns:1fr!important;gap:10px!important}
  .qira-exam-year-card .qira-card-copy{right:18px!important}
}

@media (max-width:520px){
  .qira-exam-selector-hero{min-height:360px}
  .qira-exam-hero-copy{padding:15px 10px 15px 4px}
  .qira-exam-hero-copy h1{font-size:clamp(22px,6.2vw,27px)}
  .qira-exam-hero-copy p{font-size:11.5px}
  .qira-exam-hero-mascot{width:220px;height:220px}
  .qira-exam-float{width:34px;height:34px;font-size:18px}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .shell[data-current-route="exam"] .qira-exam-selector{height:calc(100dvh - 58px);min-height:0!important;padding:8px 10px 72px!important;grid-template-rows:minmax(150px,1fr) minmax(120px,.9fr) 78px;gap:8px;overflow:hidden}
  .qira-exam-selector-hero{grid-template-columns:minmax(0,31%) minmax(0,43%) minmax(0,26%)!important;min-height:0}
  .qira-exam-hero-copy{grid-column:2;padding:10px 10px 9px 4px}
  .qira-exam-hero-icon-wrap{display:grid;grid-column:3;padding:5px 5px 3px 0}
  .qira-exam-badge{min-height:22px;padding:0 8px;margin-bottom:4px;font-size:8px;border-radius:6px}
  .qira-exam-hero-copy h1{font-size:22px;line-height:1.03;margin-bottom:4px}
  .qira-exam-hero-copy p{font-size:9px;line-height:1.25}
  .qira-exam-hero-mascot{width:165px;height:165px;top:51%}
  .qira-exam-hero-icon{width:100%;height:92%}
  .qira-exam-float{width:27px;height:27px;font-size:14px;border-radius:8px}
  .qira-exam-year-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
  .qira-exam-year-card .qira-card-copy{right:8px!important}
}
