/* =========================================
TOOLERKITDIGEST
AI CREATOR TOOLKIT 2026
========================================= */

/* =========================================
GLOBAL
========================================= */

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

html {
scroll-behavior: smooth;
}

body {
width: 100%;
min-height: 100vh;


font-family:
    Arial,
    Helvetica,
    sans-serif;

background: #0b1020;

color: #ffffff;

line-height: 1.6;

overflow-x: hidden;


}

/* =========================================
WEBSITE NAVIGATION
========================================= */

.site-nav {
width: 100%;
padding: 20px;
}

.nav-container {
width: 100%;
max-width: 1100px;


margin: 0 auto;

display: flex;

align-items: center;

justify-content: space-between;

position: relative;


}

/* =========================================
WEBSITE LOGO
========================================= */

.site-logo {
font-size: 1.5rem;


font-weight: 800;

text-decoration: none;

letter-spacing: -0.5px;

}

.logo-white {
color: #ffffff;
}

.logo-green {
color: #22c55e;
}

/* =========================================
DESKTOP NAVIGATION
========================================= */

.nav-links {
display: flex;


align-items: center;

gap: 28px;


}

.nav-links a {
color: #cbd5e1;


text-decoration: none;

font-size: 15px;

font-weight: 600;

transition:
    color 0.3s ease;


}

.nav-links a:hover {
color: #22c55e;
}

/* =========================================
MOBILE MENU BUTTON
========================================= */

.menu-toggle {
display: none;


width: 45px;
height: 45px;

margin: 0;
padding: 0;

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

background: #151b32;

color: #ffffff;

border: 1px solid
    rgba(255, 255, 255, 0.15);

border-radius: 10px;

font-size: 24px;

line-height: 1;

cursor: pointer;


}

/* =========================================
HERO
========================================= */

.hero {
width: 100%;
max-width: 900px;


margin: 0 auto;

padding:
    45px 20px
    40px;

text-align: center;


}

.badge {
display: inline-block;


background: #7c3aed;

color: #ffffff;

padding: 8px 18px;

border-radius: 30px;

font-size: 12px;

font-weight: 700;

letter-spacing: 1px;

margin-bottom: 20px;


}

.hero h1 {
max-width: 800px;

margin:
    0 auto
    15px;

font-size: 2.5rem;

line-height: 1.2;


}

.title-white {
color: #ffffff;
}

.title-green {
color: #22c55e;
}

.hero p {
width: 100%;
max-width: 680px;


margin:
    0 auto
    20px;

color: #cbd5e1;

font-size: 1.05rem;


}

/* =========================================
VAULT IMAGE
========================================= */

.vault-image {
display: block;


width: 300px;
max-width: 90%;

height: auto;

margin:
    30px auto;

border-radius: 18px;

box-shadow:
    0 10px 35px
    rgba(0, 0, 0, 0.35);

}

/* =========================================
MAIN BUTTONS
========================================= */

button {
border: none;


background: #119a26dd;

color: #ffffff;

padding:
    15px 30px;

border-radius: 30px;

font-size: 16px;

font-weight: 600;

cursor: pointer;

transition:
    transform 0.3s ease,
    opacity 0.3s ease,
    background 0.3s ease;


}

button:hover {
transform:
translateY(-3px);


opacity: 0.92;


}

button:disabled {
cursor: not-allowed;


opacity: 0.6;

transform: none;


}

/* =========================================
UNLOCK POPUP OVERLAY
========================================= */

.unlock-popup {
position: fixed;


inset: 0;

z-index: 99999;

display: none;

align-items: center;

justify-content: center;

padding: 20px;

background:
    rgba(0, 0, 0, 0.75);

backdrop-filter:
    blur(5px);


}

.unlock-popup.active {
display: flex;
}

/* =========================================
POPUP CONTENT
========================================= */

.unlock-popup-content {
width: 100%;
max-width: 520px;


position: relative;

padding:
    45px 30px
    30px;

background: #151b32;

border:
    1px solid
    rgba(255, 255, 255, 0.1);

border-radius: 22px;

text-align: center;

box-shadow:
    0 25px 70px
    rgba(0, 0, 0, 0.55);

animation:
    popupFadeIn
    0.25s ease;


}

@keyframes popupFadeIn {

from {
    opacity: 0;

    transform:
        translateY(20px)
        scale(0.97);
}

to {
    opacity: 1;

    transform:
        translateY(0)
        scale(1);
}


}

/* =========================================
CLOSE BUTTON
========================================= */

.popup-close {
position: absolute;


top: 12px;
right: 15px;

width: 38px;
height: 38px;

margin: 0;
padding: 0;

display: flex;

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

background: transparent;

color: #ffffff;

border: none;

border-radius: 50%;

font-size: 30px;

font-weight: 400;

line-height: 1;


}

.popup-close:hover {
background:
rgba(255, 255, 255, 0.08);


transform: none;

opacity: 1;


}

/* =========================================
POPUP CONTENT
========================================= */

.popup-icon {
width: 65px;
height: 65px;

margin:
    0 auto
    20px;

display: flex;

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

background:
    rgba(34, 197, 94, 0.15);

border:
    1px solid
    rgba(34, 197, 94, 0.3);

border-radius: 50%;

font-size: 30px;


}

.unlock-popup-content h2 {
margin-bottom: 15px;


font-size: 1.6rem;

line-height: 1.3;

color: #ffffff;


}

.unlock-popup-content p {
margin-bottom: 15px;


color: #cbd5e1;

font-size: 15px;


}

.popup-note {
color: #94a3b8 !important;


font-size: 14px !important;


}

/* =========================================
POPUP BUTTONS
========================================= */

#continueButton {
width: 100%;


margin-top: 10px;


}

.cancel-button {
width: 100%;

margin-top: 12px;

background: transparent;

color: #cbd5e1;

border:
    1px solid
    rgba(255, 255, 255, 0.15);

}

.cancel-button:hover {
background:
rgba(255, 255, 255, 0.06);


opacity: 1;


}

/* =========================================
STATS
========================================= */

.stats {
width: 100%;
max-width: 900px;


margin: 0 auto;

padding:
    20px
    20px
    60px;

display: flex;

justify-content: center;

align-items: stretch;

gap: 20px;

flex-wrap: wrap;


}

.stats div {
flex:
1 1 180px;

max-width: 250px;

background: #151b32;

padding: 22px;

border:
    1px solid
    rgba(255, 255, 255, 0.06);

border-radius: 15px;

text-align: center;


}

.stats h2 {
color: #a78bfa;


font-size: 1.8rem;

margin-bottom: 5px;


}

.stats p {
color: #cbd5e1;


margin: 0;


}

/* =========================================
MOBILE
========================================= */

@media (max-width: 650px) {


.site-nav {
    padding: 15px;
}


.site-logo {
    font-size: 1.25rem;
}


.menu-toggle {
    display: flex;
}


.nav-links {
    display: none;

    position: absolute;

    top:
        calc(100% + 10px);

    right: 0;

    width: 200px;

    padding: 15px;

    background: #151b32;

    border:
        1px solid
        rgba(255, 255, 255, 0.08);

    border-radius: 15px;

    flex-direction: column;

    align-items: stretch;

    gap: 5px;

    z-index: 9999;

    box-shadow:
        0 15px 35px
        rgba(0, 0, 0, 0.35);
}


.nav-links.active {
    display: flex;
}


.nav-links a {
    padding: 12px;

    text-align: left;

    border-radius: 8px;
}


.nav-links a:hover {
    background: #1e293b;
}


.hero {
    padding:
        40px 18px
        30px;
}


.hero h1 {
    font-size: 1.9rem;
}


.hero p {
    font-size: 1rem;
}


.vault-image {
    width: 250px;
}


#unlockButton {
    width: 90%;
}


.unlock-popup {
    padding: 15px;
}


.unlock-popup-content {
    padding:
        45px 22px
        25px;
}


.unlock-popup-content h2 {
    font-size: 1.35rem;
}


.stats {
    flex-direction: column;

    align-items: center;

    padding:
        20px 15px
        50px;
}


.stats div {
    width: 100%;

    max-width: 320px;
}

}

/* =========================================
SMALL PHONES
========================================= */

@media (max-width: 400px) {


.hero h1 {
    font-size: 1.65rem;
}


.badge {
    font-size: 10px;

    padding:
        7px 14px;
}


.unlock-popup-content {
    padding:
        42px 18px
        22px;
}


}
