h1,
h1 span,
h2 {
    font-family: var(--font-family-1)
}

.side_blur,
[data-title] {
    position: relative
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    outline: 0;
    font-family: "Open Sans", sans-serif;
    font-weight: var(--font-weight-normal);
    text-decoration: none
}

:root {
    --body-color: #F9FAFB;
    --body-color-secondary: #fff;
    --bg-theme: #f5f5f5;
    --bg-color: #fff;
    --border-color: #f5f5f5;
    --border-primary: #323DD6;
    --button-text-color: #000;
    --button-color: #323DD6;
    --button-color-inverse: #363636;
    --color-text: #000;
    --color-light-to-dark: #F9FAFB;
    --color-white-to-dark: #ffff;
    --color-theme-gray: #dadada;
    --filter-img-default: none;
    --color-primary: #323DD6;
    --color-primary-gradient: linear-gradient(264deg, #323DD6 0%, #ce177b 100%);
    --color-secondary: #F9FAFB;
    --color-primary-light: #fff8f8;
    --color-dark: #252533;
    --color-black: #000000;
    --color-blue: #007bff;
    --color-white: #ffffff;
    --color-light-gray: #dadada;
    --color-gray: #acacac;
    --color-dark-gray: #898989;
    --color-whitesmoke: #f5f5f5;
    --font-family-1: "Open Sans", sans-serif;
    ;
    --font-size-medium: 20px;
    --font-size-default: 18px;
    --font-size-small: 16px;
    --font-size-xsmall: 14px;
    --font-size-minimum: 12px;
    --font-size-h1: 48px;
    --font-size-h2: 34px;
    --font-size-h3: 28px;
    --font-size-h4: 24px;
    --font-size-h5: 22px;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --top-margin: 50px;
    --border-default: 1.8px;
    --border-radius-small: 5px;
    --border-radius-default: 7px;
    --border-radius-medium: 10px;
    --border-radius-large: 12px;
    --border-radius-larger: 20px;
    --border-radius-extralarge: 40px;
    --box-shadow-default: 0px 4px 30px 6px rgba(0, 0, 0, 0.05);
    --box-shadow-primary: 0px 4px 20px 6px rgba(246, 201, 199, 0.16);
    --filter-white: brightness(0) saturate(100%) invert(99%) sepia(99%) saturate(2%) hue-rotate(196deg) brightness(111%) contrast(100%);
    --filter-primary: brightness(0) saturate(100%) invert(39%) sepia(27%) saturate(2606%) hue-rotate(331deg) brightness(90%) contrast(89%);
    --filter-gray: brightness(0) saturate(100%) invert(99%) sepia(0%) saturate(1268%) hue-rotate(127deg) brightness(70%) contrast(90%);
    --filter-black: brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(0%) hue-rotate(324deg) brightness(96%) contrast(104%);
    --gap-default: 5px
}

.theme-dark {
    --body-color: #1e1f22;
    --body-color-secondary: #313338;
    --bg-color: #313338;
    --bg-theme: #1e1f22;
    --border-color: #363636;
    --border-primary: #1e1f22;
    --border-color-inverse: #323DD6;
    --button-color: #fff;
    --box-shadow-primary: 0px 4px 20px 6px rgba(0, 0, 0, 0.16);
    --color-text: #fff;
    --color-theme-gray: #1e1f22;
    --color-light-to-dark: #1e1f22;
    --color-white-to-dark: #1e1f22;
    --button-text-color: #dadada;
    --filter-img-default: brightness(0) saturate(100%) invert(99%) sepia(99%) saturate(2%) hue-rotate(196deg) brightness(111%) contrast(100%);
    --filter-primary: brightness(0) saturate(100%) invert(99%) sepia(99%) saturate(2%) hue-rotate(196deg) brightness(111%) contrast(100%)
}

::-webkit-scrollbar {
    width: .6em;
    height: 100%
}

::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px var(--color-light-gray);
    background: var(--bg-theme);
    border-radius: 10px
}

::-webkit-scrollbar-thumb {
    border: 2px solid var(--bg-theme);
    background: var(--color-primary);
    border-radius: 10px
}

html {
    scroll-behavior: smooth
}

body {
    background-color: var(--color-white)
}

h1 {
    font-size: var(--font-size-h1)
}

h2 {
    font-size: var(--font-size-h2)
}

h3 {
    font-size: var(--font-size-h3)
}

h4 {
    font-size: var(--font-size-h4)
}

h5 {
    font-size: var(--font-size-h5)
}

p,
ul li {
    font-size: var(--font-size-default) !important
}

p {
    line-height: 1.7
}

a {
    color: var(--color-black)
}

.bold,
.label,
label {
    font-weight: var(--font-weight-semibold)
}

input,
textarea {
    border-radius: var(--border-radius-small);
    background-color: var(--color-lightgray);
    border: none;
    padding: 10px;
    resize: none
}

.back_to_rating_label,
.close__btn,
button,
input[type="button"],
input[type="checkbox"]:hover {
    cursor: pointer
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

input[type="checkbox"] {
    accent-color: var(--color-black)
}

[data-title] {
    z-index: 3
}

[data-title]:not([data-title=""])::after {
    content: attr(data-title);
    position: absolute;
    font-size: var(--font-size-minimum);
    background-color: var(--color-dark);
    color: var(--color-white);
    padding: 5px 5px 7px;
    line-height: 1;
    border-radius: var(--border-radius-small);
    visibility: hidden;
    white-space: nowrap;
    z-index: 2
}

[data-title]:hover::after {
    visibility: visible;
    content: attr(data-title);
    position: absolute;
    bottom: 70%;
    transform: translate(-50%, 0);
    left: 50%;
    height: min-content;

    @media(max-width:1024px) {
        display: none
    }
}

.side_blur::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(-10%, -50%);
    left: -10%;
    height: 200px;
    width: 20%;
    background-color: var(--color-primary);
    filter: blur(200px);
    z-index: -1
}

::placeholder {
    color: var(--color-gray)
}

.flex {
    display: flex !important
}

.flex-row {
    flex-direction: row
}

.flex-col {
    flex-direction: column
}

.flex-wrap {
    flex-wrap: wrap
}

.flex-no-wrap {
    flex-wrap: nowrap
}

.justify-start {
    justify-content: flex-start
}

.justify-end {
    justify-content: flex-end
}

.justify-center {
    justify-content: center
}

.justify-between {
    justify-content: space-between
}

.justify-around {
    justify-content: space-around
}

.justify-evenly {
    justify-content: space-evenly
}

.items-start {
    align-items: flex-start
}

.items-end {
    align-items: flex-end
}

.items-center {
    align-items: center
}

.items-baseline {
    align-items: baseline
}

.items-stretch {
    align-items: stretch
}

.self-start {
    align-self: flex-start
}

.self-end {
    align-self: flex-end
}

.self-center {
    align-self: center
}

.self-baseline {
    align-self: baseline
}

.self-stretch {
    align-self: stretch
}

.flex-grow,
.flex-grow-1 {
    flex-grow: 1
}

.flex-shrink,
.flex-shrink-1 {
    flex-shrink: 1
}

.flex-no-grow {
    flex-grow: 0
}

.flex-no-shrink {
    flex-shrink: 0
}

.flex-auto {
    flex: 1 1 auto
}

.flex-none {
    flex: none
}

.flex-grow-2 {
    flex-grow: 2
}

.flex-grow-3 {
    flex-grow: 3
}

.flex-shrink-2 {
    flex-shrink: 2
}

.flex-shrink-3 {
    flex-shrink: 3
}

.flex-basis-auto {
    flex-basis: auto
}

.flex-basis-0,
.flex-basis-1 {
    flex-basis: 0%
}

.flex-basis-full {
    flex-basis: 100%
}

.flex-basis-1-2 {
    flex-basis: 50%
}

.flex-basis-1-3 {
    flex-basis: 33.33%
}

.flex-basis-2-3 {
    flex-basis: 66.66%
}

.flex-basis-1-4 {
    flex-basis: 25%
}

.flex-basis-3-4 {
    flex-basis: 75%
}

.flex-basis-1-5 {
    flex-basis: 20%
}

.flex-basis-2-5 {
    flex-basis: 40%
}

.flex-basis-3-5 {
    flex-basis: 60%
}

.flex-basis-4-5 {
    flex-basis: 80%
}

.flex-basis-1-6 {
    flex-basis: 16.66%
}

.flex-basis-2-6 {
    flex-basis: 33.32%
}

.flex-basis-3-6 {
    flex-basis: 49.98%
}

.flex-basis-4-6 {
    flex-basis: 66.64%
}

.flex-basis-5-6 {
    flex-basis: 83.3%
}

.gap-1 {
    gap: .25rem
}

.gap-2 {
    gap: .5rem
}

.gap-3 {
    gap: .75rem
}

.gap-4 {
    gap: 1rem
}

.gap-5 {
    gap: 1.25rem
}

.gap-6 {
    gap: 1.5rem
}

.gap-8 {
    gap: 2rem
}

.gap-10 {
    gap: 2.5rem
}

.gap-12 {
    gap: 3rem
}

.gap-16 {
    gap: 4rem
}

.gap-20 {
    gap: 5rem
}

.gap-24 {
    gap: 6rem
}

.gap-32 {
    gap: 8rem
}

.gap-40 {
    gap: 10rem
}

.gap-48 {
    gap: 12rem
}

.rotate-180 {
    transform: rotate(180deg);
    transition: transform 0.3s
}

hr {
    clear: both;
    margin-bottom: 0;
    border: 0;
    height: 2px;
    background-image: linear-gradient(to right, #fff, transparent, #fff), linear-gradient(transparent, rgb(0 0 0 / .55) 150%);
    background-image: -moz-linear-gradient(to right, #fff, transparent, #fff), -webkit-linear-gradient(transparent, rgb(0 0 0 / .55) 150%);
    background-image: -ms-linear-gradient(to right, #fff, transparent, #fff), -webkit-linear-gradient(transparent, rgb(0 0 0 / .55) 150%)
}

.feedback__model {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 50;
    color: #fff
}

.model__inner {
    width: 510px;
    overflow: hidden;
    border-radius: var(--border-radius-medium);
    margin: auto;
    background: #fff;
    color: #000;
    padding: 1.3em 2em 2em;
    position: relative
}

.modal_btns_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center
}

.model__sub_title {
    margin-bottom: 1em
}

.model__title {
    margin-bottom: 5px
}

.feedback__model .ratings_container {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap
}

.feedback__model .ratings_container .rating {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px
}

.feedback__model .ratings_container .rating:hover {
    transform: scale(1.2);
    transition: transform 0.5s ease-in-out
}

.feedback__model .ratings_container .rating:hover .rating_label {
    border: 1px solid var(--color-primary) !important;
    background-color: var(--color-secondary) !important;
    color: var(--color-primary) !important;
    cursor: pointer
}

.feedback__model .ratings_container .rating img {
    width: 40px;
    cursor: pointer
}

.feedback__model .ratings_container .rating .rating_label {
    border-radius: 40px;
    border: 1px solid var(--color-dark);
    padding: 5px 10px
}

.feedback__model .feedback_form_container {
    display: none;
    position: relative;
    left: 200%;
    flex-direction: column !important
}

.form_group {
    display: inline-grid;
    width: 100%;
    margin-top: 15px
}

.form__label {
    font-size: 18px;
    font-weight: 600;
    padding-bottom: 6px
}

#urls,
.form-control,
.textarea-group textarea {
    font-size: var(--font-size-default);
    width: 100%
}

.form__input {
    height: 32px;
    border-radius: 2px;
    outline: 0;
    width: 100%;
    border: 1px solid #b8b8b8
}

.form_group textarea {
    height: 80px;
    resize: none
}

.submit__btn {
    width: 50% !important;
    margin: 15px auto 10px;
    height: 43px;
    background: #323DD6;
    border: none;
    color: #fff;
    cursor: pointer
}

.back_to_rating_label {
    visibility: hidden
}

#feedback_response_modal {
    padding: 50px
}

#feedback_response_modal .model-footer {
    padding-top: 20px
}

#feedback_response_modal .model-footer .btn,
.form-control input {
    width: 100%
}

#urls,
.form-control {
    resize: none;
    margin-left: auto;
    margin-right: auto;
    white-space: pre-wrap;
    z-index: 1;
    height: 240px;
    border-radius: var(--border-radius-small) !important;
    border: none !important;
    background: var(--color-white) !important;
    box-shadow: none !important
}

#urls.pro-mode {
    height: 380px
}

#urls {
    padding-left: 4px;
    padding-right: 4px
}

.form-control,
input#urls {
    border-radius: 50px !important;
    height: 40px;
    display: flex;
    gap: 5px;
    justify-content: start;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px
}

.tool_input {
    border: 1px solid var(--color-white) !important;
    box-shadow: 0 20px 50px 0 rgb(18 17 39 / .08) !important;
    min-height: 250px
}

.form {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px
}

.form .form-control {
    border: 1px solid var(--color-light-gray);
    box-shadow: none
}

.form-control {
    border: 1px solid var(--color-gray) !important
}

.form-control:focus-within {
    border: 1px solid var(--color-black) !important
}

.form-group {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 5px
}

.form-group-inline {
    display: flex;
    min-height: 40px;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center
}

.form-group-inline .label {
    min-width: 30%
}

.form-group-inline .form-control {
    flex: 1
}

.textarea-group {
    height: 150px !important;
    border-radius: 10px !important;
    align-items: start;
    padding-top: 15px;
    box-shadow: none;
    border: 1px solid var(--color-light-gray);
    background-color: var(--bg-color) !important
}

.textarea-group img {
    filter: var(--filter-img-default)
}

.textarea-group textarea {
    height: 100%;
    padding-top: 0;
    color: var(--color-text)
}

.clr-red {
    color: red
}

.clr-green {
    color: green
}

.clr-primary-gradient {
    color: var(--color-primary-gradient);
    background: var(--color-primary-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0;
    background-clip: text;
    color: #fff0
}

.beta {
    border: 1px solid var(--color-primary);
    font-size: var(--font-size-minimum);
    border-radius: 20px;
    padding: 2px 10px 4px
}

.beta-pro {
    background: var(--color-primary-gradient);
    color: var(--color-white)
}

.centered {
    text-align: center
}

.show-query-deduction {
    display: none;
    position: absolute;
    width: 250px;
    height: 56px;
    background-color: #fff;
    border-radius: 8px;
    filter: drop-shadow(0 0 5.425px rgb(0 0 0 / .2));
    padding: 10px;
    left: 140px;
    top: -7px;
    color: #000;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-align: center
}

.show-query-deduction-message {
    font-size: 14px
}

.show-query-deduction-message span {
    color: #323DD6
}

.result__filter__container {
    display: none !important
}