.zy1001_S5_penm_calc_container {
  display: none;
}

#zy1001_S5_container_plus_A_A {
  display: flex;
}

.zy1001_menu_container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.zy1001_menu_step {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.zy1001_menu_step_label {
  line-height: 1.3;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
}

.zy1001_menu_step_field {
  display: block;
  min-width: 0;
}

.zy1001_menu_input {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: clamp(5px, 1.1vw, 8px) clamp(8px, 1.6vw, 12px);
  border: 1px solid #333333;
  border-radius: 5px;
  font-size: clamp(0.95rem, 1.1vw, 1rem);
  line-height: 1.1;
  min-height: 32px;
}

.zy1001_S1_title_inputs {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.zy1001_S4A_row {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr) minmax(0, 1.2fr);
  gap: clamp(10px, 2vw, 16px);
}

.zy1001_menu_select {
  min-width: 0;
  max-width: 100%;
}

.zy1001_menu_select > * {
  width: 100%;
  max-width: 100%;
}

select[data-zy-select],
.zy1001_menu_step_field select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: clamp(4px, 1vw, 7px) clamp(8px, 1.6vw, 12px);
  font-size: clamp(0.88rem, 1vw, 0.96rem);
  line-height: 1.1;
  min-height: 32px;
}

/* Custom dropdown (zy_select) overrides for tool 1001 */
.zy1001_menu_container .zy_select_wrapper {
  font-size: clamp(0.88rem, 1vw, 0.96rem);
}
.zy1001_menu_container .zy_select_wrapper .zy_select_display {
  padding: clamp(4px, 1vw, 7px) clamp(8px, 1.6vw, 12px);
  line-height: 1.1;
  min-height: 32px;
}
.zy1001_menu_container .zy_select_label {
  line-height: 1.1;
}
.zy1001_menu_container .zy_select_arrow {
  font-size: 18px;
  line-height: 1;
}
.zy1001_menu_container .zy_select_option {
  padding: 4px 10px;
  line-height: 1.15;
}
.zy1001_menu_container .zy_select_list {
  max-height: 220px;
}

@media (max-width: 900px) {
  .zy1001_menu_step_label {
    font-size: clamp(0.95rem, 3.2vw, 1.05rem);
  }
}

@media (max-width: 700px) {
  .zy1001_menu_container {
    gap: 10px;
  }
  .zy1001_menu_step {
    gap: 4px;
  }
  .zy1001_S1_title_inputs {
    gap: 6px;
  }
  .zy1001_S4A_row {
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr);
  }
  .zy1001_S4A_row .zy1001_menu_select:nth-child(3) {
    grid-column: 1 / -1;
  }
  select[data-zy-select],
  .zy1001_menu_step_field select,
  .zy1001_menu_input {
    padding: 4px 7px;
    font-size: 0.86rem;
    min-height: 28px;
  }
  .zy1001_menu_container .zy_select_wrapper {
    font-size: 0.86rem;
  }
  .zy1001_menu_container .zy_select_wrapper .zy_select_display {
    padding: 4px 7px;
    min-height: 28px;
  }
  .zy1001_menu_container .zy_select_arrow {
    font-size: 16px;
  }
  .zy1001_menu_container .zy_select_option {
    padding: 3px 8px;
  }
  .zy1001_menu_container .zy_select_list {
    max-height: 200px;
  }
  .zy1001_menu_step_label {
    line-height: 1.2;
  }
}

@media (max-width: 420px) {
  .zy1001_S4A_row {
    grid-template-columns: 1fr;
  }
  .zy1001_S4A_row .zy1001_menu_select:nth-child(3) {
    grid-column: auto;
  }
}

@media (max-width: 420px) {
  .zy1001_menu_container {
    gap: 8px;
  }
  .zy1001_menu_step {
    gap: 3px;
  }
  select[data-zy-select],
  .zy1001_menu_step_field select,
  .zy1001_menu_input {
    padding: 3px 6px;
    font-size: 0.82rem;
    min-height: 26px;
  }
  .zy1001_menu_container .zy_select_wrapper {
    font-size: 0.82rem;
  }
  .zy1001_menu_container .zy_select_wrapper .zy_select_display {
    padding: 3px 6px;
    min-height: 26px;
  }
  .zy1001_menu_container .zy_select_arrow {
    font-size: 15px;
  }
  .zy1001_menu_container .zy_select_option {
    padding: 2px 6px;
  }
  .zy1001_menu_container .zy_select_list {
    max-height: 180px;
  }
}

/* A4-verhouding + witte achtergrond voor zichtbaarheid */
.zy1001_worksheet_container {
  display: block;
  position: relative;
  width: 100%;
  min-width: 0;
  flex: 1 1 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  aspect-ratio: auto;
  box-sizing: border-box;
}
.zy1001_worksheet_container .zy_pdf_viewer,
.zy1001_worksheet_container .zy_pdf_canvas_wrap {
  width: 100%;
  max-width: none;
}
.zy1001_worksheet_container .zy_pdf_canvas_wrap {
  overflow: auto;
}
#zy1001_worksheet_canvas {
  display: block;
  width: auto;
  height: auto;

  background-color: white;
}

.zy1001_worksheet_container .zy_pdf_btn {
  background: #d9d9d9;
  border-color: #b5b5b5;
  color: #1a1a1a;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.zy1001_worksheet_container .zy_pdf_btn:hover,
.zy1001_worksheet_container .zy_pdf_btn:focus,
.zy1001_worksheet_container .zy_pdf_btn:active {
  background: #e5e5e5;
  color: #1a1a1a;
}
.zy1001_worksheet_container .zy_pdf_btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.35);
}
.zy1001_worksheet_container .zy_pdf_btn_icon {
  filter: brightness(0);
}

/* Loader styles moved to assets/zyanthos-loader.css */

/* Elementor widget wrapper fix voor 100% breedte in tool 1001 */
.elementor-widget-html .zy1001_worksheet_container {
  width: 100%;
  max-width: none;
}

.zy1001_S5_plus_A_container {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.zy1001_S5_penm_calc_container {
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
}

.zy1001_S5_penm_title {
  display: flex;
  justify-content: flex-end;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  line-height: 1.3;
}

/* Nieuwe naam (na HTML consolidatie): zelfde styling als penm_title */
.zy1001_S5_calc_group_title {
  display: flex;
  justify-content: flex-end;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  line-height: 1.3;
}

.zy1001_S5_penm_box {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-wrap: wrap; /* breekt vanzelf bij smalle container */
  gap: 1rem;
  container-type: inline-size; /* maakt container queries mogelijk */
}

/* Nieuwe naam (na HTML consolidatie): zelfde styling als penm_box */
.zy1001_S5_calc_group_box {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  flex-wrap: wrap; /* breekt vanzelf bij smalle container */
  gap: 1rem;
  container-type: inline-size; /* maakt container queries mogelijk */
}

#zy1001_S5_container_plus_B_E .zy1001_S5_calc_group_box {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  width: 100%;
  justify-items: stretch;
  align-items: stretch;
}

#zy1001_S5_container_plus_B_E .zy1001_S5_calc_set_box {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: none;
  align-self: stretch;
}

#zy1001_S5_container_plus_B_E .zy1001_S5_calc_box_main {
  flex: none;
  width: 100%;
  min-width: 0;
  max-width: none;
}

#zy1001_S5_container_plus_B_E .zy1001_S5_calc_box_sub {
  display: none;
}

#zy1001_S5_container_plus_B_E .zy1001_S5_btn_main {
  width: 100%;
  min-width: 0;
  max-width: none;
}

.zy1001_S5_penm_column {
  display: flex;
  flex-direction: column;
  flex: 0 0 220px; /* basisbreedte zoals 1002 main kolom */
}

.zy1001_S5_penm_box_main {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/**/
/**/
/**/
/**/
/**/

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_penm_btn_sub {
  min-width: 100px;
  min-height: 40px;
  background-color: #c0e3f8;
  color: #333333;
  border: 1px solid black;
  font-size: clamp(0.3rem, 0.6vw, 1rem);
  padding: 12px;
}
.zy1001_S5_penm_btn_sub:hover {
  background-color: #ffefd4;
  color: #333333;
}
.zy1001_S5_penm_btn_sub:focus {
  background-color: #ffefd4;
  color: #333333;
}

/* Breek op basis van containerbreedte: onder 500px vallen main/sub onder elkaar en subknoppen worden 100% breed */
@container (max-width: 500px) {
  .zy1001_S5_penm_box {
    flex-direction: column;
  }
  .zy1001_S5_penm_column {
    flex: 1 1 100%;
  }
  .zy1001_S5_penm_box_sub {
    grid-template-columns: 1fr;
  }
  .zy1001_S5_penm_btn_sub {
    min-width: 100%;
    max-width: 100%;
  }
}

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_combined_container {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 15px;
  align-items: stretch;
}

.zy1001_S5_combined_box {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  width: 100%;
  min-width: 0;
  align-items: stretch;
}

.zy1001_S5_combined_btn {
  display: flex;
  flex-direction: column;
  gap: clamp(1px, 0.4vw, 3px);
  width: 100%;
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
  height: auto;
  padding: clamp(5px, 0.9vw, 8px) clamp(7px, 1.2vw, 10px);
  font-size: clamp(0.8rem, 1.1vw, 0.98rem);
  line-height: 1.1;
  background-color: #557aaf;
  color: #f5ce95;
  border: 1px solid black;
}

@media (max-width: 720px) {
  .zy1001_S5_combined_box {
    grid-template-columns: 1fr;
  }
  .zy1001_S5_combined_btn {
    padding: 6px 8px;
    font-size: 0.88rem;
    line-height: 1.15;
  }
}
.zy1001_S5_combined_btn:hover {
  background-color: #ffdb9d;
  color: #333333;
}
.zy1001_S5_combined_btn:focus {
  background-color: #ffdb9d;
  color: #333333;
}

/**/
/**/
/**/
/**/
/**/

/**/
/**/
/**/
/**/
/**/

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_calc_container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Alleen actieve S5-sectie tonen */
.zy1001_S5_calc_box {
  display: none;
  flex-direction: column;
  gap: 5px;
}
.zy1001_S5_calc_box.is-active {
  display: flex;
}

/**/

.zy1001_S5_calc_set_box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; /* breekt vanzelf als de container te smal is */
  align-items: stretch;
  container-type: inline-size; /* maakt container-query op eigen breedte mogelijk */
  gap: 5px;
}
.zy1001_S5_calc_box_main {
  flex: 0 1 clamp(100px, 20vw, 120px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.zy1001_S5_calc_box_sub {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

/**/

.zy1001_S5_calc_box_title {
  display: flex;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  line-height: 1.3;
}

/**/

.zy1001_S5_btn_main {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: clamp(6px, 1.1vw, 9px);
  min-height: clamp(32px, 5.6vw, 44px);
  font-size: clamp(0.84rem, 1.9vw, 0.98rem);
  line-height: 1.15;
  background-color: #557aaf;
  color: #f5ce95;
  border: 1px solid black;
}
.zy1001_S5_btn_main:hover {
  background-color: #ffdb9d;
  color: #333333;
}
.zy1001_S5_btn_main:focus {
  background-color: #ffdb9d;
  color: #333333;
}

/**/

.zy1001_S5_calc_box_sub_set {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
  gap: clamp(5px, 1vw, 5px);
  width: 100%;
}

.zy1001_S5_btn_sub {
  min-width: 92px;
  min-height: clamp(24px, 4.6vw, 32px);
  padding: clamp(3px, 0.9vw, 6px) clamp(5px, 1.2vw, 8px);
  max-width: 220px;
  background-color: #c0e3f8;
  color: #333333;
  border: 1px solid black;
  font-size: clamp(0.7rem, 1.3vw, 0.88rem);
  line-height: 1.15;
}
.zy1001_S5_btn_sub:hover {
  background-color: #ffefd4;
  color: #333333;
}
.zy1001_S5_btn_sub:focus {
  background-color: #ffefd4;
  color: #333333;
}

/**/
/**/
/**/
/**/
/**/

/* Breek op basis van containerbreedte, niet viewport */
@container (max-width: 360px) {
  .zy1001_S5_calc_set_box {
    flex-direction: column;
  }
  .zy1001_S5_calc_box_main,
  .zy1001_S5_calc_box_sub {
    flex: 1 1 100%;
    width: 100%;
  }
  .zy1001_S5_btn_sub {
    min-width: 100%;
    max-width: 100%;
  }
}

/* S5 set boxes breken pas volledig onder smalle containerbreedte */
@media (max-width: 360px) {
  .zy1001_S5_calc_set_box {
    flex-direction: column;
  }
  .zy1001_S5_calc_box_main {
    flex: 1 1 100%;
  }
  .zy1001_S5_calc_box_sub {
    flex: 1 1 100%;
    width: 100%;
  }
  .zy1001_S5_btn_sub {
    min-width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .zy1001_S5_btn_sub {
    min-width: 100%;
    max-width: 320px;
    padding: 10px 12px;
  }
}

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_inbetween_container {
  display: none;
  flex-direction: column;
}

.zy1001_S5_inbetween_title {
  display: flex;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  line-height: 1.3;
}

.zy1001_S5_inbetween_box {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_penm_inbetween {
  background-color: #c0e3f8;
}
.zy1001_S5_ibt_row,
.zy1001_S5_penm_ibt_row {
  background-color: #f5ce95;
}
.zy1001_S5_ibt_btn,
.zy1001_S5_penm_ibt_btn {
  padding: 6px 8px;
  background-color: #c0e3f8;
  color: #333333;
  border: 1px solid black;
  font-size: clamp(0.68rem, 1.3vw, 0.88rem);
  line-height: 1.1;
}

.zy1001_S5_ibt_btn:hover,
.zy1001_S5_penm_ibt_btn:hover,
.zy1001_S5_ibt_btn:focus,
.zy1001_S5_penm_ibt_btn:focus {
  background-color: #ffefd4;
  color: #333333;
}

/**/
/**/
/**/
/**/
/**/

.zy1001_S5_kend_title {
  display: flex;
  justify-content: flex-end;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  line-height: 1.3;
}

.zy1001_S5_kend_box_row {
  display: flex;
  flex-direction: row;
  width: 100%;
}

.zy1001_S5_kend_row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
}

.zy1001_S5_kend_section_A {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 68%;
}
.zy1001_S5_kend_section_B {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 15%;
}
.zy1001_S5_kend_section_C {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 17%;
  font-size: 0.9rem;
}

.zy1001_S5_kend_column {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (max-width: 720px) {
  .zy1001_S5_kend_box_row {
    flex-direction: column;
    gap: 8px;
  }
  .zy1001_S5_kend_section_A,
  .zy1001_S5_kend_section_B,
  .zy1001_S5_kend_section_C {
    width: 100%;
  }
  .zy1001_S5_kend_section_A {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px;
  }
  .zy1001_S5_kend_section_B,
  .zy1001_S5_kend_section_C {
    flex-direction: row;
    justify-content: space-between;
  }
  .zy1001_S5_kend_section_C {
    font-size: 0.82rem;
  }
}

@media (max-width: 480px) {
  .zy1001_S5_kend_section_A {
    gap: 6px;
  }
  .zy1001_S5_kend_section_C {
    font-size: 0.78rem;
  }
}
