
@font-face {
    font-family: "Inter";
    src: url("../fonts/Inter/Inter-VariableFont_opsz,wght.ttf") format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src: url("../fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf") format("truetype");
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-MediumItalic.ttf") format("truetype");
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-SemiBoldItalic.ttf") format("truetype");
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto/Roboto-BoldItalic.ttf") format("truetype");
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
*,
*::before,
*::after {
    box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd {
    margin: 0;
}

body {
    min-height: 100vh;
    line-height: 1.5;
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style-position: inside;
}

img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

img,
video {
    height: auto;
}

button,
input,
textarea,
select {
    font: inherit;
    color: inherit;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}
a {
    text-decoration: none;
}
textarea {
    resize: vertical;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

[hidden] {
    display: none !important;
}

a {
    color: inherit;
    text-decoration: none;
}
button {
    padding: 0;
    margin: 0;
    background: transparent;
}
:root {
    /* Pallete */
    
    --blue-100: #e8f1ff;
    --blue-500: #2577ff;
   --gray-100: #f8fafc;
--gray-200: #f1f4f7;
--gray-300: #eceff3;
--gray-400: #e4e8ed;
--gray-500: #dce1e7;
--gray-600: #cdd3db;
--gray-700: #b9c1cb;
--gray-800: #a3adba;
--gray-900: #8c98a8;
--orange-100: #fff3d6;
--orange-500:  #f4b400;
--red-100: #ffede6;
--red-500: #FB490A;
    /* Colors */
    --black: #000;
    --white: #fff;
    --green:#06b300;
    --primary: var(--blue-500);
    
    /* Theme colors */
    --secondary: var(--gray-400);
    --color-text:;
    --color-title:var(--black);
    --color-muted:#646d79; 
    --card-bg: var(--white);
    /* Site */
    --font-primary: "Inter", Arial, sans-serif;
    --font-secondary: "Roboto", Arial, sans-serif;
    --container-size: 1200px;
}
body {
    font-family: var(--font-primary);
    font-optical-sizing: auto;
    color: var(--color-text);
    background: linear-gradient(to bottom, var(--white) 0, #f5f7f9 50%, #f5f7f9 100%);
}
 main {
    padding-top: 50px;
        padding-bottom: 80px;
    }
/* Utils */
.container {
    --container-width: var(--container-size, 1200px);
    --container-offset: 15px;
    width: 100%;
    max-width: var(--container-width);
    padding-inline: var(--container-offset);
    margin-inline: auto;
    box-sizing: border-box;
}

/* Icons */
.icons {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.icon {
    flex-shrink: 0;
    color: inherit;
}
.icon-primary {
    color: var(--primary);
}
/* Buttons */
.btn {
    --btn-width: max-content;
    --btn-height: var(--defaut-size, 40px);
    --btn-font-size: 0.875rem;
    --btn-font-weight: 700;
    --btn-offset: 0 25px;
    --btn-border-radius:999px;
    --btn-gap:10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap:var(--btn-gap);
    width: var(--btn-width);
    height: var(--btn-height);
    font-family: var(--font-primary);
    font-size: var(--btn-font-size);
    font-weight: var(--btn-font-weight);
    line-height: 1;
    background: var(--btn-background);
    color: var(--btn-color);
    padding: var(--btn-offset);
    border-radius: var(--btn-border-radius);
    cursor: pointer;
    transform: scale(1);
    transition:
        background-color 150ms ease,
        color 150ms ease,
        box-shadow 150ms ease,
        transform: .2s ease;
    user-select: none;
}
.btn:hover {
    background: var(--btn-background-hover);
    color: var(--btn-color-hover);
}
.btn:active {
    transform: scale(0.98);
}
.btn:focus-visible {
    outline: 2px solid var(--btn-background);
    outline-offset: 2px;
}
.btn-lg {
    --btn-height: 52px;
}
.btn-sm {
    --btn-height: 34px;
}
.btn-full {
    width:100%;
}
.btn-circle {
    --btn-width: var(--btn-height);
    --btn-border-radius:50%;
    --btn-offset:0;
}
.btn-white {
    --btn-background: var(--white);
    --btn-background-hover: #e9e9e9;
    --btn-color: var(--black);
}
.btn-primary {
    --btn-background: var(--primary);
    --btn-background-hover: color-mix(in srgb, var(--primary) 88%, var(--black));
    --btn-color: var(--white);
    --btn-color-hover: var(--white);
}
.btn-primary-muted {
    --btn-background: var(--blue-100);
    --btn-background-hover: color-mix(in srgb, var(--blue-100) 88%, var(--blue-500));
    --btn-color: var(--blue-500);
    --btn-color-hover: var(--blue-500);
}
.btn-secondary {
    --btn-background: var(--secondary);
    --btn-background-hover: color-mix(in srgb, var(--secondary) 96%, var(--black));
    --btn-color: var(--black);
    --btn-color-hover: var(--black);
   
}
.btn-outline-secondary {
     --btn-background: transparent;
    --btn-background-hover: transparent;
    --btn-color: var(--black);
    --btn-color-hover: var(--black);
    border:1px solid var(--gray-400);
}
.btn-outline-secondary:hover {
    border-color: var(--gray-600);
}
.btn-secondary-red {
    
    --btn-background: var(--secondary);
    --btn-background-hover: var(--red-100);
    --btn-color: var(--black);
    --btn-color-hover: var(--red-500);

}
.btn-dark {
    --btn-background: var(--black);
    --btn-background-hover: color-mix(in srgb, var(--black) 92%, var(--white));
    --btn-color: var(--white);
    --btn-color-hover: var(--white);
}

/* Layout */
.layout {
    margin-top:20px;
}
.layout-grid-3,
.layout-grid-2 {
    display: grid;
    gap: var(--layout-gap, 20px);
}
.layout-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.layout-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (width <= 900px) {
    .layout-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (width <= 600px) {
    .layout-grid-3,
    .layout-grid-2 {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Components */

/* Announcement */
.announcement {
    display:flex;
    align-items:center;
    gap:8px;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--color-title);
    min-height: 32px;
    padding: 4px 10px 4px 5px;
    border-radius: 999px;
    width: max-content;
    background-color: var(--gray-300);
    transition: .2s;
}
.announcement:hover {
    background-color: var(--gray-400);
}
.announcement:focus-visible {
    outline: 2px solid var(--gray-400);
    outline-offset: 2px;
}
.announcement__badge {
display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    padding-inline: 10px;
    border-radius: 999px;
    background-color: var(--primary);
    color: var(--white);
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 1;
}

/* More */
.more {
        display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 5px;
    flex-wrap: wrap;   
    font-size: 1rem;
    line-height: 1.5;
    text-align: center;
}
.more-link {
        display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 700;
    
}
.more-link span {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}
.more-link .icon {
    transition:.2s ease-in-out;
}
.more-link:hover .icon {
    transform: rotate(-90deg);
}

/* Features */
.features {
    display:grid;
    grid-template-columns: repeat(5,1fr);
    grid-gap:15px;
    list-style: none;
    margin:0;
    padding:0;
}
.features__item {
    display:grid;
    grid-template-columns: 56px 1fr;
    align-items:center;
    grid-gap:15px;
    font-size: 0.95rem;
    font-weight: 700;
}
.features__icon {
    --features-icon-size:56px;
    display:flex;
    align-items:center;
    justify-content: center;
    width: var(--features-icon-size);
    height: var(--features-icon-size);
    border-radius: 17px;
    background-color: var(--gray-400);
}

/* Badge */
.badge {
    display: inline-block;
    padding: 5px 15px;
    border-radius: 30px;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--badge-color);
    background: var(--badge-bg);
}
.badge-secondary {
    --badge-bg: var(--gray-300);
    --badge-color: var(--color-title);
}

/* Card */
.card {
    --card-border-radius: 20px;
    border-radius: var(--card-border-radius);
    padding: var(--card-offset);
    background-color: var(--card-bg);
    box-shadow: 0 4px 24px rgba(20, 30, 50, 0.035);
}
.card-body {
    --card-offset:20px;
}


/* Hero */
.speedbar {
    min-width: 0;
    padding-block: 20px;
    color: var(--color-title, #111);
    font-family: var(--font-primary);
    font-size: 0.9rem;
    line-height: 1.4;
}
.speedbar .over {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    max-width: 100%;
}
.speedbar a,
.speedbar__link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--color-title, #111);
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.2s ease-in-out;
}
.speedbar a::after,
.speedbar__link::after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m4.5 2.5 3.5 3.5-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m4.5 2.5 3.5 3.5-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.speedbar__current {
    color: var(--color-title, #111);
    font-weight: 400;
}
.speedbar a:hover,
.speedbar__link:hover {
    opacity: 0.65;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}
.speedbar a:focus-visible,
.speedbar__link:focus-visible {
    border-radius: 4px;
    outline: 2px solid color-mix(in srgb, var(--primary) 40%, transparent);
    outline-offset: 3px;
}
@media (width <= 540px) {
    .speedbar {
        overflow-x: auto;
        padding-block: 16px;
        white-space: nowrap;
        scrollbar-width: none;
    }
    .speedbar::-webkit-scrollbar {
        display: none;
    }
    .speedbar .over {
        width: max-content;
        flex-wrap: nowrap;
    }
 
}
@media (prefers-reduced-motion: reduce) {
    .speedbar a,
    .speedbar__link {
        transition: none;
    }
}
.hero-center {
    margin-inline:auto;
    max-width: 550px;
    width:100%;
    text-align: center;
}
.hero-center .speedbar {
    padding-block:20px 10px !important;
}
.hero-center .speedbar .over {
    justify-content: center !important;
}
.hero-center h1 {
    font-size: 2.5rem;
}
.hero-title {
    display:grid;
    grid-template-columns: 40px 1fr;
    grid-gap:15px;
    align-items:center;
}
.hero-description {
    font-size: 1rem;
    margin-top:10px;
    max-width:700px;
}


/* Editor */
.editor {
    font-family: var(--font-secondary);
    font-size: 17px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}
.editor :is(p, ul, ol, blockquote, pre, figure, table, hr) {
    margin-block: 0 20px;
}
.editor :is(h1, h2, h3, h4, h5, h6) {
    margin-block: 28px 12px;
    color: var(--color-title);
    font-family: var(--font-primary);
    font-weight: 700;
    line-height: 1.2;
    text-wrap: balance;
}

.editor > :first-child {
    margin-top: 0;
}
.editor > :last-child {
    margin-bottom: 0;
}
.editor :is(ul, ol) {
    padding-left: 1.5em;
}
.editor ul {
    list-style: disc;
}
.editor ol {
    list-style: decimal;
}
.editor li {
    padding-left: 0.3em;
}
.editor li + li {
    margin-top: 0.45em;
}
.editor li::marker {
    color: var(--black);
    font-weight: 700;
}
.editor li > :is(ul, ol) {
    margin-block: 0.55em 0;
}
.editor :is(img, picture) {
    max-width: 100%;
}
.editor img {
    display: block;
    width: auto;
    height: auto;
    border-radius: 15px;
}
.editor picture {
    display: block;
}
.editor picture img,
.editor figure img {
    width: 100%;
}
.editor figure {
    max-width: 100%;
}
.editor figcaption {
    margin-top: 8px;
    color: var(--color-muted);
    font-size: 0.85em;
    line-height: 1.5;
    text-align: center;
}
.editor a {
    color: var(--primary);
    border-bottom:1px dashed transparent;
}
.editor a:hover {
    color: var(--primary);
    border-color: var(--primary);
}
@media (max-width: 640px) {
    .editor {
        font-size: 16px;
        line-height: 1.65;
    }

    .editor :is(p, ul, ol, blockquote, pre, figure, table, hr) {
        margin-bottom: 16px;
    }

    .editor :is(h1, h2, h3, h4, h5, h6) {
        margin-top: 22px;
    }

    .editor :is(ul, ol) {
        padding-left: 1.25em;
    }

    .editor img {
        border-radius: 12px;
    }
}
/* Img */
.img-full {
    width: 100%;
    height:100%;
    object-fit: cover;
}
/* Dropdown */
.dropdown {
    --dropdown-width: 240px;
    --dropdown-max-width: calc(100vw - 32px);
    --dropdown-offset: 10px;
    --dropdown-padding: 12px;
    --dropdown-background: #fff;
    --dropdown-radius: 26px;
    --dropdown-shadow: 0 8px 32px rgb(20 30 50 / 12%);
    --dropdown-z-index: 100;
    --dropdown-duration: 180ms;
    --dropdown-easing: cubic-bezier(.2, .8, .2, 1);
    --dropdown-shift: -6px;
    --dropdown-scale: .98;
    --dropdown-align-x: 0%;
    --dropdown-origin: top left;

    position: relative;
    display: inline-flex;
}

.dropdown-content {
    position: absolute;
    top: calc(100% + var(--dropdown-offset));
    left: 0;
    z-index: var(--dropdown-z-index);
    box-sizing: border-box;
    width: var(--dropdown-width);
    max-width: var(--dropdown-max-width);
    padding: var(--dropdown-padding);
    background: var(--dropdown-background);
    border-radius: var(--dropdown-radius);
    box-shadow: var(--dropdown-shadow);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform:
        translate(var(--dropdown-align-x), var(--dropdown-shift))
        scale(var(--dropdown-scale));
    transform-origin: var(--dropdown-origin);

    transition:
        opacity var(--dropdown-duration) var(--dropdown-easing),
        transform var(--dropdown-duration) var(--dropdown-easing),
        visibility 0s linear var(--dropdown-duration);
}

.dropdown-content-end {
    --dropdown-origin: top right;

    right: 0;
    left: auto;
}

.dropdown-content-center {
    --dropdown-align-x: -50%;
    --dropdown-origin: top center;

    left: 50%;
}

.dropdown-content-sm {
    --dropdown-width: 170px;
    --dropdown-offset: 6px;
    --dropdown-padding: 6px;
    --dropdown-radius: 14px;
}

.dropdown.is-open > .dropdown-content {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(var(--dropdown-align-x), 0) scale(1);
    transition-delay: 0s;
}

@media (prefers-reduced-motion: reduce) {
    .dropdown {
        --dropdown-duration: 0ms;
    }
}


/* Drawer */
.drawer {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 1001;
    width: min(360px, 100%);
    padding: 24px;
    box-sizing: border-box;
    overflow-y: auto;
    
    visibility: hidden;
    transform: translateX(-100%);
    transition: transform .3s ease, visibility .3s;
}

.drawer.is-open {
    visibility: visible;
    transform: translateX(0);
}

.drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1000;
    
    background: rgb(0 0 0 / 50%);
    backdrop-filter: blur(10px);
 
    transition: opacity 220ms ease;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease, visibility .3s;
}

.drawer-backdrop.is-open {
    opacity: 1;
    visibility: visible;
}

html.drawer-open {
    overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
    .drawer,
    .drawer-backdrop {
        transition: none;
    }
}



/* Modal */
.modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 20px;
    visibility: hidden;
    pointer-events: none;
    transition: visibility .3s;
}


.modal:not(dialog) {
    display: grid;
    width: auto;
    max-height: none;
    margin: 0;
    overflow: visible;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    transform: none;
}

.modal.is-open {
    visibility: visible;
    pointer-events: auto;
}

.modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgb(15 23 42 / 55%);
    opacity: 0;
    transition: opacity .3s ease;
}

.modal__content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 420px;
    max-height: calc(100dvh - 40px);
    overflow-y: auto;
    padding: 30px;
    background: var(--white, #fff);
    border-radius: 30px;
    box-shadow: 0 20px 60px rgb(0 0 0 / 12%);
    opacity: 0;
    transform: translateY(20px) scale(.97);
    transition: opacity .3s ease, transform .3s cubic-bezier(.2, .8, .2, 1);
}

.modal.is-open .modal__backdrop {
    opacity: 1;
}

.modal.is-open .modal__content {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.modal__close {
    position: absolute;
    top:0;
    right:0;
    margin:15px;
}
.modal__header {
    text-align: center;
    margin-bottom:20px;
}
@media (prefers-reduced-motion: reduce) {
    .modal,
    .modal__backdrop,
    .modal__content {
        transition: none;
    }
}

/* Forms */
.form-label {
    display:block;
    font-size: 0.9rem;
    font-weight: 600;
    padding-bottom:10px;
}
.form-label sup {
    color: var(--red-500);
}
.form-row {
    position: relative;
}
.form-input,
.form-select,
.dle-input input,
.dle-select select, .form-textarea {
    font-family: var(--font-secondary);
    font-size: 0.9rem;
    width: 100%;
    border-radius: 15px;
    padding-inline: 15px;
    height: 48px;
    border: 1px solid #e5e7eb;
    outline: none;
    background-color: var(--white, #fff);
    box-shadow:
        0 1px 2px rgb(15 23 42 / 4%),
        0 3px 8px rgb(15 23 42 / 7%);
    transition:
        border-color 0.2s ease-in-out,
        box-shadow 0.2s ease-in-out;
}
.form-textarea {
    height: auto;
    padding-block: 15px;
}

.form-select:focus,
.form-select:not([multiple]):not([size]),
.dle-select select:not([multiple]):not([size]) {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 44px;
    background-color: var(--white, #fff);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238d8d8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 16px 16px;
    color: var(--color-title, #111);
    cursor: pointer;
}

.form-select:is([multiple], [size]),
.dle-select select:is([multiple], [size]) {
    appearance: auto;
    -webkit-appearance: auto;
    height: auto;
    padding-right: 15px;
    background-image: none;
}

.form-input:focus,
.form-select:focus,
.dle-input input:focus,
.dle-select select:focus, .form-textarea:focus {
    border-color: var(--primary);
    background-color: var(--white, #fff);
    box-shadow:
        0 1px 2px rgb(15 23 42 / 4%),
        0 3px 10px rgb(15 23 42 / 9%),
        0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent);
}

.form-select:disabled,
.dle-select select:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.form-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
input.form-check-input {
    position: relative;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    inline-size: 20px;
    block-size: 20px;
    margin: 1px 0 0;
    box-sizing: border-box;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #e5e7eb;
    border-radius: 7px;
    outline: none;
    background-color: var(--white, #fff);
    box-shadow:
        0 1px 2px rgb(15 23 42 / 4%),
        0 3px 8px rgb(15 23 42 / 7%);
    cursor: pointer;
    transition:
        border-color 0.2s ease-in-out,
        background-color 0.2s ease-in-out,
        box-shadow 0.2s ease-in-out,
        transform 0.15s ease-in-out;
}
.form-check-input::before {
    content: '';
    position: absolute;
    inset: 3px;
    background-color: var(--white, #fff);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.25' d='m3 8 3.2 3.2L13 4.8'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.25' d='m3 8 3.2 3.2L13 4.8'/%3E%3C/svg%3E") center / contain no-repeat;
    opacity: 0;
    transform: scale(0.45) rotate(-12deg);
    transition:
        opacity 0.16s ease-out,
        transform 0.24s cubic-bezier(0.2, 0.9, 0.3, 1.35);
}
.form-check-input:hover:not(:disabled) {
    border-color: color-mix(in srgb, var(--primary) 45%, #e5e7eb);
}
.form-check-input:active:not(:disabled) {
    transform: scale(0.92);
}
.form-check-input:focus-visible {
    border-color: var(--primary);
    box-shadow:
        0 1px 2px rgb(15 23 42 / 4%),
        0 3px 10px rgb(15 23 42 / 9%),
        0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent);
}
.form-check-input:checked {
    border-color: var(--primary);
    background-color: var(--primary);
}
.form-check-input:checked::before {
    opacity: 1;
    transform: scale(1) rotate(0);
}
.form-check-input:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}
.form-check-label {
    display: block;
    color: var(--color-muted);
    font-family: var(--font-secondary);
    font-size: 0.82rem;
    line-height: 1.55;
    cursor: pointer;
    user-select: none;
}
.form-check-label a {
    color: var(--primary);
}
.form-check-label a:hover {
    text-decoration: underline;
}
@media (prefers-reduced-motion: reduce) {
    .form-check-input,
    .form-check-input::before {
        transition: none;
    }
}
.form-text {
    font-size: 0.8rem;
    color: var(--color-muted);
    margin-top:5px;
}
.form-hidden {
    display:none !important;
    }
/* Password */
.password-view {
    position: relative;
}
.password-view-btn {
    --password-view-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M21.257 10.962c.474.62.474 1.457 0 2.076C19.764 14.987 16.182 19 12 19s-7.764-4.013-9.257-5.962a1.69 1.69 0 0 1 0-2.076C4.236 9.013 7.818 5 12 5s7.764 4.013 9.257 5.962'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/g%3E%3C/svg%3E");
    position: absolute;
    top: 50%;
    right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    outline: none;
    color: var(--muted);
    cursor: pointer;
}
.password-view-btn.is-view {
    --password-view-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M6.873 17.129c-1.845-1.31-3.305-3.014-4.13-4.09a1.69 1.69 0 0 1 0-2.077C4.236 9.013 7.818 5 12 5c1.876 0 3.63.807 5.13 1.874'/%3E%3Cpath d='M14.13 9.887a3 3 0 1 0-4.243 4.242M4 20L20 4M10 18.704A7.1 7.1 0 0 0 12 19c4.182 0 7.764-4.013 9.257-5.962a1.694 1.694 0 0 0-.001-2.078A23 23 0 0 0 19.57 9'/%3E%3C/g%3E%3C/svg%3E");
}
.password-view-btn::before {
    content: '';
    width: 18px;
    height: 18px;
    background-color: var(--gray-800);
    -webkit-mask: var(--password-view-icon) center / contain no-repeat;
    mask: var(--password-view-icon) center / contain no-repeat;
}
.password-view-btn:hover::before {
background-color: var(--gray-900);
}


/* Head */
.head {
    display:flex;
    flex-direction: column;
    gap:12px;
    
}
.head-title {
    display:flex;
    align-items:center;
    gap:15px;
}
.head-title h1 {
    font-size: 2.2rem;
}
.head-description {
    max-width: 500px;
}

/* Notice */

.notice__title {
    display:flex;
    align-items:center;
    gap:10px;
    font-size: 1.1rem;
    font-weight: 600;
}
.notice__title svg {
    color: var(--primary);
}
.notice__text {
    font-family: var(--font-secondary);
    font-size: 0.9rem;
    margin-top:5px;
}
.notice__text a {
    color: var(--primary);
}
.notice__text a:hover {
    text-decoration: underline;
}


/* Verify */
.verify {
    color: var(--primary);
}
