@import "../lib/tabler-icons/tabler-icons.css";
@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&display=swap');
@keyframes zoom-in-zoom-out {
    0% {
        transform: scale(1, 1);
    }

    50% {
        transform: scale(1.05, 1.05);
    }

    100% {
        transform: scale(1, 1);
    }
}
html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

html, body {
    font-family: "Nunito Sans", sans-serif;
}

    body::-webkit-scrollbar {
        height: 5px;
        width: 5px;
    }

    body::-webkit-scrollbar-thumb {
        background-image: linear-gradient(-45deg, #189599, #007203);
        border-radius: 50px;
    }

    body::-webkit-scrollbar-track {
        background-color: #fafafa;
    }

.zheader {
    margin-top: 100px;
}

.zcard {
    margin: auto;
    max-width: 600px;
}

#sidebar-wrapper {
    min-height: 100vh;
    margin-left: -15rem;
    transition: margin 0.25s ease-out;
}

    #sidebar-wrapper .sidebar-heading {
        padding: 0.875rem 1.25rem;
        font-size: 1.2rem;
    }

    #sidebar-wrapper .list-group {
        width: 15rem;
    }

#page-content-wrapper {
    min-width: 100vw;
}

body.sb-sidenav-toggled #wrapper #sidebar-wrapper {
    margin-left: 0;
}

@media (min-width: 768px) {
    #sidebar-wrapper {
        margin-left: 0;
    }

    #page-content-wrapper {
        min-width: 0;
        width: 100%;
    }

    body.sb-sidenav-toggled #wrapper #sidebar-wrapper {
        margin-left: -15rem;
    }
}

* {
    --switch-height: 20px;
    --switch-padding: 8px;
    --switch-width: calc((var(--switch-height) * 2) - var(--switch-padding));
    --slider-height: calc(var(--switch-height) - var(--switch-padding));
    --slider-on: calc(var(--switch-height) - var(--switch-padding));
}

.switch {
    position: relative;
    display: inline-block;
    width: var(--switch-width);
    height: var(--switch-height);
}

    .switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

    .slider:before {
        content: "";
        position: absolute;
        height: var(--slider-height);
        width: var(--slider-height);
        left: calc(var(--switch-padding) / 2);
        bottom: calc(var(--switch-padding) / 2);
        background-color: white;
        -webkit-transition: .4s;
        transition: .4s;
    }

input:checked + .slider {
    background-color: #2196F3;
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
    transform: translateX(var(--slider-on));
}

.slider.round {
    border-radius: var(--slider-height);
}

    .slider.round:before {
        border-radius: 50%;
    }

.border-dashed {
    border-style: dashed;
    border-color: #d5d5d5;
}

.border-t {
    border-top-width: 1px;
    border-bottom: 0;
    border-right: 0;
    border-left: 0;
}

.text-divider-bg {
    max-width: 700px;
    background: linear-gradient(to right, #952222, transparent);
    height: 2px;
    position: relative;
}

.text-divider-bg span {
     background: #fff;
     padding: 0 10px;
     position: relative;
     top: -10px;
}

/* Style 9
   ----------------------------- */
.nine h5 {
    text-align: center;
    text-transform: uppercase;
    color: #222;
    letter-spacing: 1px;
    font-family: "Playfair Display", serif;
    font-weight: 400;
}
    .nine h5 span {
        margin-top: 5px;
        text-transform: none;
        font-size:smaller;
        word-spacing:5px;
        letter-spacing:2px;
        font-family: "Nunito Sans", sans-serif;
        display: grid;
        grid-template-columns: 1fr max-content 1fr;
        grid-template-rows: 27px 0;
        grid-gap: 20px;
        align-items: center;
    }

        .nine h5 span:after {
            content: " ";
            display: block;
            border-bottom: 0px solid #ccc;
            border-top: 0px solid #ccc;
            height: 1px;
            background-color: #ffffff00;
            background-image: linear-gradient(to left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0), rgba(53 101 0 / .75));
        }
        .nine h5 span:before {
            content: " ";
            display: block;
            border-bottom: 0px solid #ccc;
            border-top: 0px solid #ccc;
            height: 1px;
            background-color: #ffffff00;
            background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0), rgba(53 101 0 / .75));
        }
hr {
    clear: both;
    border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(53 101 0 / .75), rgba(0, 0, 0, 0));
    background-color: #ffffff00;
}
.btn-animation {
    animation: zoom-in-zoom-out 2s ease-out infinite;
}
.progess-bar {
    width: 100%;
    border: 0;
    height: 3px;
    background-color: #f5f5f5 !important;
    position: absolute;
    right: 0;
    top: 0;
}

.progess-bar::-webkit-progress-value {
        background-color: red!important;
}
.btn-gradient-restart {
    background: linear-gradient(0deg, rgba(34,193,195,1) 0%, rgba(253,187,45,1) 100%);
    color:#fff;
    font-size:18px;
}
ol{
    list-style:none;
}
ol li{
    padding:10px 20px;
}
ol li.answer-item {
    font-size: 1.1em;
    margin: 0.3em 0;
    text-align: left;
    outline: none;
    background:#fff;
    border: 1px solid #c0bfd2;
    border-radius: 0.3em;
}
.col-md-12 ol li.has-image{
    width:49%!important;
    float:left;
    margin: 3px;
}

.col-md-4 ol li.has-image {
    width: 100% !important;
}
    ol li.has-image p {
        border-bottom: 1px dashed #cecece;
        padding-bottom: 5px;
    }

li.selected {
    color: #00763f;
    background: #ffbf00 !important;
    border-color: #b08400;
}
.selected {
    color: #fff;
    background: #ff9e00 !important;
}
.col-md-12 .questionImage{
    width:50%!important;
}
.col-md-4 .questionImage{
    width:100%!important;
}
.mh-500{
    max-height:500px;
}
/* button effect */
.button--piyo {
    --main_color: #f4cf47;
    --sub_color1: #f4e19c;
    --sub_color2: #ff8108;
    --base_color: #000;
    --border_radius1: 60px 60px 40px 40px / 48px 48px 30px 30px;
    --border_radius2: 70px 70px 40px 40px / 48px 48px 30px 30px;
    --border_radius3: 40px 40px 40px 40px / 48px 48px 30px 30px;
}

.button--hoo {
    --main_color: #4993ff;
    --sub_color1: #385082;
    --sub_color2: #fff58f;
    --sub_color3: #fff;
    --base_color: #FFF;
    --border_radius1: 50px 50px 50px 50px / 40px 40px 40px 40px;
    --border_radius2: 60px 60px 50px 50px / 40px 40px 40px 40px;
    --border_radius3: 40px 40px 50px 50px / 60px 60px 40px 40px;
    --border_radius3: 50px 50px 45px 45px / 40px 40px 60px 60px;
}

.button--pen {
    --main_color: #4d4d4d;
    --sub_color1: #FFF;
    --sub_color2: #e9b800;
    --base_color: #e9b800;
    --border_radius1: 60px 60px 40px 40px / 48px 48px 30px 30px;
    --border_radius2: 70px 70px 40px 40px / 48px 48px 30px 30px;
    --border_radius3: 40px 40px 40px 40px / 48px 48px 30px 30px;
}

.button {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 280px;
    height: 60px;
    margin-top:50px;
    box-sizing: border-box;
    text-decoration: none;
    border: solid 3px #000;
    border-radius: 40px;
    background: var(--main_color);
    font-family: 'Nunito sans', cursive;
}

    .button::before {
        content: '';
        position: absolute;
        z-index: 2;
        top: 0;
        right: 20px;
        bottom: 0;
        margin: auto 0;
        width: 24px;
        height: 24px;
        background: var(--base_color);
        transition: all ease .2s;
    }

.button__wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    border-radius: 40px;
    overflow: hidden;
}

    .button__wrapper::before,
    .button__wrapper::after {
        transition: all .5s ease;
    }

.characterBox {
    position: absolute;
    top: -54px;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 180px;
    height: 56px;
}

.button__text {
    position: relative;
    z-index: 3;
    font-size: 22px;
    letter-spacing: 4px;
    color: var(--base_color);
    transition: all .3s ease;
}

.character {
    position: relative;
    width: 56px;
    height: 36px;
    box-sizing: border-box;
    border: solid 3px #000;
    background: var(--main_color);
    border-radius: var(--border_radius1);
    animation: sleep 1s ease infinite alternate;
}

    .character::before {
        content: '';
        position: absolute;
        top: -12px;
        left: 22px;
        width: 12px;
        height: 12px;
        background: #000;
        clip-path: path('M10.23,3.32c-3.54,.63-5.72,2.51-7.02,4.23-.33-1.58-.34-3.54,.93-5.12,.52-.65,.41-1.59-.24-2.11C3.24-.19,2.29-.08,1.77,.57c-3.82,4.77-.31,11.11-.13,11.42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0-.01-.02,2.49,.04,2.52,0,.1-.14,1.54-4.82,6.59-5.71,.82-.14,1.37-.92,1.22-1.74s-.94-1.36-1.75-1.21Z');
    }

.character__face {
    position: absolute;
    z-index: 2;
    top: 15px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 12px;
    height: 6px;
    background: var(--sub_color2);
    border-radius: 50% 50% 50% 50% / 78% 78% 22% 22%;
    transition: .2s;
}

    .character__face::before,
    .character__face::after {
        content: '';
        position: absolute;
        top: -4px;
        width: 8px;
        height: 2px;
        border-radius: 4px;
        background: #000;
    }

    .character__face::before {
        left: -5px;
    }

    .character__face::after {
        right: -5px;
    }

.button--hoo .character__face::before,
.button--hoo .character__face::after {
    background: #fff;
}

.button--hoo .charactor__face2 {
    position: absolute;
    z-index: 1;
    top: 8px;
    left: 0;
    right: 0;
    margin: auto;
    width: 14px;
    height: 10px;
    background: #385082;
    animation: face_hoo 1s ease infinite alternate;
}

    .button--hoo .charactor__face2::before,
    .button--hoo .charactor__face2::after {
        content: '';
        position: absolute;
        top: -1px;
        width: 20px;
        height: 10px;
        box-sizing: border-box;
        border-radius: 50%;
        border: solid 3px #385082;
        background: #000;
    }

    .button--hoo .charactor__face2::before {
        left: -12px;
    }

    .button--hoo .charactor__face2::after {
        right: -12px;
    }

.button--hoo .charactor__body {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: solid 2px #385082;
    border-left: solid 7px transparent;
    border-right: solid 7px transparent;
    border-bottom: solid 0 transparent;
    animation: body_hoo 1s ease infinite alternate;
}

    .button--hoo .charactor__body::before,
    .button--hoo .charactor__body::after {
        content: '';
        position: absolute;
        top: -4px;
        width: 0;
        height: 0;
        border-top: solid 2px #385082;
        border-left: solid 7px transparent;
        border-right: solid 7px transparent;
        border-bottom: solid 0 transparent;
    }

    .button--hoo .charactor__body::before {
        left: -17px;
    }

    .button--hoo .charactor__body::after {
        right: -17px;
    }

.button--pen .charactor__face2 {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    animation: face_pen 1s ease infinite alternate;
}

    .button--pen .charactor__face2::before,
    .button--pen .charactor__face2::after {
        content: '';
        position: absolute;
        top: -8px;
        width: 17px;
        height: 10px;
        border-radius: 50%;
        background: #fff;
    }

    .button--pen .charactor__face2::before {
        left: -4px;
    }

    .button--pen .charactor__face2::after {
        right: -4px;
    }

.button--piyo::before {
    clip-path: path('M24,12.02c0-1.09-.75-1.71-.81-1.77L11.17,.45c-.91-.74-2.21-.56-2.91,.42-.69,.97-.52,2.37,.39,3.11l7.12,5.81-13.7-.02h0C.93,9.77,0,10.76,0,11.99c0,1.23,.93,2.22,2.07,2.22l13.7,.02-7.13,5.78c-.91,.74-1.09,2.13-.4,3.11,.41,.58,1.03,.88,1.65,.88,.44,0,.88-.15,1.25-.45l12.04-9.76c.07-.06,.82-.67,.82-1.77Z');
}

.button--hoo::before {
    clip-path: path('M21.93,9.8h-3.33S11.5,.79,11.5,.79c-.74-.94-2.05-1.05-2.92-.26-.88,.79-.99,2.19-.25,3.13l4.84,6.13-11.09-.02C.95,9.73,0,10.76,0,11.99c0,1.23,.93,2.22,2.07,2.22l11.09,.02-4.86,6.12c-.74,.93-.63,2.33,.24,3.13,.39,.35,.87,.53,1.34,.53,.59,0,1.17-.27,1.58-.78l7.13-8.99h3.32s0,0,0,0c1.14,0,2.07-.99,2.07-2.22,0-1.23-.93-2.22-2.07-2.22Z');
}

.button--pen::before {
    clip-path: path('M23.36,10.63L6.18,.13c-.93-.57-1.85,.81-1.39,2.06l1.44,3.91c.3,.81,.01,1.81-.6,2.1L.72,10.58c-.96,.47-.96,2.37,0,2.83l4.91,2.38c.62,.3,.9,1.29,.6,2.1l-1.44,3.91c-.46,1.26,.46,2.63,1.39,2.06L23.36,13.37c.86-.53,.86-2.22,0-2.75Z');
}

.button--piyo .button__wrapper::before,
.button--piyo .button__wrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 130px;
    height: 38px;
    background: var(--sub_color1);
    clip-path: path('M13.77,37.35L.25,16.6c-.87-1.33,.69-2.91,2-2.02l12.67,8.59c.81,.55,1.91,.14,2.18-.81l2.62-9.33c.39-1.4,2.34-1.42,2.76-.02l3.6,11.99c.33,1.11,1.74,1.4,2.47,.52L49.38,.52c.87-1.04,2.53-.42,2.53,.95V23.7c0,1.13,1.2,1.83,2.16,1.26l12.75-7.51c.85-.5,1.94,0,2.13,.98l1.5,7.6c.2,1.03,1.37,1.51,2.22,.92l17.74-12.3c1.09-.75,2.52,.25,2.21,1.55l-2.44,10.2c-.26,1.09,.74,2.06,1.8,1.75l30.8-9.04c1.37-.4,2.42,1.26,1.49,2.36l-9.07,10.66c-.83,.98-.1,2.49,1.17,2.42l12.12-.68c1.6-.09,2.12,2.15,.65,2.8l-2.73,1.21c-.18,.08-.38,.12-.58,.12H14.97c-.48,0-.93-.25-1.2-.65Z');
}

.button--piyo .button__wrapper::before {
    left: 0;
}

.button--piyo .button__wrapper::after {
    right: 0;
    transform: rotateY(180deg);
}

.button--hoo .button__wrapper::before,
.button--hoo .button__wrapper::after {
    content: '';
    position: absolute;
    width: 80px;
    height: 100px;
    background: var(--sub_color1);
    clip-path: path('M75.96,41.27l-42.76,11.17V0H0V100H33.2v-28.75l45.07-23.97c3.38-1.8,1.39-6.98-2.31-6.01Z');
}

.button--hoo .button__wrapper::before {
    left: 6px;
    bottom: 0;
}

.button--hoo .button__wrapper::after {
    right: 8px;
    bottom: -10px;
    transform: rotateY(180deg);
}

.button--pen .button__wrapper::before,
.button--pen .button__wrapper::after {
    content: '';
    position: absolute;
    width: 110px;
    height: 60px;
    background: var(--sub_color1);
    clip-path: path('M9.12,14.14L43.15,.5c1.61-.86,3.57-.59,4.9,.68l19.55,14.31c.42,.4,.76,.89,.99,1.42l3.45,13.09c.89,2.06,3.18,3.09,5.28,2.37l11.76-4.86c1.56-.54,3.29-.11,4.43,1.1l11.93,12.39c.48,.51,.84,1.12,1.03,1.8l3.35,11.62c.8,2.79-1.25,5.58-4.1,5.58H4.27c-2.71,0-4.73-2.54-4.18-5.24L6.92,17.11c.26-1.28,1.07-2.37,2.2-2.97Z');
}

.button--pen .button__wrapper::before {
    left: -16px;
    bottom: -10px;
}

.button--pen .button__wrapper::after {
    right: -8px;
    bottom: -20px;
    transform: rotateY(180deg);
}

.button:hover .button__wrapper::before {
    transform: translateX(-12px);
}

.button:hover .button__wrapper::after {
    transform: rotateY(180deg) translateX(-12px);
}

.button:hover .button__text {
    letter-spacing: 6px;
}

.button:hover::before {
    right: 14px;
}

.button:hover .wakeup {
    animation: wakeup .2s ease;
    animation-fill-mode: forwards;
}

    .button:hover .wakeup .character__face {
        top: 20px;
    }

        .button:hover .wakeup .character__face::before,
        .button:hover .wakeup .character__face::after {
            animation: eye 5s linear infinite;
        }

    .button:hover .wakeup:nth-child(2) .character__face::before,
    .button:hover .wakeup:nth-child(2) .character__face::after {
        animation: eye_2 5s linear infinite;
    }

.button--hoo:hover .wakeup .charactor__face2::before,
.button--hoo:hover .wakeup .charactor__face2::after {
    height: 20px;
}

.button--hoo:hover .wakeup .charactor__body {
    animation: body_hoo_wakeup .2s ease;
    animation-fill-mode: forwards;
    border-top: solid 6px #385082;
}

    .button--hoo:hover .wakeup .charactor__body::before,
    .button--hoo:hover .wakeup .charactor__body::after {
        top: -12px;
        border-top: solid 5px #385082;
    }

.button--pen:hover .wakeup .charactor__face2 {
    animation: face_pen_wakeup .2s ease;
    animation-fill-mode: forwards;
}

    .button--pen:hover .wakeup .charactor__face2::before,
    .button--pen:hover .wakeup .charactor__face2::after {
        top: -12px;
        height: 18px;
    }

@keyframes sleep {
    0% {
        height: 36px;
        border-radius: var(--border_radius1);
    }

    100% {
        height: 32px;
        border-radius: var(--border_radius2);
    }
}

@keyframes wakeup {
    0% {
        height: 32px;
        border-radius: var(--border_radius2);
    }

    100% {
        height: 56px;
        border-radius: var(--border_radius3);
    }
}

@keyframes eye {
    0% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    30% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    32% {
        top: -4px;
        width: 8px;
        height: 2px;
    }

    34% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    70% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    72% {
        top: -4px;
        width: 8px;
        height: 2px;
    }

    74% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    76% {
        top: -4px;
        width: 8px;
        height: 2px;
    }

    78% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    100% {
        top: -6px;
        width: 6px;
        height: 6px;
    }
}

@keyframes eye_2 {
    0% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    10% {
        transform: translateX(0);
    }

    12% {
        transform: translateX(3px);
    }

    20% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    22% {
        top: -4px;
        width: 8px;
        height: 2px;
    }

    24% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    25% {
        transform: translateX(3px);
    }

    27% {
        transform: translateX(0);
    }

    74% {
        top: -6px;
        width: 6px;
        height: 6px;
        transform: translateX(0);
    }

    76% {
        top: -4px;
        width: 8px;
        height: 2px;
        transform: translateX(3px);
    }

    78% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    80% {
        top: -4px;
        width: 8px;
        height: 2px;
    }

    82% {
        top: -6px;
        width: 6px;
        height: 6px;
    }

    85% {
        transform: translateX(3px);
    }

    87% {
        transform: translateX(0);
    }

    100% {
        top: -6px;
        width: 6px;
        height: 6px;
        transform: translateX(0);
    }
}

@keyframes body_hoo {
    0% {
        bottom: 2px;
    }

    100% {
        bottom: 0;
    }
}

@keyframes body_hoo_wakeup {
    0% {
        bottom: 2px;
    }

    100% {
        bottom: 6px;
    }
}

@keyframes face_pen {
    0% {
        height: 14px;
    }

    100% {
        height: 10px;
    }
}

@keyframes face_pen_wakeup {
    0% {
        height: 14px;
    }

    100% {
        height: 28px;
    }
}
/* 本体と関係ないスタイル */
.container {
    width: 100%;
    height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #FFF;
}

.button:not(:last-child) {
    margin-bottom: 80px;
}

/* CSS */
.button-82-pushable {
    position: relative;
    border: none;
    background: transparent;
    padding: 0;
    cursor: pointer;
    outline-offset: 4px;
    transition: filter 250ms;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
}

.button-82-shadow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    background: hsl(0deg 0% 0% / 0.25);
    will-change: transform;
    transform: translateY(2px);
    transition: transform 600ms cubic-bezier(.3, .7, .4, 1);
}

.button-82-edge {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    background: linear-gradient( to left, hsl(340deg 100% 16%) 0%, hsl(340deg 100% 32%) 8%, hsl(340deg 100% 32%) 92%, hsl(340deg 100% 16%) 100% );
}

.button-82-front {
    display: block;
    position: relative;
    padding: 12px 27px;
    border-radius: 12px;
    font-size: 1.1rem;
    color: white;
    background: hsl(345deg 100% 47%);
    will-change: transform;
    transform: translateY(-4px);
    transition: transform 600ms cubic-bezier(.3, .7, .4, 1);
}

@media (min-width: 768px) {
    .button-82-front {
        font-size: 1rem;
        padding: 10px 35px;
    }
}

.button-82-pushable:hover {
    filter: brightness(110%);
    -webkit-filter: brightness(110%);
}

    .button-82-pushable:hover .button-82-front {
        transform: translateY(-6px);
        transition: transform 250ms cubic-bezier(.3, .7, .4, 1.5);
    }

.button-82-pushable:active .button-82-front {
    transform: translateY(-2px);
    transition: transform 34ms;
}

.button-82-pushable:hover .button-82-shadow {
    transform: translateY(4px);
    transition: transform 250ms cubic-bezier(.3, .7, .4, 1.5);
}

.button-82-pushable:active .button-82-shadow {
    transform: translateY(1px);
    transition: transform 34ms;
}

.button-82-pushable:focus:not(:focus-visible) {
    outline: none;
}

.welcome-form:after, .welcome-form:before {
    position: absolute;
    background-repeat: no-repeat;
    --tw-content: "";
    content: var(--tw-content);
}
.welcome-form:before {
    top: 20%;
    left: -10px;
    height: 491px;
    width: 373px;
    background-image: url(/images/bg_numbers_sm.svg);
    background-size: 100%;
    background-position: top;
}
.welcome-form:after {
    bottom: 0;
    left: -270px;
    height: 319px;
    width: 765px;
    background-image: url(/images/dashed_line.svg);
    background-size: 95%;
}
.z-10{
    z-index:10;
}

/* Hover trigger */
.hover-actions-trigger.btn-reveal-trigger .hover-actions {
    right: 0;
}
.hover-actions {
    display: none;
    position: absolute;
}
.hover-actions-trigger {
    position: relative;
}

    .hover-actions-trigger .inbox-link {
        color: inherit;
        text-decoration: none;
    }

    .hover-actions-trigger:hover .hover-actions, .hover-actions-trigger:focus .hover-actions {
        z-index: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-animation: fade 0.15s ease-in-out;
        animation: fade 0.15s ease-in-out;
    }

        .hover-actions-trigger:hover .hover-actions.btn, .hover-actions-trigger:hover .mapbox-container .mapbox-control-btn .hover-actions.zoomIn, .mapbox-container .mapbox-control-btn .hover-actions-trigger:hover .hover-actions.zoomIn,
        .hover-actions-trigger:hover .mapbox-container .mapbox-control-btn .hover-actions.zoomOut,
        .mapbox-container .mapbox-control-btn .hover-actions-trigger:hover .hover-actions.zoomOut,
        .hover-actions-trigger:hover .mapbox-container .mapbox-control-btn .hover-actions.fullScreen,
        .mapbox-container .mapbox-control-btn .hover-actions-trigger:hover .hover-actions.fullScreen, .hover-actions-trigger:hover [data-list] .hover-actions.page, [data-list] .hover-actions-trigger:hover .hover-actions.page,
        .hover-actions-trigger:hover .table-list .hover-actions.page,
        .table-list .hover-actions-trigger:hover .hover-actions.page, .hover-actions-trigger:hover .tox .hover-actions.tox-button, .tox .hover-actions-trigger:hover .hover-actions.tox-button, .hover-actions-trigger:hover .tox .hover-actions.tox-button-secondary, .tox .hover-actions-trigger:hover .hover-actions.tox-button-secondary, .hover-actions-trigger:hover .tox .tox-dialog__footer .hover-actions.tox-button--secondary, .tox .tox-dialog__footer .hover-actions-trigger:hover .hover-actions.tox-button--secondary, .hover-actions-trigger:hover .google-map-control-btn .hover-actions.zoomIn, .google-map-control-btn .hover-actions-trigger:hover .hover-actions.zoomIn,
        .hover-actions-trigger:hover .google-map-control-btn .hover-actions.zoomOut,
        .google-map-control-btn .hover-actions-trigger:hover .hover-actions.zoomOut {
            display: inline-block;
        }

    .hover-actions-trigger:hover .hover-hide, .hover-actions-trigger:focus .hover-hide {
        opacity: 0;
    }

    .hover-actions-trigger:hover .hover-xs-hide, .hover-actions-trigger:focus .hover-xs-hide {
        opacity: 0;
    }

    .hover-actions-trigger:hover .hover-xs-show, .hover-actions-trigger:focus .hover-xs-show {
        opacity: 1;
    }
}

/* Admin Sidebar Responsive Styles */
#adminSidebar {
    width: 265px;
    background: #ffffff;
    border-right: 1px solid rgba(0,0,0,.08);
    padding: 16px 12px;
    position: sticky;
    top: 0;
    height: 100vh;
    transition: width 0.25s ease, padding 0.25s ease, transform 0.25s ease;
    z-index: 1050;
}
#adminSidebar.collapsed {
    width: 84px;
    padding: 16px 10px;
    transform: none;
}
#adminSidebar.collapsed .sidebar-text {
    display: none;
}

#adminSidebar.collapsed .sidebar-link {
    justify-content: center;
    padding-left: 10px;
    padding-right: 10px;
}

#adminSidebar.collapsed .sidebar-user-text {
    display: none;
}
@media (max-width: 768px) {
    #adminSidebar {
        position: fixed;
        left: 0;
        top: 0;
        height: 100vh;
        box-shadow: 2px 0 8px rgba(0,0,0,0.08);
        background: #fff;
        transform: translateX(0);
    }
    #adminSidebar.collapsed {
        /* Thu gọn (không dịch khỏi màn hình) để vẫn toggle mở lại được */
        transform: none;
        width: 84px;
        padding: 16px 10px;
    }
    .admin-main {
        padding-left: 0 !important;
    }
}