@media (min-width: 1700px) {
    .twmodal{
        margin-top: 45px;
    }
  .col-4xl-4 {
    flex: 0 0 auto;
    width: 33.333333%; /* 4 columns out of 12 */
  }
  .col-4xl-8 {
    flex: 0 0 auto;
    width: 66.666667%; /* 8 columns out of 12 */
  }
}
img.card-img-top {
    width: 50%;
   
    align-self:center;
}
.blindcellWarn {
    color:#94232f !important;
    font-weight: 700 !important;
}
.blindwarning-wd,.blindwarning-ln{
    color: #94232f !important;
    border-color :#94232f !important;
    margin-left: 5px;
    margin-top: 5px;
    cursor: unset !important;
}
#entryPoint {
    font-family: 'Open Sans', sans-serif;
    padding: 37px 0;
	overflow-x:clip;
}
label{
    font-size:14px
}

.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
    background-color: #f3f0f0 !important;
    color:black;
}
.btn-check:checked+.btn .radio-text,
.btn.active .radio-text,
.btn.show .radio-text,
.btn:first-child:active .radio-text,
:not(.btn-check)+.btn:active .radio-text
 {
    color:black;
 }


.cell-divider{
    font-size: 12px;
}

th {
    height: 55px;
    vertical-align: middle;
    max-height: 55px;
}

#cellContainer td,
#boxContainer td {
    height: 90px;
    min-height: fit-content;
    /* max-width: 90px; */
    /* line-height: 1; */
}


#showParams {
    position: absolute;
}

.full-view {
    position: fixed;
    z-index: 101;
    background-color: white;
    box-shadow: 0 0 150px 1000px rgba(0, 0, 0, 0.686);
    top: 8%;
    left: 5%;
    width: 90%;
    height: 88% !important;
    border-radius: 10px;
    overflow: hidden;
}

@media (max-width: 768px) {
    
    .unused-cell {
        display: none !important;
    }

    .after-used-cell {
        background-color: white !important;
        box-shadow: none !important;
    }

    .full-view {
        top: 2%;
        left: 2%;
        width: 96%;
        height: 96% !important;
    }
}
h4 {
    font-size: 15px !important;
    font-weight: bold !important;
}
#shrinkButton,#showParamsfs {
    display: none;
}
#hintButton {
    position: absolute;
    right: 10px;
    top: 45px;
    background-color:transparent;
    border: transparent;
   
    border-radius: 5px;
    z-index: 10;
    cursor: default;
}
#hintButton:hover{
    background: transparent;

}

#expandButton {
    position: absolute;
    right: 10px;
  
    top: 5px;
    border-radius: 5px;
    z-index: 10;
}
#expandButton,#shrinkButton{
    border: #d1d1d1 1px solid !important;
  
}
#view_model{
    background: #B2B2B2;
    border-color: #B2B2B2;
    border-radius: 10px;
    margin-bottom: 15px;
}
#expandButton img,
#shrinkButton img {
    /* filter: invert(1); */
    margin-top: -4px;
}
button.btn-close{
    border-color: transparent;
}
button.btn-close:hover{
    background: transparent;
    color: black;
}
/* When full-view class is added to iframeContainer, show the button */
#iframeContainer.full-view #shrinkButton {
    display: block;
    position: absolute;
    top: 70px;
    right: 10px;
    z-index: 10000;
}
#iframeContainer.full-view #showParamsfs {
    display: block;
    position: absolute;
    top: 50px;
    right: 1px;
    z-index: 10000;
}

#iframeContainer.full-view #dynamicIframe {
    width: 100%;
    height: 100vh;
    border: none;
}

.section-title {
    background-color: #f8f8f8;
    border: 1px solid #d2d2d2;
    padding: 7px;
}

.group-bc label:nth-child(2) {
    border-top-left-radius: 10px !important;
    border-bottom-left-radius: 10px !important;
    border-top:1px solid #d1d1d1;
    border-bottom:1px solid #d1d1d1;
    border-right:none;
    border-left:1px solid #d1d1d1 !important;
}

.group-bc label:last-child {
    border-top-left-radius: 0px !important;
    border-top-right-radius: 10px !important;

    border-bottom-left-radius: 0px !important;
    border-bottom-right-radius: 10px;
    border-top:1px solid #d1d1d1;
    border-bottom:1px solid #d1d1d1;
    border-right:1px solid #d1d1d1;
    border-left:none;

}

.group-bc label:not(:first-child):not(:last-child) {
    border-top:1px solid #d1d1d1;
    border-bottom:1px solid #d1d1d1;
    border-left:none;
    border-right:none;
}

@media (max-width: 767px) {
    .group-bc label{
        min-height: 67px;
    }
    /* first child */
    .group-bc label:nth-child(2) {  
        border-top-left-radius: 10px !important;
        border-top-right-radius: 10px !important;
        border-bottom-left-radius: 0px !important;
        border-bottom-right-radius: 0px !important;
        border-top:1px solid #d1d1d1 !important;
        border-bottom:1px solid #d1d1d1 !important;
        /* border-right:none; */
        border-left:1px solid #d1d1d1 !important;
        border-right:1px solid #d1d1d1 !important;
    }

    /* mid child */
    .group-bc label:not(:first-child):not(:last-child) {
        border-right:1px solid #d1d1d1;
        border-left:1px solid #d1d1d1;
        border-top:none;
        border-bottom:1px solid #d1d1d1;
    }

/* last child */
    .group-bc label:last-child {
        border-top-left-radius: 0px !important;
        border-top-right-radius: 0px !important;
    
        border-bottom-left-radius: 10px !important;
        border-bottom-right-radius: 10px !important;
        border-top:none;
        border-bottom:1px solid #d1d1d1;
        border-right:1px solid #d1d1d1;
        border-left:1px solid #d1d1d1;
    
    }
    
}
.alert-danger .informator{
}
.alert-danger{
    margin-top: 5px;
    gap:7px;
    padding-block: 15px !important;
    justify-content: center;
    align-items: center;
}
.alert-danger p{
    margin-bottom :0px;
}
div#iframe-message {
    border: solid 1px;
    margin-bottom: 15px;
    text-align: center;
    font-weight: bold;
    padding-block: 5%;
}

/* input {
    margin-bottom: 5px;
} */

.error-message {
    margin-top: 2px;
    margin-bottom : 10px;
    display: none;
    color: #ca0000;
    font-size: 13px;
}

.radio-label {
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border-radius: 0px;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
    width: 100%;
    max-height: 68px;
}

.radio-image {
    width: 37px;
    height: 37px;
    background-color: aliceblue;
    border: rgb(84, 84, 84) 2px solid;
    border-radius: 5px;
}

.radio-text {
    /* line-height: 1.2rem; */
    font-weight: 400;
    font-size: 14px;
    color: #767676
}

.border-top-sep {
    border-top: 5px solid #989898 !important;
    /* Adjust thickness and color as needed */

    /* Add spacing between buttons */
}

.radio-label:hover {
    background-color: rgba(0, 123, 255, 0.1);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.radio-label:focus,
.radio-label:active {
    background-color: rgba(0, 123, 255, 0.2);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    border-color: #007bff;
}

.form-icon {
    max-height: calc(1em + 2.5rem);
    width: 44px;
    margin-right: 5px;
}
.responsive-table {
    height: 100%;
}

@media (max-width: 767px) {
    #iframeContainer.full-view #shrinkButton {
        top:20px;
    }
    .responsive-table td {
        display: block;
        width: 100%;
    }

    .responsive-table tr {
        display: flex;
        flex-direction: column;
    }
}
#leadForm .wpforms-container{
    padding: 0;
    margin: 0;
}
#leadForm .wpforms-field-row , #leadForm .wpforms-field-medium  {
    max-width: 100% !important;
}
/* Spinner Container */
.spinner-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    display: flex;
    justify-content: center;
    align-items: start;
    z-index: 9999;
    transition: all 0.5s ease-in-out;
    opacity: 1;
    visibility: visible;
    backdrop-filter: blur(4px);
  }
  
  /* Spinner */
  .spinner {
    width: 80px;
    height: 80px;
    position: relative;
    animation: rotate 1.2s infinite linear;
  }
  
  .spinner:before,
  .spinner:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 8px solid transparent;
    border-top: 8px solid #3498db;
    border-radius: 50%;
    animation: spin 1.2s infinite linear;
  }
  
  .spinner:after {
    border-top: 8px solid #e74c3c;
    animation-delay: -0.6s;
  }
  

  @keyframes rotate {
    0% { 
      transform: rotate(0deg); 
      animation-timing-function: linear; 
    }
    33% { 
      transform: rotate(360deg); 
      animation-timing-function: ease-in; 
    }
    66% { 
      transform: rotate(520deg); 
      animation-timing-function: ease-out; 
    }
    100% { 
      transform: rotate(720deg); 
      animation-timing-function: linear; 
    }
  }
  


  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  
  /* 3D Spinner Container */
.ifrmspinner-container {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: start;
    background: #f5f5f5 !important; 
    backdrop-filter: blur(3px);
    z-index: 20;
    transition: all ease-in-out 0.5s;
}
  
.ifrmspinner {
    width: 100%;
    height: 4.8px;
    display: inline-block;
    position: relative;
    background: rgba(49, 49, 49, 0.15);
    overflow: hidden;
  }
  .ifrmspinner::after {
    content: '';
    width: 122px;
    height: 4.8px;
    background: #272626;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    animation: animloader 2s linear infinite;
  }
  
  @keyframes animloader {
    0% {
      left: 0;
      transform: translateX(-100%);
    }
    /* 25% {
        left: 40%;
        transform: translateX(-60%);
  
    }
    65%{
        left: 80%;
        transform: translateX(-20%);
  
    } */

    100% {
      left: 100%;
      transform: translateX(0%);
    }
  }
  /* 3D Spinner */
  .ifrmspinner--c {
    width: 60px;
    height: 60px;
    border: 8px solid rgba(0, 0, 0, 0.1);
    border-left-color: #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
  }
  
.configurator{
    background-color: white;
    border: 1px #cdcdcd solid;
    border-radius: 8px;
    padding-block: 10px;
    padding-inline:20px;
    box-shadow: 0px 0px 3px 0px #c2c2c2;
}
.table-nobg th,
.table-nobg tbody tr:nth-child(odd),
.table-nobg tbody tr:nth-child(even) {
  background-color: white !important; /* Removes background for header and all rows */
}
table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th{
  background-color: white !important; /* Removes background for header and all rows */
    border:none !important;
}
.table-nobg tr,.table-nobg  th, .table-nobg td, .table-nobg tbody{
border : none !important;
}
.field-form{
    width:100%;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Hide the spinners in Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}
.input-group {
    position: relative;
}

 .mm-cell[type="number"] {
    padding-right: 30px; /* Adjust for space for 'mm' */
}

.form-control{
    border-radius:8px !important;
    border: #d1d1d1 1px solid !important;
    padding-block: 7px;
}
.mm-text{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Prevent interaction with the text */
    color: #7d7d7d;
    font-weight: 500;
	z-index:5;
  
}
.form-control.is-invalid, .was-validated .form-control:invalid{
	background-position:right calc(2.5em + .1875rem) center !important;
  transition: box-shadow 0.3s ease-in; /* Apply transition only to border color */
}

.table-nobg tr:hover{
    background-color: white !important;
}
.d-flex img{
    margin-top: 24px;
}
.text-reccom{
    color:#b64761 !important;
}
.info-circle{
    border-radius: 100px;
    border: 1px solid #747474;
    padding-inline: 5px;
    font-size: 13px;
    font-family: math;
    margin-bottom: 5px;
    cursor:default;
}
.form-select{
    padding-block: 7px;
    border: 1px solid #d1d1d1;
}
.separator {
    border: none;           /* No border */
    height: 1px;           /* Height of the line */
    background-color: #ccc; /* Color of the line */
    margin: 20px 0;        /* Margin above and below the separator */
    width: 100%;           /* Full width of the container */
}
#calculatedResultsTable span{
    font-size:14px;
}
#calculatedResultsTable{
    box-shadow: 0px 0px 3px 0px #c2c2c2;
    border-radius: 8px;
    margin-top: 5px;
    border: 1px #cdcdcd solid;
    padding-block: 16px;
    width:85%;
    background-color: white;
}
@media (max-width: 768px) {
    .ruby-mod{
        display: ruby;
    }
#calculatedResultsTable{
width:100%
}
}
.loader2 {
    margin-top: 35%;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-block;
    border-top: 4px solid #5d4e4e;
    border-right: 4px solid transparent;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
  }
  .loader2::after {
    content: '';  
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 0;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border-bottom: 4px solid #FF3D00;
    border-left: 4px solid transparent;
  }
  @keyframes rotation {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  } 

  .informator {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 15px; /* Circle diameter */
    height: 15px; /* Circle diameter */
    border-radius: 50%; /* Makes it a circle */
    color: rgb(62, 62, 62); /* Text color */
    font-size: 12px; /* Font size of the "i" */
    font-weight: 600; /* Bold text */
    text-align: center;
    position: relative;
    border : 1px solid rgb(60, 60, 60);
    transform: translateY(-2px);
    cursor: help;
}
.cursor-pointer{
    cursor: pointer;
}
.informator::before {
    content: 'i'; /* The "i" character */
    font-family: math;

}
.modal-title{
    text-align: center;
}
.btn-close{
    cursor: pointer;
}
body{
background: #f5f5f5 !important;
}
iframe{
    z-index: 1;
    filter: contrast(0.92);
}

.graphic_preview {
    position: sticky;
    top:130px;

}
.card-input {
    transition: transform 0.3s ease-in-out;
    border: 2px solid grey;
}

.card-input:hover {
    transform: scale(1.05);
}

.card-input-element:checked + .card {
    border: 2px solid #b64761;
    box-shadow: 0 0 10px rgba(182, 71, 97, 0.5);
    transform: scale(1.05);
}

.blindcell-warning{
    width: 95%;
    text-align: -webkit-center;
    margin-left: 16px;
    padding: 0;
    font-size: 13px;
    font-weight: bold;
}
/* For tablets and above (iPad and desktops) */
@media (min-width: 992px) {
    .cellsPerDivider{
        height: 115px !important;
    }
    div#boxContainer {
      padding-right: 20px !important;
    }
    div#cellContainer {
      padding-left: 20px !important;
    }
  }
  
  .rotate-image {

    transform: rotate(-90deg);
    margin-top: 100px;
}
.disabled-btn-container{
    cursor: not-allowed;
}
.disabled-btn {
    opacity: 0.5;
    cursor: not-allowed !important;
    pointer-events: none; /* Prevents clicks */
    }

    .wpform-title{
        color:#A10E2F;
        font-weight:bold;
    }

    .btn-jetzt-anfragen{
        color: white;
        height: 45px;
    width: 70%;
    font-weight: bold;
    border-radius: 25px;
    background: #A10E2F;

        transition: background-color 0.3s ease;
    }