/* Plugin globals */
.dhl-portal-wrapper, .dhl-portal-wrapper *{
    box-sizing: border-box;
}

/* Front End Form */
form#dhl-return-form input:not([type="submit"]) {
    width: 100%;
    border-radius: 1.875rem;
    border: 2px solid #00C1D5;
}

h6{
    font-size: clamp(1.125rem, 2vw + 1rem, 1.25rem);
    color: #00438F;
    text-transform: unset;
    letter-spacing: unset;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

button.remove-row {
    position: absolute;
    top: 0;
    right: 0;
    background-color: white;
    border: none;
    color: red;
    font-size: 1.2rem;
    cursor: pointer;
    border-radius: 5px;
    transition: background-color 0.1s ease;
    padding: 0;
    margin: 0;
}

button.remove-row:hover {
    color: darkred;
}

.dhl-repeater-item{
    position: relative;
}

.dhl-section-title {
    font-weight: bold;
    margin-bottom: 1rem;
}

form#dhl-return-form input, form#dhl-return-form button, form#dhl-return-form select, form#dhl-return-form textarea {
    font-family: inherit;
}

.dhl-form-group { 
    margin-bottom: 20px; 
}

.dhl-form-group label { 
    font-size: 1.0625rem;
    font-style: normal;
    font-weight: 350;
    line-height: 150%;
    color: #00438F;
    margin-bottom: 0.3rem;
    display: block;
}

.dhl-form-group input, .dhl-form-group textarea {
    width: 100%;
    border-radius: 1.875rem;
    border: 2px solid #00C1D5;
    padding: 0.75rem 0.75rem 0.75rem 1.25rem;
    background-color: white;
}

.dhl-form-row .dhl-form-group.same-as-checkbox, .dhl-form-row.tbc-checkbox {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex: unset;
    justify-content: flex-start;
    width: 100%;
    position: relative;
}

.dhl-form-group.same-as-checkbox input:checked ~ .checkmark:after, .dhl-form-row.tbc-checkbox input:checked ~ .checkmark:after {
    display: block;
}

.dhl-form-group.same-as-checkbox input:checked ~ .checkmark, .dhl-form-row.tbc-checkbox input:checked ~ .checkmark {
    background: #00C1D5 !important;
}

.dhl-portal-wrapper .checkmark {
    position: absolute;
    left: 0;
    height: 25px;
    width: 25px;
    border-radius: 5px;
    background-color: #eee;
    pointer-events: none;
}

.dhl-portal-wrapper .checkmark:after {
    left: 8px;
    top: 0px;
    width: 8px;
    height: 16px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    position: absolute;
    display: none;
}

.dhl-form-group.same-as-checkbox:hover input ~ .checkmark, .dhl-form-row.tbc-checkbox:hover input ~ .checkmark {
    background-color: #ccc;
}

.dhl-form-group.same-as-checkbox label, .dhl-form-row.tbc-checkbox label {
    flex-grow: 1;
    padding-left: 35px;
    margin-bottom: 0;
}

.dhl-form-group.same-as-checkbox input, .dhl-form-row.tbc-checkbox input {
    flex-grow: 0;
    width: 0px!important;
    opacity: 0;
}

.dhl-form-group select{
    border: none!important;
    width: 100%;
    background: transparent;
}

.dhl-form-row { 
    display: flex; 
    gap: 15px; 
    flex-wrap: wrap; 
}

.dhl-form-row .dhl-form-group { 
    flex: 1; 
    min-width: 140px; 
}

.dhl-repeater-item {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    margin-bottom: 10px;
}

.flex-grow-2 { 
    flex: 2; 
}

.flex-grow-1 { 
    flex: 1; 
}

.btn-dhl-primary { 
    background-color: #00c1d5;
    color: #00438f;
    border: 2px solid#00c1d5;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0.75rem 1.25rem;
    border-radius: 6.25rem;
    font-weight: 800;
    cursor: pointer;
    font-size: 1.0625rem;
    display: flex;
    align-items: center;
    gap: 10px;
}

.btn-dhl-primary:hover {
    border-color: #00438f;
    background: #00438f;
    color: white;
}

.btn-dhl-secondary {
    width: 100%; background: #eee; border: none; padding: 10px; border-radius: 4px; cursor: pointer; color: #333; text-align: center; font-size: 0.9rem;
}

.btn-dhl-secondary:hover { 
    background: #ddd; 
}

/* Notices */
.dhl-message { 
    display: none;
}

.dhl-message.success {
    color: #2c7a7b; font-weight:600; 
}

.dhl-message.error { 
    background: #fff5f5; color: #c53030; border: 1px solid #feb2b2; 
}

/* Login form styling overrides */
.dhl-login-wrapper input[type="text"], .dhl-login-wrapper input[type="password"] {
    width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 4px;
}

/* Fix <select> arrow position */
.select-field {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 1.875rem;
    border: 2px solid #00c1d5;
    padding: 0.75rem 0.75rem 0.75rem 1.25rem;
}