*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --color-buttercup-sky: #FFF2B2;
    --color-dewy-blue: #A8C6E7;
    --color-sunwashed: #FFE08A;
    --color-cloud-puff: #FFF7D6;
    --color-morning-breeze: #7FA8D6;

 --color-sunwashed2: #fffef9;
}



.container{
    background: var(--color-cloud-puff);
    display: flex;
    flex-direction: column;
    /* justify-content: center; */
    align-items: center;
    width: min(700px, 100%);
    padding: 40px clamp(20px, 8vw, 70px);
    margin: 0px auto;
    gap: 50px;
    min-height: 100vh;
       box-shadow:
              5px 6px 5px rgba(0, 0, 0, 0.086);
}

h1{
      font-family: "Rubik Bubbles", system-ui;
       font-size: clamp(28px, 6vw, 40px);
      background: var(--color-dewy-blue);
      color: white;
      padding: 10px 20px;
      border: 2px dashed var(--color-buttercup-sky);
      box-shadow: inset 6px 6px 5px rgba(0, 0, 0, 0.099),
              5px 6px 5px rgba(0, 0, 0, 0.086);
}
.layoutOption{
    /* background-color: plum; */
}
.option{
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px dashed var(--color-buttercup-sky);
    padding: 10px;
    margin: 15px 0px 18px 0px;
   font-size: clamp(20px, 5vw, 30px);
    gap: clamp(10px, 3vw, 20px);
    font-family: "Handlee", cursive;
    font-weight: bold;
    background: var(--color-dewy-blue);
    color: var(--color-cloud-puff);
    box-shadow: inset 6px 6px 5px rgba(0, 0, 0, 0.099),
              5px 6px 5px rgba(0, 0, 0, 0.086);

}
.option:hover{
    rotate: 2deg;
}
.option:active{
     box-shadow:none;

}

.imgIcon{
    width: 45px;
    border: none;
    border-radius: 10px;
}
.image {
    background-color: var(--color-sunwashed);
    border: 2px dashed var(--color-cloud-puff);

    padding: clamp(10px, 3vw, 15px);

    width: fit-content;
    max-width: 90%;

    margin: 0 auto;

    rotate: 5deg;

    box-shadow:
        inset 6px 6px 5px rgba(0, 0, 0, 0.099),
        inset -6px 6px 5px rgba(0, 0, 0, 0.099),
        inset 6px -6px 5px rgba(0, 0, 0, 0.099),
        inset -6px -6px 5px rgba(0, 0, 0, 0.099),
        5px 6px 5px rgba(0, 0, 0, 0.086);
}

.image img {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 230px;
}
.image:hover{
    rotate: -2deg;
}

@media (max-width: 600px) {

    .container {
        padding: 30px 20px;
        gap: 30px;
    }

    .option {
        width: 100%;
    }

}

.loadingState {
    min-height: 100vh;
    width: 100%;
    background: var(--color-cloud-puff);

    display: flex;
    justify-content: center;
    align-items: center;

    overflow: hidden;
}

.loadingContent {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 25px;

    min-height: 400px;
    width: min(500px, 90%);
}

/* ---------------- POLAROID ---------------- */

.loadingPolaroid {
    width: 150px;
    height: 180px;

    padding: 10px 10px 25px;

    background: white;

    box-shadow:
        8px 10px 0 rgba(52, 84, 57, 0.12),
        0 10px 25px rgba(0, 0, 0, 0.08);

    transform: rotate(-5deg);

    animation: floatingPolaroid 2.5s ease-in-out infinite;
}

.loadingPhoto {
    width: 100%;
    height: 135px;

    background:
        linear-gradient(
            135deg,
            var(--color-dewy-blue),
            var(--color-sunwashed)
        );

    position: relative;
    overflow: hidden;
}

/* little shine inside the photo */

.loadingPhoto::after {
    content: "✦";

    position: absolute;

    top: 20px;
    right: 20px;

    font-size: 22px;

    color: white;

    animation: twinkle 1.5s ease-in-out infinite;
}

.loadingPolaroidBottom {
    height: 25px;
}

/* ---------------- TEXT ---------------- */

.loadingText {
    margin: 0;

    font-size: 20px;
    font-weight: 600;

    color: var(--color-morning-breeze);

    text-align: center;

    animation: textFloat 2s ease-in-out infinite;
}

/* ---------------- DOTS ---------------- */

.loadingDots {
    display: flex;
    gap: 8px;
}

.loadingDots span {
    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: var(--color-morning-breeze);

    animation: loadingDot 1.2s ease-in-out infinite;
}

.loadingDots span:nth-child(2) {
    animation-delay: 0.15s;
}

.loadingDots span:nth-child(3) {
    animation-delay: 0.3s;
}

/* ---------------- DECORATIONS ---------------- */

.loadingDecor {
    position: absolute;

    font-size: 28px;

    color: var(--color-morning-breeze);

    pointer-events: none;

    animation: decorFloat 2.5s ease-in-out infinite;
}

.decorOne {
    top: 65px;
    left: 28%;
}

.decorTwo {
    top: 130px;
    right: 25%;

    font-size: 34px;

    animation-delay: 0.5s;
}

.decorThree {
    bottom: 120px;
    left: 23%;

    animation-delay: 0.9s;
}

/* ---------------- ANIMATIONS ---------------- */

@keyframes floatingPolaroid {

    0%,
    100% {
        transform: rotate(-5deg) translateY(0);
    }

    50% {
        transform: rotate(4deg) translateY(-12px);
    }
}

@keyframes textFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-4px);
    }
}

@keyframes loadingDot {

    0%,
    100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    50% {
        transform: translateY(-6px);
        opacity: 1;
    }
}

@keyframes decorFloat {

    0%,
    100% {
        transform: translateY(0) rotate(0deg);
        opacity: 0.6;
    }

    50% {
        transform: translateY(-10px) rotate(8deg);
        opacity: 1;
    }
}

@keyframes twinkle {

    0%,
    100% {
        transform: scale(0.8) rotate(0deg);
        opacity: 0.5;
    }

    50% {
        transform: scale(1.2) rotate(15deg);
        opacity: 1;
    }
}

.hide{
    display: none;
}