* {}

/* @font-face {
  font-family: WorkSans;
  src: url(lib/fonts/WorkSans-VariableFont_wght.ttf);
} */

.fonts {
    font-family: "Work Sans", "Funnel Sans", "Mulish", "Red Hat Text", "TASA Explorer", "Work Sans";

}


:root {
    /* #0075ff */
    /* --first: hsl(212, 100%, 50%); */
    --first: hsl(212deg 100% 57%);
    --secend: hsl(212deg 100% 57%);
    --third: hsl(45, 100%, 50%);
    --pending: #ffb30070;
    --sucess: #00968870;
    --hFont: "Work Sans", "Funnel Sans", "Mulish", "Red Hat Text", "TASA Explorer", "Work Sans", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    --pFont: "Funnel Sans", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    --bFont: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}



/* bg */

@view-transition {
    navigation: auto;
}

::view-transition-group(*) {
    animation-duration: 0.2s;
}

@media (prefers-color-scheme: dark) {
    :root {
        --color: hsl(210 10% 12% / 1);
        --third: hsl(45, 100%, 50%);
        --htext: hsl(210deg 100% 97.15%);
        --text: hsl(0deg 0% 100%);
        --act1: hsl(212deg 100% 57%);
        --actText1: hwb(0 100% 0%);
        --act2: #ffffff0a;
        --actText2: hsl(212deg 100% 57%);
        --bg: #222427;
        --bgCard: #ffffff0a;
        --CardBorder: solid 1px var(--bgCard);
        --MainSecBg: ;
        --inerSecBg: ;
        --filter: invert(1) hue-rotate(180deg) brightness(1.5);
    }
}

@media (prefers-color-scheme: light) {
    :root {
        --color: white;
        --third: #fff5e7;
        --forth: #e9f3ff;
        --htext: hsl(221 100% 12% / 1);
        --text: hsl(221 10% 20% / 1);
        --act1: var(--first);
        --actText1: #fff;
        --act2: #fff;
        --actText2: var(--first);
        --bg: #f5f5f5;
        /* #eef6ff */
        --bgCard: #f9f9f9;
        --CardBorder: solid 1px var(--bgCard);
        --MainSecBg: ;
        --inerSecBg: ;
        --filter: invert(0);
    }
}

/* b W */
/* @media (prefers-color-scheme: dark) {
    :root {
        --color: hsl(210 10% 12% / 1);
        --third: hsl(45, 100%, 50%);
        --htext: hsl(0deg 0% 100%);
        --text: hsl(0deg 0% 100%);
        --act1: hsl(0deg 0% 100%);
        --actText1: hwb(0deg 0% 100%);
        --act2: #ffffff0a;
        --actText2: hsl(0deg 0% 100%);
        --bg: #222427;
        --bgCard: #ffffff0a;
        --CardBorder: solid;
        --MainSecBg: ;
        --inerSecBg: ;
        --filter: invert(1) hue-rotate(180deg) brightness(1.5);
    }
}

@media (prefers-color-scheme: light) {
    :root {
        --color: white;
        --htext: hsl(0deg 0% 0%);
        --text: hsl(210, 3%, 23%);
        --act1: hsl(0deg 0% 0%);
        --actText1: #fff;
        --act2: #fff;
        --actText2: hsl(0deg 0% 0%);
        --bg: #ffffff;
        --bgCard: #f8f8f8;
        --CardBorder: solid 2px;
        --MainSecBg: ;
        --inerSecBg: ;
    }
} */

/* skin */
/* 
@media (prefers-color-scheme: dark) {
    :root {
        --color: hsl(210 10% 12% / 1);
        --third: hsl(45, 100%, 50%);
        --htext: hsl(210deg 100% 97.15%);
        --text: hsl(0deg 0% 100%);
        --act1: hsl(212deg 100% 57%);
        --actText1: hwb(0 100% 0%);
        --act2: #ffffff0a;
        --actText2: hsl(212deg 100% 57%);
        --bg: #222427;
        --bgCard: #ffffff0a;
        --CardBorder: none;
        --MainSecBg: ;
        --inerSecBg: ;
        --filter: invert(1) hue-rotate(180deg) brightness(1.5);
    }
}

@media (prefers-color-scheme: light) {
    :root {
        --color: white;
        --htext: hsl(352.5deg 21.05% 7.45%);
        --text: hsl(210, 3%, 23%);
        --act1: hsl(21.06deg 100% 70.39%);
        --actText1: #170f10;
        --act2: #170f10;
        --actText2: hsl(21.06deg 100% 70.39%);
        --bg: #f8f4f1;
        --bgCard: #f9f9f9;
        --CardBorder: none;
        --MainSecBg: ;
        --inerSecBg: ;
        --filter: invert(0);
    }
} */


html {
    /* margin: 0;
    background-color: var(--color);
    display: flex;
    flex-direction: column;
    align-items: center;
    scroll-behavior: smooth; */
}

body {

    margin: 0;
    background: var(--bg);
    min-height: 100vh;
    width: 100vw;
    max-width: 100vw;
    overflow-x: clip;

}

header {
    background-color: var(--color);
}

section {
    width: 85vw;
    max-width: 1600px;
    margin: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.skull {
    width: 100%;
    /* background-image: linear-gradient(45deg, var(--bg), var(--bgCard), var(--bg), var(--bg)); */
    border-radius: 10px;
    background-color: var(--bg);
    border-radius: 4px;
    overflow: hidden;
    position: relative;
    min-height: 30px;
}

.skull::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--bg), var(--bgCard), var(--bg));
    animation: shimmer 1.5s infinite linear;
}


@keyframes shimmer {
    0% {
        left: -100%;
    }

    100% {
        left: 100%;
    }
}

h1 {
    font-family: var(--hFont);
    margin: 0;
    color: var(--htext);
    font-size: 35px;
    font-weight: 600;
    line-height: 160%;
}

h2 {
    font-family: var(--hFont);
    margin: 0;
    color: var(--htext);
    font-size: 20px;
    font-weight: 600;
    line-height: 120%;
}

h3 {
    font-family: var(--hFont);
    margin: 0;
    color: var(--htext);
    font-size: 18px;
    font-weight: 600;
}

h4 {
    font-family: var(--hFont);
    margin: 0;
    color: var(--htext);
    font-weight: 600;
    line-height: 120%;
}

h5 {
    font-family: var(--hFont);
    margin: 0;
    color: var(--htext);
    font-weight: 600;
}

p {
    font-size: 14px;
    font-family: var(--pFont);
    color: var(--text);
    margin: 0;
    font-weight: 400;
    line-height: 140%;
}

label {
    font-size: 14px;
    font-family: var(--pFont);
    color: var(--text);
    margin: 0;
    font-weight: 500;
    line-height: 120%;
}

b {
    font-size: 14px;
    font-family: var(--bFont);
    color: var(--text);
    font-weight: 500;
    line-height: 120%;
}

strong {
    font-size: 14px;
    font-family: var(--bFont);
    color: var(--text);
    font-weight: 500;
    line-height: 120%;
}

a {
    line-height: 0;
    text-decoration: none;
    color: var(--text);
    font-weight: 500;
    transition: 400ms;
    font-family: var(--pFont);
    cursor: pointer;

}

a:hover {
    color: var(--accent);
}

a:hover p {
    color: var(--accent);
}

a:hover svg {
    color: var(--accent);
}

ul,
ol {
    margin: 4px 0px 8px 0px;
    padding-inline-start: 24px;
}

li {
    font-size: 14px;
    font-family: var(--pFont);
    color: var(--text);
    line-height: 120%;
}

svg {
    /* color: var(--text);
    stroke: var(--text); */
    color: var(--htext);
}


button {
    border-radius: 30px;
    display: flex;
    background: var(--act1);
    border: none;
    font-weight: 600;
    font-size: 14px;
    color: var(--actText1);
}

button {
    min-width: max-content;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    outline: none;
    padding: 14px 16px;
    border-radius: 5px;
    font-weight: 600;
    border: solid 1px #00000010;
    background: var(--bgCard);
    color: var(--text);
    cursor: pointer;
    transition: 0.2s;
    outline: solid 2px transparent;
}

button:active {
    transform: translateY(1px)
}

button:disabled {
    opacity: .6;
    cursor: not-allowed
}

.btnRwd {
    text-decoration: none;
    color: currentColor;
    padding: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 6px;
}

button svg {
    height: 16px;
    width: 16px;
    color: currentColor;
}

button .btnInfo {
    transition: 0.4s;
    font-size: 10px;
}

button:hover .btnInfo {
    opacity: 1;
}

button .btnInfoSide {
    font-size: 10px;
    display: none;
    width: 0px;
    opacity: 0;
}

button:hover .btnInfoSide {
    display: block;
    width: auto;
    opacity: 1;
}

button .btnInfoUp {
    font-size: 12px;
    opacity: 0;
    transition: .2s;
    transition-delay: .1s;
    position: absolute;
    translate: 0 -25px;
    font-weight: 600;
    font-size: 10px;
    color: var(--htext);
}

button:hover .btnInfoUp {
    opacity: 1;
}

button.actBeta {
    font-size: 10px;
    font-weight: 200;
    background: var(--color);
    border: none;
}

button.act1 {
    background-color: var(--act1);
    color: var(--actText1);
}

button.act2 {
    background-color: var(--act2);
    color: var(--actText2);
}

button.act3 {
    background-color: var(--htext);
    color: var(--color);
}

button em {
    font-weight: 500;
}

button:hover {
    filter: brightness(0.94);
}



/* Dark Mode using prefers-color-scheme */
@media (prefers-color-scheme: dark) {
    :root {
        --bg-default: #121212;
        --text-default: #ffffff;
        --color-primary: #66a6ff;
        --color-secondary: #adb5bd;
        --color-success: #28a745;
        --color-danger: #ff6b6b;
        --color-warning: #d39e00;
        --color-info: #66d9ff;
        --color-light: #f8f9fa;
        --color-dark: #212529;
    }

    body {
        background-color: var(--bg-default);
        color: var(--text-default);
    }

    /* Inverse bg/dark class tweaks */
    .bg-light {
        background-color: var(--color-dark);
        color: var(--color-light);
    }

    .bg-dark {
        background-color: var(--color-light);
        color: var(--color-dark);
    }
}

/* Responsive Typography: scale headings down on small screens */
@media (max-width: 768px) {
    :root {
        --fs-h1: 2rem;
        --fs-h2: 1.75rem;
        --fs-h3: 1.5rem;
    }


}

@media (min-width: 769px) {}

@media (min-width: 992px) {}

@media (min-width: 1200px) {}

/* Small helpers: margins and spacing classes */
.m-0 {
    margin: 0 !important;
}

.mt-1 {
    margin-top: var(--sp-xs) !important;
}

.mt-2 {
    margin-top: var(--sp-sm) !important;
}

.mt-3 {
    margin-top: var(--sp-md) !important;
}

.mb-1 {
    margin-bottom: var(--sp-xs) !important;
}

.mb-2 {
    margin-bottom: var(--sp-sm) !important;
}

.mb-3 {
    margin-bottom: var(--sp-md) !important;
}

.p-1 {
    padding: var(--sp-xs) !important;
}

.p-2 {
    padding: var(--sp-sm) !important;
}

.p-3 {
    padding: var(--sp-md) !important;
}


.checkbox-wrapper-47 {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.checkbox-wrapper-47 .indice {
    font-size: 10px;
    font-weight: 400;
    opacity: .7;
}

.checkbox-wrapper-47 input[type="checkbox"] {
    display: none;
    visibility: hidden;
}

.checkbox-wrapper-47 label {
    position: relative;
    padding-left: 1em;
    padding-right: 1em;
    line-height: 2;
    cursor: pointer;
    display: inline-flex;
    color: var(--text);
}

.checkbox-wrapper-47 label:before {
    z-index: 1;
    box-sizing: border-box;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2em;
    border: 1px solid #00000010;
    border-radius: 4px;
    background: #f9f9f910;
}

.checkbox-wrapper-47 input[type=checkbox]:checked+label {
    padding-left: 1em;
    color: var(--color);
    /* margin: 2px; */
    z-index: 1;
}

.checkbox-wrapper-47 input[type=checkbox]:checked+label:before {
    top: 0;
    width: 100%;
    height: 2em;
    background: var(--htext);
    border-color: var(--htext);
    z-index: -1;
}

.checkbox-wrapper-47 label,
.checkbox-wrapper-47 label::before {
    transition: 0.25s all ease;
}

.radio-wrapper-47 {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.radio-wrapper-47 .indice {
    font-size: 10px;
    font-weight: 400;
    opacity: .7;
    margin: -2px 20px 8px 4px;
}

.radio-wrapper-47 input[type="radio"] {
    display: none;
    visibility: hidden;
}

.radio-wrapper-47 label {
    position: relative;
    padding-left: 1em;
    padding-right: 1em;
    line-height: 2;
    cursor: pointer;
    display: inline-flex;
    color: var(--text);
}

.radio-wrapper-47 label .icon {
    height: 0;
    width: 0;
    display: none;
}

.radio-wrapper-47 label .icon svg {
    padding: 5px;
    height: 16px;
    width: 16px;
    color: currentColor;
    fill: var(--card);
}

.radio-wrapper-47 label:before {
    z-index: 1;
    box-sizing: border-box;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2em;
    border: 1px solid #00000010;
    border-radius: 4px;
    background: #f9f9f910;
}

.radio-wrapper-47 input[type=radio]:checked+label {
    padding-left: 1em;
    color: var(--color-danger);
    /* margin: 2px; */
    z-index: 1;
    color: var(--accent);
}

.radio-wrapper-47 input[type=radio]:checked+label .icon {
    display: block;
    translate: -4px -8px;
}

.radio-wrapper-47 input[type=radio]:checked+label:before {
    top: 0;
    width: 100%;
    height: 2em;
    /* background: var(--accent); */
    border-color: var(--accent);
    z-index: -1;
}

.radio-wrapper-47 label {
    transition: 0.25s all ease;
}

#rangeValue {
    position: relative;
    display: contents;
    text-align: center;
    font-size: 1em;
    font-weight: 500;
}

.rangLabel {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.range {
    width: 100%;
    padding: 0 !important;
    height: 10px !important;
    -webkit-appearance: none;
    background: #e1ecff;
    outline: none;
    border: none !important;
    border-radius: 15px !important;
    overflow: hidden;
}

.range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 10px !important;
    height: 10px !important;
    border-radius: 100% !important;
    background: #248aff;
    cursor: pointer;
    border: 4px solid #248aff;
    box-shadow: calc(-100vw - 7px) 0 0 100vw #248aff40;

}