label span.required {
    color:red;
}

.hide-loading {
    display: none !important;
}

.show-loading {
    display: block !important;
}

button.disabled,
a.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

.active>.page-link, .page-link.active,
.plyr__control--overlaid:focus, .plyr__control--overlaid:hover{
    color: #3f78e0 !important;
}
.accordion-wrapper .card-header button.collapsed {
    color: #343f52 !important;
}
.accordion-wrapper .card-header button:hover,
.accordion-wrapper .card-header button{
    color: #3f78e0 !important;
}

.accordion-wrapper .card-header button.collapsed:before {
    content: url('data:image/svg+xml;charset=UTF-8, <svg xmlns="http://www.w3.org/2000/svg" width="1.3em" height="1.3em" viewBox="0 0 24 24"><path fill="currentColor" d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71L8.46 9.17a1 1 0 0 0-1.41 0a1 1 0 0 0 0 1.42l4.24 4.24a1 1 0 0 0 1.42 0L17 10.59a1 1 0 0 0 0-1.42"/></svg>');
    background-size: 24px 24px;
}

.accordion-wrapper .card-header button:before {
    content: url('data:image/svg+xml;charset=UTF-8, <svg xmlns="http://www.w3.org/2000/svg" width="1.3em" height="1.3em" viewBox="0 0 24 24"><path fill="currentColor" d="m17 13.41l-4.29-4.24a1 1 0 0 0-1.42 0l-4.24 4.24a1 1 0 0 0 0 1.42a1 1 0 0 0 1.41 0L12 11.29l3.54 3.54a1 1 0 0 0 .7.29a1 1 0 0 0 .71-.29a1 1 0 0 0 .05-1.42"/></svg>');
    background-size: 24px 24px;
}

a:not([class]) {
    color:unset;
}

@layer components {
    .avatar {
        @apply flex items-center justify-center font-bold leading-[1.7] tracking-[-0.01rem] rounded-[100%] bg-[#e0e9fa] text-[#3f78e0] opacity-100 w-12 h-12 mr-4
    }
    .avatar > span {
        @apply xl:text-[1.5rem] text-[calc(1.275rem+0.3vw)]
    }
}

.form-help {
    margin-top: 0.25rem;
    font-size: 0.65rem;
    font-weight: 400;
    color: oklch(21% 0.006 285.885);
}

button.disabled {
    @apply cursor-not-allowed opacity-50;
}
/*
.ql-editor {
    line-height: 1 !important;
}

.ql-editor p {
    line-height: 1.5 !important;
}

.ql-editor ul {
    list-style-type: circle !important;
    padding-left: 1.5rem !important;
    display: block !important;
}

.ql-editor ul li {
    display: list-item !important;
    list-style-type: circle !important;
}

.ql-editor ol {
    list-style-type: decimal !important;
    padding-left: 1.5rem !important;
    display: block !important;
}

.ql-editor ol li {
    display: list-item !important;
    list-style-type: decimal !important;
}
*/

.offcanvas.show:not(.hiding),.offcanvas.showing {
    transform: none;
    translate: none;
}

.google-address-autocomplete {
    display: block;
    width: 100%;
    border: 0;
    border-radius: 0.4rem;
    color-scheme: light;
    font-family: Manrope, sans-serif;
    font-size: 0.75rem;
}

.google-address-autocomplete::part(input) {
    box-sizing: border-box;
    width: 100%;
    min-height: calc(2.5rem + 2px);
    padding: 0.6rem 1rem;
    border: 1px solid rgba(8, 60, 130, 0.07);
    border-radius: 0.4rem;
    background: #fefefe;
    color: #60697b;
    box-shadow: 0 0 1.25rem rgba(30, 34, 40, 0.04);
    font: inherit;
}

.google-address-autocomplete::part(focus-ring) {
    outline: 2px solid rgba(63, 120, 224, 0.32);
    outline-offset: 1px;
}

.google-address-autocomplete::part(prediction-item) {
    color: #343f52;
    font-family: Manrope, sans-serif;
}

.google-address-autocomplete::part(prediction-item-secondary-text) {
    color: #60697b;
}

.professional-map-cluster {
    align-items: center;
    background: #3f78e0;
    border: 3px solid rgba(255, 255, 255, 0.9);
    border-radius: 9999px;
    box-shadow: 0 10px 24px rgba(31, 55, 99, 0.24);
    box-sizing: border-box;
    color: #ffffff;
    display: flex;
    font-size: 0.75rem;
    font-weight: 800;
    height: 44px;
    justify-content: center;
    line-height: 1;
    padding: 0;
    text-align: center;
    transition: transform 160ms ease, background-color 160ms ease;
    width: 44px;
}

.professional-map-cluster > span {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    line-height: 1;
    text-align: center;
    width: 100%;
}

.professional-map-cluster:hover,
.professional-map-cluster:focus {
    background: #2f62c4;
    outline: none;
    transform: scale(1.08);
}

.professional-card-focus {
    border-color: #3f78e0 !important;
    box-shadow: 0 0 0 3px rgba(63, 120, 224, 0.2), 0 12px 24px rgba(31, 55, 99, 0.1) !important;
}

@media (prefers-reduced-motion: reduce) {
    .professional-map-cluster {
        transition: none;
    }
}
