* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
  height: 100%;
  min-width: 945px;
  overflow: hidden;
}

body {
  background: #fff;
  color: #252525;
  font: 12px Arial, Helvetica, sans-serif;
  user-select: none;
}

button,
input,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

img {
  border: 0;
  vertical-align: middle;
}

#wrapper,
#minwidth {
  height: 100%;
  min-height: 100%;
  min-width: 945px;
  width: 100%;
}

#header {
  background: #ededed;
  border-bottom: 1px solid #7691a2;
  height: 50px;
  position: relative;
}

#bannerImage,
#bannerImg {
  height: 50px;
  overflow: hidden;
}

#bannerImage img {
  height: 50px;
  max-width: 100%;
  object-fit: cover;
}

.commanHeaderPatch {
  background: #f7f7f7;
  border-bottom: 1px solid #c5c5c5;
  display: block;
  height: 56px;
}

.subjectdetailsArea,
.subjectdetailsAreaInside {
  height: 100%;
}

.subjectdetailsAreaInside {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0 16px 0 18px;
}

.subjectDetailHead {
  color: #353535;
  font-size: 22px;
  font-weight: 700;
  line-height: 55px;
}

.profileDetailsCricle {
  align-items: center;
  display: flex;
  gap: 14px;
  height: 100%;
}

.timerContainer {
  align-items: center;
  background: #1c1c1c;
  border-radius: 2px;
  color: #fff;
  display: flex;
  font-size: 22px;
  font-weight: 700;
  height: 38px;
  letter-spacing: 0;
  padding: 0 11px;
}

.timeimg {
  border: 2px solid #fff;
  border-radius: 50%;
  display: inline-block;
  height: 17px;
  margin-right: 9px;
  position: relative;
  width: 17px;
}

.timeimg:before,
.timeimg:after {
  background: #fff;
  content: "";
  left: 7px;
  position: absolute;
  top: 3px;
}

.timeimg:before {
  height: 6px;
  width: 2px;
}

.timeimg:after {
  height: 2px;
  top: 8px;
  width: 5px;
}

.timeBlk {
  min-width: 28px;
  text-align: center;
}

.userProfileBtn {
  background: #fff url("./assets/NewCandidateImage.jpg") center 15% / cover no-repeat;
  border: 1px solid #b7b7b7;
  border-radius: 50%;
  height: 40px;
  width: 40px;
}

#sub-header {
  align-items: center;
  background: #3b5998;
  color: #fff;
  display: flex;
  height: 35px;
  justify-content: space-between;
}

.exam_name {
  font-size: 1.167em;
  font-weight: bold;
  padding-left: 12px;
}

.helpinstruction_div {
  display: flex;
  height: 100%;
}

.helpinstruction_div > div {
  align-items: center;
  border-left: 1px solid rgba(255, 255, 255, 0.25);
  display: flex;
  padding: 0 10px;
}

.instruction_icon,
.questionpaper_icon,
.calculator_icon {
  display: inline-block;
  height: 16px;
  margin-right: 5px;
  position: relative;
  width: 16px;
}

.instruction_icon:before {
  background: #fff;
  border-radius: 1px;
  content: "";
  height: 16px;
  left: 3px;
  position: absolute;
  top: 0;
  width: 11px;
}

.instruction_icon:after {
  background: #3b5998;
  box-shadow: 0 4px 0 #3b5998, 0 8px 0 #3b5998;
  content: "";
  height: 2px;
  left: 5px;
  position: absolute;
  top: 4px;
  width: 7px;
}

.questionpaper_icon:before {
  border-bottom: 8px solid #fff;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  content: "";
  left: 2px;
  position: absolute;
  top: 2px;
}

.calculator_icon {
  border: 2px solid #fff;
  border-radius: 2px;
}

.calculator_icon:before {
  background: #fff;
  box-shadow: 5px 0 0 #fff, 10px 0 0 #fff, 0 5px 0 #fff, 5px 5px 0 #fff, 10px 5px 0 #fff;
  content: "";
  height: 3px;
  left: 2px;
  position: absolute;
  top: 3px;
  width: 3px;
}

.test-instruct {
  background: transparent;
  border: 0;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  height: 100%;
  line-height: 34px;
  text-decoration: none;
}

.test-instruct:hover {
  text-decoration: underline;
}

.groupSectionPlaceholder {
  align-items: stretch;
  background: #fff;
  border-bottom: 1px solid #c3c3c1;
  display: flex;
  height: 45px;
}

.groupHead {
  align-items: center;
  border-right: 1px solid #d2d2d2;
  display: flex;
  font-size: 1em;
  height: 44px;
  min-width: 236px;
  padding-left: 8px;
}

.grup_head {
  background: #fff;
  border: 0;
  color: #147eb3;
  font-weight: bold;
  height: 29px;
  padding: 5px 8px;
}

.arw_drpdown {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #147eb3;
  display: inline-block;
  height: 0;
  margin-left: 6px;
  vertical-align: middle;
  width: 0;
}

.crumb {
  color: #b4b4b4;
  margin-left: 8px;
}

.group-panel {
  align-items: center;
  display: inline-flex;
  flex: 1;
  gap: 6px;
  height: 45px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  padding: 6px;
  white-space: nowrap;
}

.subject-name {
  align-items: center;
  background: #fff;
  border: 1px solid #c3c3c1;
  color: #147eb3;
  cursor: pointer;
  display: flex;
  font-size: 1em;
  font-weight: bold;
  gap: 5px;
  height: 31px;
  padding: 6px;
}

.subject-name.selectedsubject {
  background: #147eb3;
  border-color: #147eb3;
  color: #fff;
}

.subject-name .astrk {
  color: #f14545;
}

.Container {
  display: flex;
  height: calc(100vh - 208px);
  min-height: 390px;
  position: relative;
}

.Lft_Section {
  height: 100%;
  width: calc(100% - 250px);
}

.question_description_number_panel {
  background: #f8fbff;
  height: 100%;
  width: 250px;
}

.Rght_Section {
  background: #f8fbff;
  height: 100%;
  width: 250px;
}

.collapsebel_panel {
  border: 1px solid #c3c3c1;
  border-right: 0;
  height: 100%;
  position: relative;
}

.collapse_icon {
  background: #147eb3;
  border: 0;
  height: 30px;
  left: -18px;
  position: absolute;
  top: 3px;
  width: 18px;
}

.collapse_icon:before {
  border-bottom: 6px solid transparent;
  border-right: 7px solid #fff;
  border-top: 6px solid transparent;
  content: "";
  left: 5px;
  position: absolute;
  top: 9px;
}

.right-hidden .question_description_number_panel {
  display: none;
}

.right-hidden .Lft_Section {
  width: 100%;
}

/* Hover summaries and shared question-status sprite refinements */
.floatingInfoTooltip {
  background: #e5f6fd;
  border: 1px solid #b8c8cf;
  color: #000;
  font: 12px Arial, Helvetica, sans-serif;
  min-height: 214px;
  padding: 0 10px 9px 3px;
  position: fixed;
  width: 239px;
  z-index: 30;
}

.floatingInfoTooltip[hidden] {
  display: none;
}

.infoTooltipTitle {
  font-size: 14px;
  font-weight: 700;
  height: 29px;
  line-height: 29px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.infoTooltipRow {
  align-items: center;
  display: flex;
  height: 33px;
  overflow: hidden;
}

.infoTooltipLabel {
  color: #000;
  font-size: 12px;
  line-height: 28px;
  margin-left: 10px;
  max-width: 176px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.statusIcon {
  color: #fff;
  display: inline-block;
  flex: 0 0 auto;
  font-size: 12px;
  height: 29px;
  line-height: 25px;
  position: relative;
  text-align: center;
  transition: filter 120ms ease, transform 120ms ease;
  width: 29px;
}

.statusIcon.answered,
.diff_type_notation_area_inner span.answered {
  background: linear-gradient(#b2f141 0%, #62c315 58%, #45a800 100%);
  border: 1px solid #5fb30d;
  clip-path: polygon(50% 0, 100% 36%, 100% 100%, 0 100%, 0 36%);
}

.statusIcon.not_answered,
.diff_type_notation_area_inner span.not_answered {
  background: linear-gradient(#ff650d 0%, #e24500 62%, #c63700 100%);
  border: 1px solid #c83c00;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 62% 100%, 38% 100%, 0 70%);
}

.statusIcon.not_visited,
.diff_type_notation_area_inner span.not_visited {
  background: linear-gradient(#fff 0%, #ececec 45%, #d5d5d5 100%);
  border: 1px solid #999;
  border-radius: 2px;
  color: #000;
}

.statusIcon.review,
.statusIcon.review_answered,
.diff_type_notation_area_inner span.review,
.diff_type_notation_area_inner span.review_answered {
  background: radial-gradient(circle at 38% 30%, #a477c7 0%, #8d5ab2 46%, #714695 100%);
  border: 1px solid #6c418d;
  border-radius: 50%;
}

.statusIcon.review_answered:after,
.diff_type_notation_area_inner span.review_answered:after {
  background: #79cf33;
  border: 1px solid #4baa1c;
  border-radius: 3px;
  bottom: 1px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
  content: "";
  height: 10px;
  position: absolute;
  right: -2px;
  transform: none;
  width: 10px;
}

.statusIcon.review_answered:before,
.diff_type_notation_area_inner span.review_answered:before {
  background: repeating-linear-gradient(to bottom, #fff 0 1px, transparent 1px 3px);
  bottom: 4px;
  content: "";
  height: 5px;
  position: absolute;
  right: 0;
  width: 6px;
  z-index: 1;
}

.question_area .numpan {
  transition: filter 120ms ease, transform 120ms ease;
}

.question_area .numpan:hover {
  filter: brightness(1.08);
}

.question_area .numpan.answered {
  background: linear-gradient(#b2f141 0%, #62c315 58%, #45a800 100%);
  border: 1px solid #5fb30d;
  clip-path: polygon(50% 0, 100% 36%, 100% 100%, 0 100%, 0 36%);
}

.question_area .numpan.not_answered {
  background: linear-gradient(#ff650d 0%, #e24500 62%, #c63700 100%);
  border: 1px solid #c83c00;
  border-radius: 0;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 62% 100%, 38% 100%, 0 70%);
}

.question_area .numpan.not_visited {
  background: linear-gradient(#fff 0%, #ececec 45%, #d5d5d5 100%);
  border: 1px solid #999;
}

.question_area .numpan.review,
.question_area .numpan.review_answered {
  background: radial-gradient(circle at 38% 30%, #a477c7 0%, #8d5ab2 46%, #714695 100%);
  border: 1px solid #6c418d;
}

.question_area .numpan.review_answered:after {
  background: transparent;
  border: 4px solid #8ce63a;
  border-left: 0;
  border-radius: 0;
  border-top: 0;
  bottom: 4px;
  content: "";
  height: 18px;
  right: 0;
  transform: rotate(45deg);
  width: 10px;
}

.floatingInfoTooltip {
  background: #e5f6fd;
  border: 1px solid #b8c8cf;
  color: #000;
  font: 12px Arial, Helvetica, sans-serif;
  min-height: 214px;
  padding: 0 10px 9px 3px;
  position: fixed;
  width: 239px;
  z-index: 30;
}

.floatingInfoTooltip[hidden] {
  display: none;
}

.infoTooltipTitle {
  font-size: 14px;
  font-weight: 700;
  height: 29px;
  line-height: 29px;
  overflow: hidden;
  padding-left: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.infoTooltipRow {
  align-items: center;
  display: flex;
  height: 33px;
  overflow: hidden;
}

.infoTooltipLabel {
  color: #000;
  font-size: 12px;
  font-weight: 400;
  line-height: 28px;
  margin-left: 10px;
  max-width: 176px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.statusIcon {
  color: #fff;
  display: inline-block;
  flex: 0 0 auto;
  font-size: 12px;
  height: 29px;
  line-height: 25px;
  position: relative;
  text-align: center;
  width: 29px;
}

.statusIcon.answered {
  background: linear-gradient(#b2f141 0%, #62c315 58%, #45a800 100%);
  border: 1px solid #5fb30d;
  clip-path: polygon(50% 0, 100% 36%, 100% 100%, 0 100%, 0 36%);
}

.statusIcon.not_answered {
  background: linear-gradient(#ff650d 0%, #e24500 62%, #c63700 100%);
  border: 1px solid #c83c00;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 62% 100%, 38% 100%, 0 70%);
}

.statusIcon.not_visited {
  background: linear-gradient(#fff 0%, #ececec 45%, #d5d5d5 100%);
  border: 1px solid #999;
  border-radius: 2px;
  color: #000;
  line-height: 27px;
}

.statusIcon.review,
.statusIcon.review_answered {
  background: radial-gradient(circle at 38% 30%, #a477c7 0%, #8d5ab2 46%, #714695 100%);
  border: 1px solid #6c418d;
  border-radius: 50%;
  line-height: 27px;
}

.statusIcon.review_answered:after,
.diff_type_notation_area_inner span.review_answered:after {
  background: #79cf33;
  border: 1px solid #4baa1c;
  border-radius: 3px;
  bottom: 1px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
  content: "";
  height: 10px;
  position: absolute;
  right: -2px;
  transform: none;
  width: 10px;
}

.statusIcon.review_answered:before,
.diff_type_notation_area_inner span.review_answered:before {
  background: repeating-linear-gradient(to bottom, #fff 0 1px, transparent 1px 3px);
  bottom: 4px;
  content: "";
  height: 5px;
  position: absolute;
  right: 0;
  width: 6px;
  z-index: 1;
}

.diff_type_notation_area_inner span.answered {
  background: linear-gradient(#b2f141 0%, #62c315 58%, #45a800 100%);
  border: 1px solid #5fb30d;
  clip-path: polygon(50% 0, 100% 36%, 100% 100%, 0 100%, 0 36%);
}

.diff_type_notation_area_inner span.not_answered {
  background: linear-gradient(#ff650d 0%, #e24500 62%, #c63700 100%);
  border: 1px solid #c83c00;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 62% 100%, 38% 100%, 0 70%);
}

.diff_type_notation_area_inner span.not_visited {
  background: linear-gradient(#fff 0%, #ececec 45%, #d5d5d5 100%);
  border: 1px solid #999;
}

.diff_type_notation_area_inner span.review,
.diff_type_notation_area_inner span.review_answered {
  background: radial-gradient(circle at 38% 30%, #a477c7 0%, #8d5ab2 46%, #714695 100%);
  border: 1px solid #6c418d;
}

.question_area .numpan,
.statusIcon {
  transition: filter 120ms ease, transform 120ms ease;
}

.question_area .numpan:hover {
  filter: brightness(1.08);
}

.question_area .numpan.answered {
  background: linear-gradient(#b2f141 0%, #62c315 58%, #45a800 100%);
  border: 1px solid #5fb30d;
  clip-path: polygon(50% 0, 100% 36%, 100% 100%, 0 100%, 0 36%);
}

.question_area .numpan.not_answered {
  background: linear-gradient(#ff650d 0%, #e24500 62%, #c63700 100%);
  border: 1px solid #c83c00;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 62% 100%, 38% 100%, 0 70%);
}

.question_area .numpan.not_visited {
  background: linear-gradient(#fff 0%, #ececec 45%, #d5d5d5 100%);
  border: 1px solid #999;
}

.question_area .numpan.review,
.question_area .numpan.review_answered {
  background: radial-gradient(circle at 38% 30%, #a477c7 0%, #8d5ab2 46%, #714695 100%);
  border: 1px solid #6c418d;
}

.question_area .numpan.review_answered:after {
  background: transparent;
  border: 4px solid #8ce63a;
  border-left: 0;
  border-top: 0;
  border-radius: 0;
  bottom: 4px;
  content: "";
  height: 18px;
  right: 0;
  transform: rotate(45deg);
  width: 10px;
}

#User_Hldr {
  background: #fff;
  border-bottom: 1px solid #c3c3c1;
  height: 112px;
  padding: 5px;
}

.profile_image {
  float: left;
  padding: 2px;
}

.profile_image > img {
  border: 1px solid #c3c3c1;
  border-radius: 1px;
  cursor: pointer;
  height: 99px;
  width: 89px;
}

.profile_details {
  float: left;
  padding: 10px 0 0 6px;
  width: 140px;
}

#Username {
  color: #2c363f;
  float: left;
  font-size: 1.417em;
  font-weight: bold;
  line-height: 18px;
  padding: 4px 0;
  width: 100%;
}

.loginIdLine {
  clear: both;
  color: #6d6d6d;
  font-size: 1em;
  padding-top: 8px;
}

.diff_type_notation_area_outer {
  background: #e5f6fc;
  border-bottom: 1px solid #c3c3c1;
}

.diff_type_notation_area_inner {
  padding: 8px 5px 4px;
}

.notation_type_description {
  padding-bottom: 6px;
}

.notation_typeDiv {
  display: table;
  float: left;
  min-height: 34px;
  padding-bottom: 5px;
  width: 50%;
}

.notation_typeDiv.answered_review_container {
  width: 100%;
}

.diff_type_notation_area_inner span.type_title {
  background: none;
  color: #333;
  display: table-cell;
  font-size: 1em;
  line-height: 14px;
  padding-right: 4px;
  text-align: left;
  vertical-align: middle;
  white-space: normal;
}

.status-chip,
.diff_type_notation_area_inner span.answered,
.diff_type_notation_area_inner span.not_answered,
.diff_type_notation_area_inner span.not_visited,
.diff_type_notation_area_inner span.review,
.diff_type_notation_area_inner span.review_answered,
.diff_type_notation_area_inner span.review_marked {
  color: #fff;
  display: inline-block;
  float: left;
  font-size: 1em;
  height: 26px;
  line-height: 22px;
  margin-right: 9px;
  min-width: 29px;
  padding-top: 2px;
  position: relative;
  text-align: center;
}

.diff_type_notation_area_inner span.answered {
  background: #38ad58;
  clip-path: polygon(0 0, 100% 0, 100% 78%, 60% 78%, 50% 100%, 40% 78%, 0 78%);
}

.diff_type_notation_area_inner span.not_answered {
  background: #ce4f3b;
  border-radius: 12px 12px 3px 3px;
}

.diff_type_notation_area_inner span.not_visited {
  background: #d9d9d9;
  border: 1px solid #9f9f9f;
  border-radius: 4px;
  color: #000;
}

.diff_type_notation_area_inner span.review {
  background: #8f4eb6;
  border-radius: 50%;
}

.diff_type_notation_area_inner span.review_answered {
  background: #8f4eb6;
  border-radius: 50%;
}

.diff_type_notation_area_inner span.review_answered:after {
  background: #39a74e;
  border: 1px solid #fff;
  border-radius: 50%;
  bottom: -2px;
  content: "";
  height: 9px;
  position: absolute;
  right: -2px;
  width: 9px;
}

.rightSectionDiv {
  clear: both;
  width: 100%;
}

.rightSectionDiv .header {
  background: #147eb3;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  height: 31px;
  line-height: 31px;
  padding-left: 10px;
}

.rightSectionDiv .subheader {
  background: #e5f6fd;
  font-size: 1em;
  font-weight: bold;
  height: 26px;
  line-height: 26px;
  padding-left: 10px;
  padding-right: 8px;
}

.rightSectionDiv .content {
  background: #e5f6fd;
  height: calc(100vh - 483px);
  min-height: 124px;
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior: contain;
}

.question_area {
  font: 0.917em Arial, Helvetica, sans-serif;
  padding: 5px;
}

.numberpanelQues {
  overflow: visible;
}

.question_area .numpan {
  color: #fff;
  cursor: pointer;
  float: left;
  font-size: 1.417em;
  font-weight: normal;
  height: 43px;
  line-height: 42px;
  margin-bottom: 10px;
  margin-right: 2px;
  position: relative;
  text-align: center;
  width: 50px;
}

.question_area .numpan.answered {
  background: #38ad58;
  clip-path: polygon(0 0, 100% 0, 100% 78%, 58% 78%, 50% 100%, 42% 78%, 0 78%);
}

.question_area .numpan.not_answered {
  background: #c94c37;
  border-radius: 18px 18px 5px 5px;
  width: 49px;
}

.question_area .numpan.not_visited {
  background: #d8d8d8;
  border: 1px solid #aaa;
  border-radius: 4px;
  color: #474747;
}

.question_area .numpan.review {
  background: #8f4eb6;
  border-radius: 50%;
  height: 50px;
  line-height: 50px;
}

.question_area .numpan.review_answered {
  background: #8f4eb6;
  border-radius: 50%;
  height: 53px;
  line-height: 51px;
  width: 49px;
}

.question_area .numpan.review_answered:after {
  background: #38ad58;
  border: 2px solid #fff;
  border-radius: 50%;
  bottom: 0;
  content: "";
  height: 12px;
  position: absolute;
  right: 1px;
  width: 12px;
}

.question_area .numpan.active {
  outline: 2px solid #005a9e;
  outline-offset: 1px;
}

.Questn_Area {
  height: 100%;
  padding-bottom: 70px;
  position: relative;
}

.questionTypeCont {
  border-bottom: 1px solid #c3c3c1;
  border-top: 1px solid #c3c3c1;
  display: block;
  height: 30px;
  line-height: 29px;
}

.questiontype-details {
  float: left;
  font-size: 1.083em;
  font-weight: bold;
  max-height: 29px;
  overflow: hidden;
  padding-left: 12px;
}

.questiontype-markpanel {
  height: 30px;
  line-height: 29px;
}

.marking-details {
  color: #333;
  float: right;
  margin-right: 24px;
}

#Questn_Innr_Div_section {
  background: #4e85c5;
  color: #fff;
  height: 41px;
  line-height: 41px;
}

#Subdetail_Div {
  float: right;
}

#Subdetail_Div .chooseLang {
  float: right;
  font-size: 0.917em;
  font-weight: bold;
  padding-right: 6px;
}

.choose_lang {
  background: #fff;
  border: 1px solid #6c89ac;
  height: 24px;
  min-width: 78px;
}

#currentQues {
  height: calc(100% - 71px);
  overflow: hidden;
  position: relative;
}

#quesOuterDiv {
  height: 100%;
  overflow: hidden;
  position: relative;
}

.leftDiv {
  float: left;
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior: contain;
  width: 100%;
}

.divHeader {
  font-size: 1.083em;
  line-height: 25px;
  padding: 8px 12px 0;
}

.Ans_Area {
  line-height: 25px;
  padding: 7px 8px 20px 12px;
  width: auto;
}

.textHighlighter {
  font-family: Arial, Verdana, Helvetica, sans-serif;
  padding-bottom: 10px;
  padding-top: 10px;
  width: 98%;
}

.question-img {
  display: block;
  margin-bottom: 10px;
  max-width: 100%;
}

.instruction-img {
  margin-bottom: 4px;
  max-width: 100%;
}

.optionLabel {
  align-items: flex-start;
  clear: both;
  color: #303030;
  cursor: pointer;
  display: flex;
  float: none;
  gap: 6px;
  line-height: 24px;
  margin: 5px 0;
  padding: 2px 10px;
  width: 100%;
}

.optionLabel input {
  margin-top: 5px;
}

.optionLabel img {
  max-height: 64px;
  max-width: 92%;
}

.shortAnswer {
  border: 1px solid #b3b3b3;
  box-sizing: border-box;
  font-size: 14px;
  height: 19px;
  margin: 3px 0 2px 52px;
  padding: 1px 5px;
  width: 174px;
}

.numericAnswerBox {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.numericPad {
  background: #f6f6f6;
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(3, 27px);
  justify-content: center;
  margin-left: 52px;
  padding: 7px 13px 8px;
  width: 119px;
}

.numericPadKey {
  background: linear-gradient(#ffffff, #e9e9e9);
  border: 1px solid #9b9b9b;
  border-radius: 5px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
  color: #000;
  cursor: pointer;
  font-size: 15px;
  font-weight: 700;
  height: 33px;
  line-height: 1;
  padding: 0;
  text-align: center;
  width: 27px;
}

.numericPadKey.wide {
  grid-column: span 3;
  justify-self: center;
  width: max-content;
  min-width: 67px;
  padding: 0 6px;
}

.emptyPaperState {
  align-items: center;
  display: flex;
  min-height: 280px;
  justify-content: center;
}

.paperChooser {
  display: grid;
  column-gap: 28px;
  grid-template-columns: minmax(260px, 1.25fr) 110px minmax(300px, 1.75fr);
  row-gap: 14px;
}

.paperChooser label {
  color: #222;
  display: grid;
  font-size: 14px;
  font-weight: 700;
  gap: 6px;
  min-width: 0;
}

.paperChooser select {
  border: 1px solid #aeb9c4;
  box-sizing: border-box;
  height: 34px;
  max-width: 100%;
  overflow: hidden;
  padding: 4px 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

.paperChooser input[type="text"],
.paperChooser input[type="number"],
.paperChooser input[type="file"] {
  border: 1px solid #aeb9c4;
  box-sizing: border-box;
  font-size: 13px;
  height: 34px;
  max-width: 100%;
  padding: 4px 8px;
  width: 100%;
}

.zipImportPanel,
.pdfImportPanel {
  border: 1px solid #c8d7df;
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  padding: 10px;
}

.zipImportTitle {
  color: #111;
  font-size: 14px;
  font-weight: 700;
}

.zipImportAdvanced summary,
.pdfAdvancedActions summary {
  cursor: pointer;
}

.zipImportControls {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(200px, 1.4fr) 100px minmax(190px, 1fr) auto;
}

.zipImportControls[hidden] {
  display: none;
}

.zipImageSizeLabel {
  grid-template-columns: 1fr auto;
}

.zipImageSizeLabel input {
  grid-column: 1 / -1;
}

.zipApplyBtn {
  height: 34px;
  margin: 0;
  min-width: 94px;
  padding-left: 14px;
  padding-right: 14px;
}

.pdfImportGrid {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr) auto;
}

.optionalLabel {
  color: #666;
  font-size: 12px;
  font-weight: 400;
}

.pdfAnalyzeBtn,
.pdfStartBtn,
.pdfReviewBtn,
.pdfDownloadBtn {
  height: 34px;
  margin: 0;
  padding-left: 14px;
  padding-right: 14px;
}

.pdfAnalyzeBtn {
  height: 28px !important;
  font-size: 12px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  font-weight: 600;
  border-radius: 4px;
  margin: 0 !important;
  line-height: 26px !important;
}

.pdfProgress {
  display: grid;
  gap: 6px;
}

.pdfProgress[hidden] {
  display: none;
}

.pdfProgressTrack {
  background: #e8eef2;
  border: 1px solid #c6d2da;
  height: 10px;
  overflow: hidden;
}

.pdfProgressTrack span {
  background: #1f75bb;
  display: block;
  height: 100%;
  transition: width 180ms ease;
  width: 0%;
}

.pdfProgressMeta,
.pdfImportActions,
.pdfReviewStats {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}

.pdfProgressMeta {
  color: #333;
  font-size: 12px;
  justify-content: flex-start;
}

.pdfProgressMeta span:last-child {
  margin-left: auto;
}

.pdfStageList {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdfStageList li {
  border: 1px solid #d5dee5;
  color: #59636b;
  font-size: 12px;
  line-height: 16px;
  padding: 4px 6px;
}

.pdfStageList li.done {
  background: #edf7ec;
  border-color: #b7d8b2;
  color: #315f21;
}

.pdfStageList li.active {
  background: #eef4f8;
  border-color: #8db8d4;
  color: #154e76;
  font-weight: 700;
}

.pdfReviewPanel {
  border-top: 1px solid #d8e1e6;
  color: #222;
  display: grid;
  font-size: 13px;
  gap: 8px;
  padding-top: 8px;
}

.pdfReviewPanel[hidden],
.pdfImportActions[hidden] {
  display: none;
}

.pdfReviewStats span {
  background: #eef4f8;
  border: 1px solid #d2e0e8;
  padding: 3px 7px;
}

.pdfReviewList {
  margin: 0;
  padding-left: 20px;
}

.pdfReviewSubhead {
  font-weight: 700;
}

.pdfReviewBlocking {
  color: #a80000;
}

.pdfAdvancedActions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pdfAdvancedActions[open] {
  flex-basis: 100%;
}

.pdfAdvancedActions summary {
  color: #1d4c7a;
  font-size: 13px;
  font-weight: 700;
}

.legacyPracticeControls {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) auto auto;
}

.pdfReviewWarning {
  color: #835800;
}

.pdfReviewError {
  color: #a80000;
}

.pdfReviewOk {
  color: #315f21;
}

.paperChooserStatus {
  font-size: 13px;
  grid-column: 1 / -1;
  line-height: 20px;
}

.chooserChapterLabel {
  grid-column: 1 / 3;
}

#zipImportStatus {
  min-height: 18px;
}

.paperChooserStatus {
  color: #333;
  min-height: 22px;
}

.paperChooserStatus.error {
  color: #a80000;
}

.pdfQuestionPages,
.paperModalPages {
  display: grid;
  gap: 12px;
}

.pdfPageShell {
  background: #f2f2f2;
  border: 1px solid #cfcfcf;
  overflow: auto;
  padding: 7px;
}

.modalPdfPage {
  margin: 0 auto;
  width: fit-content;
}

.paperPageTitle {
  color: #4d4d4d;
  font-size: 12px;
  line-height: 18px;
  text-align: right;
}

.pdfPageCanvas {
  background: #fff;
  display: block;
  max-width: 100%;
}

.questionCropShell {
  background: #fff;
  border-color: #bfc7cf;
  padding: 0;
}

.questionCropCanvas {
  margin: 0 auto;
}

.pdfLoading,
.paperRenderStatus {
  color: #444;
  font-size: 13px;
  padding: 12px;
}

.questionPaperTools {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-bottom: 8px;
}

.optionTextOnly .labelForOptText {
  display: inline-block;
  min-width: 20px;
}

.pyqQuestionBlock {
  background: #fff;
  border: 1px solid #c7c7c7;
  color: #111;
  font-size: 15px;
  line-height: 1.55;
  padding: 14px 16px;
}

.pyqComprehension,
.pyqDirection {
  background: #f7f7f7;
  border: 1px solid #dfdfdf;
  margin-bottom: 12px;
  padding: 10px;
}

.pyqQuestionBlock img,
.pyqOptionText img,
.questionPaperView img,
.practiceSolution img {
  height: auto;
  max-width: 100%;
}

.chapter-question-image,
.chapter-solution-image {
  display: block;
  height: auto;
  margin: 0 0 12px 0;
  max-height: none;
  max-width: 560px;
  min-width: 360px;
  object-fit: contain;
  object-position: left top;
  width: 45%;
}

.chapter-question-image {
  cursor: zoom-in;
}

.importedZipQuestionImage {
  min-width: 0;
  max-width: min(100%, var(--zip-question-image-size, 100%));
  width: var(--zip-question-image-size, 100%);
}

.importedZipSolutionImage {
  min-width: 0;
  max-width: min(100%, var(--zip-question-image-size, 100%));
  width: var(--zip-question-image-size, 100%);
}

.solutionImageBlock .chapter-solution-image,
.solutionImageBlock .importedZipSolutionImage,
.solutionCard .chapter-solution-image,
.practiceSolution .chapter-solution-image,
.resultExplanation .chapter-solution-image {
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.chapter-question-image[src*="fiitjee-physics"] {
  max-width: 784px;
  min-width: 504px;
  width: 63%;
}

.chapter-question-image[src*="allen-physics-assignments"] {
  max-width: 970px;
  min-width: 540px;
  width: 78%;
}

.chapter-question-image[src*="vk-jaiswal-chemistry"] {
  margin-left: -8px;
  max-width: 1010px;
  min-width: 600px;
  width: 81%;
}

.pyqQuestionText:has(.chapterSubpartLabel) .chapter-question-image {
  max-width: 900px;
  min-width: 560px;
  width: 80%;
}

.imagePreviewWrap {
  background: #f3f6f8;
  max-height: 72vh;
  overflow: auto;
  padding: 10px;
  text-align: left;
}

.imagePreviewWrap img {
  height: auto;
  max-width: none;
}

@media (max-width: 820px) {
  .zipImportControls,
  .pdfImportGrid,
  .legacyPracticeControls {
    grid-template-columns: 1fr;
  }

  .pdfStageList {
    grid-template-columns: 1fr 1fr;
  }

  .chapter-question-image,
  .chapter-solution-image {
    max-width: 100%;
    min-width: 0;
    width: 100%;
  }
}

.chapterSubpartLabel {
  background: #eef5fb;
  border: 1px solid #c5d6e0;
  color: #1d4c7a;
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  margin: 0 0 8px;
  padding: 4px 8px;
}

.pyqOptionText {
  align-items: flex-start;
  display: grid;
  gap: 6px;
}

.pyqOptionText b {
  color: #1d4c7a;
}

.resultDashboard h3 {
  color: #1d4c7a;
  font-size: 17px;
  margin: 16px 0 8px;
}

.resultHero {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(8, minmax(90px, 1fr));
}

.resultHero > div {
  background: #eef5fb;
  border: 1px solid #c5d6e0;
  padding: 10px;
}

.resultHero small {
  color: #555;
  display: block;
  font-size: 12px;
  margin-bottom: 4px;
}

.resultHero strong {
  color: #111;
  font-size: 20px;
}

.result-correct td {
  background: #eefaf0;
}

.result-wrong td {
  background: #fff0f0;
}

.result-partial td {
  background: #fff8e8;
}

.result-unattempted td {
  background: #f7f7f7;
}

.result-unevaluated td {
  background: #f4f1fb;
}

.resultNotice {
  background: #fff7dc;
  border: 1px solid #ead18b;
  color: #5b4500;
  margin-bottom: 10px;
  padding: 8px 10px;
}

.resultExplanation {
  max-width: 520px;
}

.resultExplanation img {
  height: auto;
  max-width: 100%;
}

.chooserDuration {
  border: 1px solid #9ba7b3;
  box-sizing: border-box;
  font-size: 14px;
  height: 30px;
  margin-left: 0;
  padding: 2px 6px;
  width: 90px;
}

.chooserUnit {
  color: #39424e;
  margin-left: 0;
}

.practiceSolutionSummary {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 14px;
}

.practiceSolutionSummary > div {
  background: #f7fbfd;
  border: 1px solid #c9d8e2;
  padding: 8px 10px;
}

.practiceSolutionSummary small {
  color: #53616d;
  display: block;
  font-size: 12px;
  margin-bottom: 4px;
}

.practiceSolutionSummary strong {
  display: block;
  font-size: 14px;
  overflow-wrap: anywhere;
}

.solutionMissing {
  background: #fff8e6;
  border: 1px solid #e4c36b;
  color: #5b4100;
  padding: 12px;
}

.bookSolution {
  border-top: 1px solid #d9d9d9;
  line-height: 20px;
  margin-top: 8px;
  padding-top: 8px;
}

.bookSolutionOriginal {
  background: #f5f9fc;
  border: 1px solid #b8cbd8;
  margin-top: 10px;
  padding: 8px;
}

.bookSolutionOriginal summary {
  color: #0b638b;
  cursor: pointer;
  font-weight: bold;
  margin-bottom: 8px;
}

.bookSolutionOriginal iframe {
  background: #fff;
  border: 1px solid #9fb3bf;
  display: block;
  height: min(560px, 68vh);
  margin-bottom: 7px;
  width: 100%;
}

.bookSolutionOriginal a {
  color: #006da0;
  font-weight: bold;
}

.bookSolutionText {
  border-top: 1px solid #d9d9d9;
  margin-top: 8px;
  padding-top: 8px;
}

.bookSolutionText summary {
  color: #555;
  cursor: pointer;
  font-weight: bold;
}

.assignmentAnswerKey {
  background: #f5f9fc;
  border: 1px solid #b8cbd8;
  margin-top: 10px;
  padding: 8px;
}

.assignmentAnswerKey summary {
  color: #0b638b;
  cursor: pointer;
  font-weight: bold;
  margin-bottom: 8px;
}

.assignmentAnswerKeyImage {
  background: #fff;
  border: 1px solid #9fb3bf;
  display: block;
  height: auto;
  margin: 0 0 8px;
  max-width: 100%;
  width: 100%;
}

.questionPaperOptions {
  margin: 10px 0 0 24px;
}

.scroll-bottom-wrap,
.scroll-top-wrap {
  padding-right: 8px;
}

.scrollImgBtn {
  background: transparent;
  border: 0;
}

.buttons-div {
  background: #d3e4f8;
  border-top: 3px solid #c5d6e0;
  bottom: 0;
  height: 70px;
  left: 0;
  position: absolute;
  right: 0;
}

.Bttn_Area {
  height: 100%;
  position: relative;
}

.other_buttoncontainer {
  float: left;
  padding-left: 12px;
}

.save_buttoncontainer {
  float: right;
  margin-right: 255px;
}

.finalSubmit {
  background: #e5f6fd;
  border-left: 1px solid #c3c3c1;
  height: 67px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 250px;
}

.btn {
  border: 1px solid #c8c8c8;
  border-radius: 2px;
  cursor: pointer;
  display: inline-block;
  font-size: 1.2em;
  font-weight: 400;
  height: 39px;
  margin: 13px 8px 8px;
  padding-left: 20px;
  padding-right: 20px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}

.btn-primary {
  background: #fff;
  color: #252525;
}

.btn-primary-save,
.btn-primary-blue {
  background: #147eb3;
  border-color: #147eb3;
  color: #fff;
}

.btn[disabled] {
  cursor: not-allowed;
  opacity: 0.65;
}

#footer {
  background: #617b8c;
  bottom: 0;
  color: #fff;
  display: none;
  font-size: 0.917em;
  height: 22px;
  line-height: 21px;
  min-width: 945px;
  position: fixed;
  text-align: center;
  width: 100%;
}

.calculator_div {
  background: #e7edf1;
  border: 1px solid #6b8798;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.38);
  display: none;
  left: calc(50% - 180px);
  padding: 0 10px 10px;
  position: fixed;
  top: 96px;
  width: 360px;
  z-index: 60;
}

.calculator_div.open {
  display: block;
}

.toolHeader {
  align-items: center;
  background: #1689b8;
  color: #fff;
  display: flex;
  height: 30px;
  justify-content: space-between;
  margin: 0 -10px 8px;
  padding: 0 10px;
}

.toolHeader button {
  background: transparent;
  border: 0;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
}

.calcMode {
  color: #225064;
  font-size: 11px;
  font-weight: bold;
  line-height: 1;
  margin: 2px 0 5px;
  text-align: right;
}

#calcDisplay {
  background: #fff;
  border: 1px solid #8fa3af;
  color: #111;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 22px;
  height: 38px;
  margin-bottom: 7px;
  padding: 5px 7px;
  text-align: right;
  width: 100%;
}

.calcKeys {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(6, 1fr);
}

.calcKeys button {
  background: linear-gradient(#fff, #e9e9e9);
  border: 1px solid #9aaab2;
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  color: #111;
  cursor: pointer;
  font-size: 13px;
  font-weight: bold;
  height: 31px;
  line-height: 1;
}

.calcKeys button:active {
  background: #d4e7f0;
  transform: translateY(1px);
}

.calcKeys .calcKeyAccent {
  background: linear-gradient(#f7fbff, #cfe3ed);
  border-color: #6f99ad;
  color: #0b5272;
}

.calcKeys .calcKeyEquals {
  background: linear-gradient(#36a63a, #1f7f25);
  border-color: #17671d;
  color: #fff;
  grid-column: span 2;
}

@media (max-width: 560px) {
  .calculator_div {
    left: 10px;
    right: 10px;
    width: auto;
  }
}

.modalOverlay {
  background: rgba(0, 0, 0, 0.48);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 90;
}

.confrmPopup {
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 10px #000;
  left: 50%;
  max-height: 80vh;
  overflow: hidden;
  position: fixed;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(900px, 82vw);
  z-index: 100;
}

.popupHeader {
  background: #147eb3;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  height: 34px;
  line-height: 34px;
  padding-left: 12px;
}

.popClose {
  background: transparent;
  border: 0;
  color: #fff;
  float: right;
  font-weight: bold;
  height: 34px;
  padding: 0 12px;
}

.popupBody {
  max-height: calc(80vh - 82px);
  overflow: auto;
  padding: 14px;
}

.popupFooter {
  background: #f2f2f2;
  border-top: 1px solid #d2d2d2;
  min-height: 48px;
  padding: 5px 10px;
  text-align: right;
}

.popupFooter .btn {
  margin: 0 5px;
}

.instructionsList {
  font-size: 14px;
  line-height: 22px;
  margin-left: 22px;
}

.questionPaperView h2 {
  color: #2f72b7;
  font-size: 20px;
  margin: 8px 0;
}

.questionPaperView table {
  border-collapse: collapse;
  margin-bottom: 10px;
  width: 100%;
}

.questionPaperView td {
  padding: 4px;
  vertical-align: top;
}

.questionPaperView hr {
  border: 0;
  border-top: 1px solid #ccc;
  margin: 10px 0;
}

.summaryTable {
  border-collapse: collapse;
  font-size: 14px;
  width: 100%;
}

.summaryTable th,
.summaryTable td {
  border: 1px solid #d5d5d5;
  padding: 8px;
  text-align: left;
}

.summaryTable th {
  background: #cee3f8;
}

.clear {
  clear: both;
}

@media (max-width: 1000px) {
  html,
  body,
  #wrapper,
  #minwidth {
    min-width: 760px;
  }

  .question_description_number_panel {
    width: 235px;
  }

  .Lft_Section {
    width: calc(100% - 235px);
  }

  .Rght_Section,
  .finalSubmit {
    width: 235px;
  }

  .save_buttoncontainer {
    margin-right: 240px;
  }
}

/* TCS iON/JEE Advanced captured layout refinements */
:root {
  --ion-blue: #147eb3;
  --ion-strip-blue: #4e85c5;
  --right-panel-width: 250px;
  --footer-height: 0px;
  --sub-header-height: 30px;
  --banner-height: 0px;
  --group-row-height: 45px;
  --sections-row-height: 31px;
  --tabs-row-height: 39px;
  --actions-height: 54px;
}

body {
  font-size: 12px;
}

#header {
  height: var(--banner-height);
}

#bannerImage,
#bannerImage img {
  height: var(--banner-height);
}

#bannerImage img {
  width: 100%;
}

.commanHeaderPatch {
  display: none;
}

#sub-header {
  background: #333;
  border-bottom: 0;
  color: #f7f64e;
  height: var(--sub-header-height);
  line-height: var(--sub-header-height);
  padding: 0;
}

.exam_name {
  color: #f7f64e;
  font-size: 12px;
  font-weight: 700;
  line-height: var(--sub-header-height);
  padding-left: 10px;
}

#sub-header .test-header {
  color: #f7f64e;
}

.helpinstruction_div {
  height: var(--sub-header-height);
}

.helpinstruction_div > div {
  border-left: 0;
  height: var(--sub-header-height);
  padding: 0 11px 0 3px;
}

.calculator_tool {
  display: none !important;
}

.instruction_icon,
.questionpaper_icon {
  background: #36a7dd;
  border-radius: 50%;
  color: #fff;
  height: 17px;
  margin-right: 5px;
  width: 17px;
}

.instruction_icon:before,
.instruction_icon:after,
.questionpaper_icon:before,
.questionpaper_icon:after {
  background: none;
  border: 0;
  box-shadow: none;
  color: #fff;
  font-size: 13px;
  font-style: italic;
  font-weight: 700;
  height: auto;
  left: 0;
  line-height: 17px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 17px;
}

.instruction_icon:before {
  content: "i";
}

.questionpaper_icon {
  background: #38b76a;
  border-radius: 3px;
  cursor: pointer;
}

.questionpaper_icon:before {
  content: "";
}

.questionpaper_icon:after {
  background: repeating-linear-gradient(to bottom, #fff 0 2px, transparent 2px 5px);
  content: "";
  height: 10px;
  left: 4px;
  top: 4px;
  width: 9px;
}

.test-instruct {
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  height: var(--sub-header-height);
  line-height: var(--sub-header-height);
}

.groupSectionPlaceholder,
.section-timepanel,
.subject-selection {
  padding-right: var(--right-panel-width);
}

.groupSectionPlaceholder {
  align-items: center;
  background: #e9e9e9;
  border-bottom: 1px solid #d7d7d7;
  display: flex;
  height: var(--group-row-height);
  position: relative;
}

.groupHead {
  border-right: 0;
  height: var(--group-row-height);
  min-width: 206px;
  padding-left: 23px;
}

.grup_head {
  align-items: center;
  background: #178aca;
  border-radius: 3px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  height: 31px;
  line-height: 31px;
  padding: 0 7px 0 12px;
}

.arw_drpdown,
.crumb {
  display: none;
}

.sectionHelpIcon {
  align-items: center;
  background: #5bb3e6;
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-style: italic;
  font-weight: 700;
  height: 17px;
  justify-content: center;
  line-height: 17px;
  margin-left: 6px;
  width: 17px;
}

.groupNav {
  background: transparent;
  border: 0;
  height: 100%;
  position: absolute;
  top: 0;
  width: 18px;
}

.groupNavPrev {
  left: 0;
}

.groupNavPrev:before {
  border-bottom: 7px solid transparent;
  border-right: 7px solid #bdc6cf;
  border-top: 7px solid transparent;
  content: "";
  left: 5px;
  position: absolute;
  top: 16px;
}

.groupNavNext {
  right: var(--right-panel-width);
}

.groupNavNext:before {
  border-bottom: 7px solid transparent;
  border-left: 7px solid #bdc6cf;
  border-top: 7px solid transparent;
  content: "";
  position: absolute;
  right: 5px;
  top: 16px;
}

.section-timepanel {
  background: #fff;
  border-bottom: 1px solid #c3c3c1;
  height: var(--sections-row-height);
  line-height: 30px;
}

.section-details {
  color: #49525b;
  float: left;
  font-size: 12px;
  font-weight: 400;
  padding-left: 12px;
}

.time-details {
  color: #222;
  float: right;
  font-size: 16px;
  margin-right: 7px;
}

.subject-selection {
  align-items: center;
  background: #fff;
  border-bottom: 1px solid #c3c3c1;
  display: flex;
  height: var(--tabs-row-height);
  overflow: hidden;
}

.subject-arrow-left-disabled,
.subject-arrow-left,
.subject-arrow-right,
.subject-arrow-right-disabled {
  flex: 0 0 auto;
  height: 0;
  margin: 0 10px 0 6px;
  width: 0;
  position: relative;
}

/* Invisible hit target expansion for tiny triangles */
.subject-arrow-left-disabled::after,
.subject-arrow-left::after,
.subject-arrow-right::after,
.subject-arrow-right-disabled::after {
  content: "";
  position: absolute;
  top: -15px;
  left: -15px;
  right: -15px;
  bottom: -15px;
  cursor: pointer;
}

.subject-arrow-left-disabled::after,
.subject-arrow-right-disabled::after {
  cursor: default;
}

.subject-arrow-left-disabled,
.subject-arrow-right-disabled {
  pointer-events: none;
}

.subject-arrow-left-disabled {
  border-bottom: 7px solid transparent;
  border-right: 7px solid #bdc6cf;
  border-top: 7px solid transparent;
}

.subject-arrow-left {
  border-bottom: 7px solid transparent;
  border-right: 7px solid #4a6988;
  border-top: 7px solid transparent;
  cursor: pointer;
}

.subject-arrow-right {
  border-bottom: 7px solid transparent;
  border-left: 7px solid #4a6988;
  border-top: 7px solid transparent;
  margin-left: auto;
  margin-right: 9px;
  cursor: pointer;
}

.subject-arrow-right-disabled {
  border-bottom: 7px solid transparent;
  border-left: 7px solid #bdc6cf;
  border-top: 7px solid transparent;
  margin-left: auto;
  margin-right: 9px;
}

.group-panel {
  align-items: center;
  display: inline-flex;
  flex: 0 1 auto;
  gap: 5px;
  height: var(--tabs-row-height);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  padding: 4px 0;
  max-width: calc(100vw - var(--right-panel-width) - 96px);
}

.group-panel::-webkit-scrollbar {
  display: none;
}

.subject-name {
  align-items: center;
  background: #fff;
  border: 1px solid #c3c3c1;
  color: var(--ion-blue);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 700;
  gap: 0;
  height: 32px;
  justify-content: center;
  min-width: 94px;
  padding: 0 5px;
}

.subject-name.selectedsubject {
  background: var(--ion-blue);
  border-color: var(--ion-blue);
  color: #fff;
}

.subject-name .sectionHelpIcon {
  height: 18px;
  margin-left: 6px;
  width: 18px;
}

.Container {
  height: calc(100vh - var(--banner-height) - var(--sub-header-height) - var(--group-row-height) - var(--sections-row-height) - var(--tabs-row-height) - var(--footer-height));
  min-height: 360px;
  width: 100%;
}

.Lft_Section {
  width: calc(100% - var(--right-panel-width));
}

.Questn_Area {
  padding-bottom: var(--actions-height);
}

.question_description_number_panel {
  background: #e5f6fd;
  bottom: var(--footer-height);
  height: auto;
  position: fixed;
  right: 0;
  top: calc(var(--banner-height) + var(--sub-header-height));
  width: var(--right-panel-width);
  z-index: 8;
}

.Rght_Section,
.collapsebel_panel {
  background: #e5f6fd;
  height: 100%;
  width: var(--right-panel-width);
}

.collapsebel_panel {
  border: 1px solid #c3c3c1;
  border-right: 0;
}

.collapse_icon {
  background: #000;
  border-radius: 2px 0 0 2px;
  height: 49px;
  left: -14px;
  top: 344px;
  width: 14px;
  z-index: 2;
}

.collapse_icon:before {
  border: 0;
  color: #fff;
  content: ">";
  font-size: 20px;
  font-weight: 400;
  left: 3px;
  line-height: 49px;
  position: absolute;
  top: 0;
}

#User_Hldr {
  background: #fff;
  border-bottom: 1px solid #c3c3c1;
  height: 115px;
  padding: 4px;
}

.profile_image {
  padding: 0;
}

.profile_image > img {
  height: 101px;
  width: 94px;
}

.profile_details {
  padding: 7px 0 0 9px;
  width: 134px;
}

#Username {
  color: #222;
  font-size: 18px;
  line-height: 21px;
  padding-top: 0;
}

.loginIdLine {
  display: none;
}

.diff_type_notation_area_outer {
  background: #fff;
  border-bottom: 0;
  height: 144px;
}

.diff_type_notation_area_inner {
  padding: 6px 6px 2px 10px;
}

.notation_typeDiv {
  min-height: 39px;
  padding-bottom: 1px;
  width: 50%;
}

.notation_typeDiv.answered_review_container {
  min-height: 42px;
  width: 100%;
}

.diff_type_notation_area_inner span.type_title {
  color: #111;
  font-size: 12px;
  line-height: 14px;
  padding-right: 0;
}

.diff_type_notation_area_inner span.answered,
.diff_type_notation_area_inner span.not_answered,
.diff_type_notation_area_inner span.not_visited,
.diff_type_notation_area_inner span.review,
.diff_type_notation_area_inner span.review_answered,
.diff_type_notation_area_inner span.review_marked {
  border: 0;
  box-shadow: none;
  color: #fff;
  float: left;
  font-size: 12px;
  font-weight: 400;
  height: 26px;
  line-height: 23px;
  margin-right: 10px;
  min-width: 0;
  padding-top: 1px;
  width: 29px;
}

.diff_type_notation_area_inner span.answered {
  background: linear-gradient(#a8eb31, #39a900);
  clip-path: polygon(50% 0, 100% 35%, 100% 100%, 0 100%, 0 35%);
}

.diff_type_notation_area_inner span.not_answered {
  background: linear-gradient(#ff5f0a, #cf3200);
  clip-path: polygon(0 0, 100% 0, 100% 72%, 62% 100%, 38% 100%, 0 72%);
}

.diff_type_notation_area_inner span.not_visited {
  background: linear-gradient(#fff, #d5d5d5);
  border: 1px solid #9e9e9e;
  border-radius: 2px;
  color: #000;
}

.diff_type_notation_area_inner span.review,
.diff_type_notation_area_inner span.review_answered {
  background: linear-gradient(#9360ba, #71469a);
  border-radius: 50%;
}

.diff_type_notation_area_inner span.review_answered:after {
  background: #7fe232;
  border: 2px solid #fff;
  border-left: 0;
  border-top: 0;
  border-radius: 0;
  bottom: 0;
  content: "";
  height: 11px;
  right: -1px;
  transform: rotate(45deg);
  width: 5px;
}

.rightSectionDiv .header {
  background: #1485ad;
  font-size: 18px;
  height: 31px;
  line-height: 31px;
  padding-left: 10px;
}

.rightSectionDiv .subheader {
  background: #e5f6fd;
  color: #000;
  height: 29px;
  line-height: 29px;
  padding-left: 10px;
}

.rightSectionDiv .content {
  background: #e5f6fd;
  height: calc(100vh - var(--banner-height) - var(--sub-header-height) - 115px - 144px - 31px - 29px - var(--actions-height) - var(--footer-height));
  min-height: 120px;
}

.question_area {
  padding: 9px 0 0 10px;
}

.question_area .numpan {
  border: 0;
  box-shadow: none;
  color: #fff;
  font-size: 16px;
  height: 43px;
  line-height: 40px;
  margin-bottom: 8px;
  margin-right: 6px;
  width: 49px;
}

.question_area .numpan.answered {
  background: linear-gradient(#a8eb31, #39a900);
  clip-path: polygon(50% 0, 100% 35%, 100% 100%, 0 100%, 0 35%);
}

.question_area .numpan.not_answered {
  background: linear-gradient(#ff650b, #c92f00);
  border-radius: 0;
  clip-path: polygon(0 0, 100% 0, 100% 72%, 62% 100%, 38% 100%, 0 72%);
}

.question_area .numpan.not_visited {
  background: linear-gradient(#fff, #d5d5d5);
  border: 1px solid #9e9e9e;
  border-radius: 3px;
  color: #2a2a2a;
}

.question_area .numpan.review,
.question_area .numpan.review_answered {
  background: linear-gradient(#9360ba, #71469a);
  border-radius: 50%;
  height: 49px;
  line-height: 49px;
  width: 49px;
}

.question_area .numpan.review_answered:after {
  background: #7fe232;
  border: 3px solid #fff;
  border-left: 0;
  border-top: 0;
  border-radius: 0;
  bottom: 2px;
  content: "";
  height: 16px;
  right: 2px;
  transform: rotate(45deg);
  width: 8px;
}

.question_area .numpan.active {
  outline: 2px solid #2d9ace;
  outline-offset: -2px;
}

.questionTypeCont {
  border-top: 0;
  height: 30px;
  line-height: 29px;
}

.questiontype-details {
  font-size: 14px;
  padding-left: 12px;
}

.marking-details {
  color: #111;
  margin-right: 6px;
}

#Questn_Innr_Div_section {
  background: var(--ion-strip-blue);
  height: 41px;
  line-height: 41px;
}

#Subdetail_Div .chooseLang {
  font-size: 11px;
  padding-right: 7px;
}

.choose_lang {
  border: 1px solid #6c89ac;
  font-size: 13px;
  height: 25px;
  min-width: 99px;
}

#currentQues {
  height: calc(100% - 71px);
}

.divHeader {
  color: #000;
  font-size: 14px;
  line-height: 30px;
  padding: 8px 3px 0;
}

.Ans_Area {
  padding: 2px 8px 20px 14px;
}

.textHighlighter {
  padding-top: 0;
}

.instruction-img {
  display: block;
}

.question-img {
  display: block;
  margin-top: 4px;
}

.scroll-bottom-wrap {
  padding-right: 0;
  position: absolute;
  right: 8px;
  top: 4px;
  z-index: 2;
}

.leftDiv {
  position: relative;
}

.buttons-div {
  background: #f7f7f7;
  border-top: 1px solid #c3c3c1;
  height: var(--actions-height);
}

.other_buttoncontainer {
  padding-left: 8px;
}

.save_buttoncontainer {
  float: right;
  margin-right: 6px;
}

.previousBtn:disabled {
  display: none;
}

.finalSubmit {
  background: #e5f6fd;
  border-left: 1px solid #c3c3c1;
  border-top: 1px solid #c3c3c1;
  bottom: var(--footer-height);
  height: var(--actions-height);
  position: fixed;
  right: 0;
  top: auto;
  width: var(--right-panel-width);
  z-index: 9;
}

.btn {
  border-radius: 0;
  font-size: 14px;
  height: 39px;
  margin: 7px 8px 7px 0;
  padding-left: 20px;
  padding-right: 20px;
}

.btn-primary {
  background: #fff;
}

.btn-primary-save,
.btn-primary-blue {
  background: #0c82b5;
  border-color: #075f85;
}

#finalSubmit {
  min-width: 86px;
}

#footer {
  z-index: 10;
}

.right-hidden .question_description_number_panel,
.right-hidden .finalSubmit {
  display: none;
}

.right-hidden .groupSectionPlaceholder,
.right-hidden .section-timepanel,
.right-hidden .subject-selection {
  padding-right: 0;
}

.right-hidden .Lft_Section {
  width: 100%;
}

/* =========================================================================
   IMPROVED PDF IMPORT PANEL STYLING
   Better spacing, custom file upload buttons, visual hierarchy
   ========================================================================= */

.pdfImportPanel {
  background: #fafcfe;
  border: 1px solid #c8d7df;
  border-radius: 6px;
  display: grid;
  gap: 12px;
  grid-column: 1 / -1;
  padding: 14px;
}

.pdfImportGrid {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr) auto;
}

/* Custom file upload button styling */
.pdfImportGrid input[type="file"] {
  border: 1px dashed #b0c4d4;
  border-radius: 4px;
  color: #4a6a82;
  cursor: pointer;
  font-size: 12px;
  padding: 6px 8px;
  transition: border-color 150ms ease, background 150ms ease;
  width: 100%;
}

.pdfImportGrid input[type="file"]:hover {
  border-color: #1f75bb;
  background: #f0f7fc;
}

.pdfImportGrid input[type="file"]::file-selector-button {
  background: #1f75bb;
  border: none;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  margin-right: 8px;
  padding: 4px 10px;
  transition: background 150ms ease;
}

.pdfImportGrid input[type="file"]::file-selector-button:hover {
  background: #155988;
}

/* Progress bar improvement */
.pdfProgressTrack {
  background: #e8eef2;
  border: 1px solid #c6d2da;
  border-radius: 5px;
  height: 12px;
  overflow: hidden;
}

.pdfProgressTrack span {
  background: linear-gradient(90deg, #1f75bb 0%, #2a8fd4 100%);
  border-radius: 4px;
  display: block;
  height: 100%;
  transition: width 180ms ease;
  width: 0%;
}

/* Review panel improvement */
.pdfReviewPanel {
  border-top: 2px solid #d8e1e6;
  color: #222;
  display: grid;
  font-size: 13px;
  gap: 10px;
  margin-top: 4px;
  padding-top: 12px;
}

.pdfReviewStats span {
  background: #eef4f8;
  border: 1px solid #d2e0e8;
  border-radius: 4px;
  padding: 4px 8px;
}

.pdfReviewOk {
  background: #edf7ec;
  border: 1px solid #b7d8b2;
  border-radius: 4px;
  color: #315f21;
  font-weight: 600;
  padding: 6px 10px;
}

.pdfReviewWarning {
  background: #fff8e1;
  border: 1px solid #ffe082;
  border-radius: 4px;
  color: #835800;
  padding: 6px 10px;
}

.pdfReviewError {
  background: #fbe9e7;
  border: 1px solid #ef9a9a;
  border-radius: 4px;
  color: #a80000;
  font-weight: 600;
  padding: 6px 10px;
}

/* NOTE: The confidence distribution chart and the job history panel were
   removed from the frontend (see app.js). Their CSS is intentionally deleted
   to keep the stylesheet lean. The .pdfReviewStats block above still styles
   the compact review summary shown after PDF processing. */

/* Solutions View Styles */
.solutionsView {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1500;
  background: #f6f8fa;
  display: flex;
  flex-direction: column;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  color: #1f2328;
}

.solutionsView[hidden] {
  display: none !important;
}

.solutionsHeader {
  padding: 16px 24px;
  background: #ffffff;
  border-bottom: 1px solid #d0d7de;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.solutionsTitleWrap h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #1f2328;
}

#solutionsMeta {
  font-size: 13px;
  color: #57606a;
  margin-top: 4px;
  display: block;
}

.solutionsContent {
  flex: 1;
  overflow-y: auto;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
}

.solutionCard {
  background: #ffffff;
  border: 1px solid #d0d7de;
  border-radius: 8px;
  width: 100%;
  max-width: 900px;
  padding: 20px 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.solutionCardHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #d0d7de;
  padding-bottom: 8px;
}

.solutionCardTitle {
  font-size: 15px;
  font-weight: 600;
  color: #1f2328;
}

.solutionCardMeta {
  font-size: 12px;
  color: #57606a;
  background: #f6f8fa;
  padding: 3px 8px;
  border-radius: 12px;
  border: 1px solid #d0d7de;
}

.solutionUserResponse {
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.response-correct {
  background: #dafbe1;
  border: 1px solid #acf2bd;
  color: #1a7f37;
}

.response-wrong {
  background: #ffebe9;
  border: 1px solid #ffc1c0;
  color: #cf222e;
}

.response-unattempted {
  background: #f6f8fa;
  border: 1px solid #d0d7de;
  color: #57606a;
}

.response-partial {
  background: #fff8e1;
  border: 1px solid #ffe082;
  color: #9a6700;
}

.solutionImageBlock {
  border: 1px solid #d0d7de;
  border-radius: 6px;
  padding: 16px;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.solutionImageBlockTitle {
  font-size: 13px;
  font-weight: 600;
  color: #57606a;
  border-bottom: 1px solid #d0d7de;
  padding-bottom: 6px;
  margin-bottom: 6px;
}

.solutionOptionBox {
  margin-top: 4px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.solutionOptionItem {
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 13px;
  border: 1px solid #d0d7de;
  background: #fafafa;
}

.solutionOptionItem.isCorrect {
  background: #dafbe1;
  border-color: #acf2bd;
  color: #1a7f37;
  font-weight: 600;
}

.solutionOptionItem.isUserAnswer {
  border-left: 4px solid #0969da;
}

/* Paper Chooser Tab Styles */
.chooserTabs {
  display: flex;
  border-bottom: 1px solid #d0d7de;
  margin-bottom: 16px;
  gap: 8px;
}

.chooserTab {
  padding: 8px 16px;
  cursor: pointer;
  border: none;
  background: none;
  font-size: 14px;
  font-weight: 500;
  color: #57606a;
  border-bottom: 2px solid transparent;
  outline: none;
}

.chooserTab.active {
  color: #0969da;
  border-bottom: 2px solid #0969da;
  font-weight: 600;
}

.chooserPanel {
  display: none;
}

.chooserPanel.active {
  display: block;
}

.processedPapersGrid {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 280px;
  overflow-y: auto;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  padding: 8px;
  background: #fafafa;
}

.processedPaperRow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  background: #ffffff;
  transition: background-color 0.1s;
}

.processedPaperRow:hover {
  background-color: #f6f8fa;
}

.processedPaperInfo {
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: left;
}

.processedPaperTitle {
  font-size: 13px;
  font-weight: 600;
  color: #1f2328;
}

.processedPaperMeta {
  font-size: 11px;
  color: #57606a;
}

.processedPaperActions {
  display: flex;
  gap: 8px;
}

.practiceSection {
  border: 1px solid #d0d7de;
  border-radius: 6px;
  padding: 16px;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.practiceFormRow {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.practiceFormCol {
  flex: 1;
  min-width: 120px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: left;
}

.practiceFormCol label {
  font-size: 12px;
  font-weight: 600;
  color: #57606a;
}

.practiceFormCol select,
.practiceFormCol input {
  padding: 6px 10px;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  font-size: 13px;
  background-color: #ffffff;
  color: #1f2328;
  outline: none;
}

.practiceFormCol select:focus,
.practiceFormCol input:focus {
  border-color: #0969da;
}

.pdfLinkWrap {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-top: 8px;
  font-size: 13px;
  border-top: 1px solid #d0d7de;
  padding-top: 12px;
}

.pdfLink {
  color: #0969da;
  text-decoration: none;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 4px;
}

.pdfLink:hover {
  text-decoration: underline;
}

/* Override grid layout for PyqChooser to make it clean flex-column */
.pyqChooser {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

