form{
    /*font-size: 1rem;*/
}

.form-label{
    display: block;
    /*font-size: 1rem;*/
    margin-bottom: 0.1rem;
    font-weight:500;
}

/*label, input{
    font-size: 1em !important;
}*/





.input-text, .form-select {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    /*font-size: 1rem;*/
    font-weight: 400;
    line-height: 1.5;
    color: var(--mz-body-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--mz-form-text-background-color);
    background-clip: padding-box;
    border: var(--mz-form-border-width) solid var(--mz-form-border-color);
    border-radius: var(--mz-form-border-radius);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.input-text:focus, .form-select:focus {
    color: #000;
    background-color: transparent;
    border-color: var(--mz-form-border-focus-color);
    outline: 0;
    box-shadow: 0 0 0 .1rem var(--mz-form-shadow-focus-color)
}

.input-text-inline{
    display: inline-block;
    width: auto;
}

.input-search{
    padding: 0.6rem 0.75rem;
    width: 280px;

/*    color: #000;
    background-color: transparent;*/
    border-color: var(--mz-form-border-focus-color);
    outline: 0;
    box-shadow: 0 0 0 .1rem var(--mz-form-shadow-focus-color);

    display: block;
/*    width: 100%;
    padding: 0.375rem 0.75rem;*/
    /*font-size: 1rem;*/
    font-weight: 400;
    line-height: 1.5;
    color: var(--mz-body-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--mz-form-text-background-color);
    background-clip: padding-box;
    border: var(--mz-form-border-width) solid var(--mz-form-border-color);
    border-radius: var(--mz-form-border-radius);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;

}


/* Einfaches Styling für Vorschläge */
#suggestions {
    display: block;
    font-size: 1.1rem;
    border: 1px solid #ccc;
    /*max-height: 200px;*/
    overflow-y: auto;
    position: absolute;
    background: #fff;

    /*min-width: 350px;*/
    /*top:50px;*/


    width: auto;       /* passt sich an Inhalt an */
    min-width: 280px;  /* für größere Klarheit, optional */
    max-width: 100%;   /* verhindert zu große Breite */


}
.suggestion {
    padding: 8px;
    cursor: pointer;
}
.suggestion:hover {
    background: #f0f0f0;
}


/*input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 60px #eff6ef inset!important;
}*/
input:-webkit-autofill { +label { @extend .active; } }


input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    /*zoom: 1.0666;*/
    font-size: 1rem;
}

/*input:-webkit-autofill::first-line {
    font-size: 1rem;
    line-height: 1.4;
}*/

input:-webkit-autofill::first-line {
    font-size: 1rem !important;
}




.check-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;

    /*cursor: pointer;*/
    font-size: 1rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.form-check-label{
    cursor: pointer !important;
}
/* Hide the browser's default checkbox */
.check-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.check-container label {
    cursor: pointer;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border: 1px solid #919191;
    cursor: pointer;
}

/* On mouse-over, add a grey background color */
.check-container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.check-container input:checked ~ .checkmark-red {
    background-color: var(--mz-one);
    border: 0;
}

.check-container input:checked ~ .checkmark-blue {
    background-color: var(--mz-two);
    border: 0;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.check-container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.check-container .checkmark:after {
    left: 8px;
    top: 0px;
    width: 10px;
    height: 19px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* Create a custom radio button */
.checkmarkR {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border-radius: 50%;
    border: var(--mz-form-border-width) solid var(--mz-form-border-color);
}

/* On mouse-over, add a grey background color */
.check-container:hover input ~ .checkmarkR {
    background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.check-container input:checked ~ .checkmarkR {
    /*
    background-color: #2196F3;
    */
    background-color: var(--mz-two);
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmarkR:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the indicator (dot/circle) when checked */
.check-container input:checked ~ .checkmarkR:after {
    display: block;
}

/* Style the indicator (dot/circle) */
.check-container .checkmarkR:after {
    top: 9px;
    left: 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: white;
}



.form-select{

    display: block;
    width: 100%;
    padding: .375rem 2.25rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
/*    appearance: none;
    background-color: var(--bs-body-bg);
    background-image: var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    transition: border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;*/
}

/* Validation Styles */
.is-invalid {
    border-color: var(--mz-red) !important;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: var(--mz-red);
}

.is-invalid ~ .invalid-feedback,
.invalid-feedback.d-block {
    display: block;
}

.border-danger {
    border-color: var(--mz-red) !important;
}

/* Hide Spinners in Number Inputs */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}

/* Custom Price Input */
.price-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.price-input-wrapper .price-display {
    padding-right: 30px; /* Platz für € */
    text-align: right;
}

.price-input-wrapper .price-currency {
    position: absolute;
    right: 10px;
    color: #666;
    pointer-events: none;
    font-weight: 500;
}
