* {
    box-sizing: border-box;

    margin: 0;

    padding: 0;
}


body {

    min-height: 100vh;

    font-family: "Inter", "Segoe UI", Arial, sans-serif;

    background: #0f1117;

    color: #e6e6e6;

    line-height: 1.6;

}



/* Header */

header {

    max-width: 900px;

    margin: 50px auto 40px;

    padding: 0 20px;

    text-align: center;

}


.header-content h1 {

    font-size: 3rem;

    color: white;

    margin: 25px 0 15px;

}


.header-content p {

    color: #a9adb8;

    font-size: 1.1rem;

}



/* Back button */

.back-button {

    display: inline-block;

    padding: 10px 18px;

    background: #171a22;

    border: 1px solid #272c38;

    border-radius: 10px;

    color: white;

    text-decoration: none;

    font-weight: 600;

    transition:

        background 0.2s ease,

        border-color 0.2s ease,

        transform 0.2s ease;

}


.back-button:hover {

    background: #222735;

    border-color: #3d7cff;

    transform: translateY(-2px);

}



/* Divider */

hr {

    max-width: 1100px;

    height: 1px;

    margin: 30px auto;

    border: none;

    background: #292d38;

}



/* Main */

.project-actions {

    max-width: 900px;

    margin: 40px auto;

    padding: 0 20px;

}


.project-card {

    background: #171a22;

    border: 1px solid #272c38;

    border-radius: 18px;

    padding: 30px;

    text-align: center;

    transition:

        transform 0.25s ease,

        border-color 0.25s ease,

        box-shadow 0.25s ease;

}


.project-card:hover {

    transform: translateY(-5px);

    border-color: #3d7cff;

    box-shadow:

        0 15px 35px rgba(0,0,0,0.35);

}


.project-card h2 {

    color: white;

    margin-bottom: 15px;

}


.project-card p {

    color: #a9adb8;

    margin-bottom: 15px;

}


.project-card h3 {

    color: #6ea8fe;

    margin-bottom: 15px;

}



/* Locked project */

.project-card.locked {

    border-color: #7f1d1d;

}


.project-card.locked:hover {

    border-color: #ef4444;

}



/* Buttons */

.button {

    display: inline-block;

    margin: 10px 5px 0;

    padding: 12px 20px;

    background: #2563eb;

    border-radius: 10px;

    color: white;

    text-decoration: none;

    font-weight: 600;

    transition:

        background 0.2s ease,

        transform 0.2s ease;

}


.button:hover {

    background: #1d4ed8;

    transform: translateY(-2px);

}



.button.buy {

    background: #16a34a;

}


.button.buy:hover {

    background: #15803d;

}



/* Documentation */

.documentation-card {

    max-width: 900px;

    margin: 40px auto;

    padding: 30px 35px;

    background: #171a22;

    border: 1px solid #272c38;

    border-radius: 18px;

}


.documentation-card h2 {

    color: white;

    margin-bottom: 25px;

}



/* Markdown styling */

.markdown-content {

    color: #c7cad1;

}


.markdown-content h1,
.markdown-content h2,
.markdown-content h3 {

    color: white;

    margin-top: 25px;

    margin-bottom: 10px;

}


.markdown-content p {

    margin-bottom: 15px;

}


.markdown-content ul {

    margin-left: 25px;

    margin-bottom: 15px;

}


.markdown-content code {

    background: #0f1117;

    padding: 3px 7px;

    border-radius: 6px;

    color: #93c5fd;

}



.markdown-content pre {

    background: #0f1117;

    padding: 20px;

    border-radius: 12px;

    overflow-x: auto;

}



/* Footer */

footer {

    text-align: center;

    color: #8b8f99;

    padding: 30px 20px;

}



/* domweb reveal animation */

.page-load,
.project-card,
.documentation-card {

    opacity: 0;

    transform: translateY(40px) scale(0.98);

    transition:

        opacity 0.6s ease,

        transform 0.6s ease;

}



.page-load.show,
.project-card.show,
.documentation-card.show {

    opacity: 1;

    transform: translateY(0) scale(1);

}



/* Mobile */

@media(max-width:700px) {


    .header-content h1 {

        font-size: 2.2rem;

    }


    .project-card,
    .documentation-card {

        margin-left: 20px;

        margin-right: 20px;

        padding: 22px;

    }


    .button {

        display: block;

        width: 100%;

        margin: 10px 0;

    }

}

.showcase-button {
    margin-top: 10px;
}

.showcase-unavailable {
    margin-top: 10px;
    color: #8b8f99;
    font-style: italic;
}

.support-message {

    margin-top: 30px;

    padding: 18px 20px;

    background: #10131a;

    border: 1px solid #272c38;

    border-left: 3px solid #5865f2;

    border-radius: 12px;

    text-align: left;

}


.support-message h4 {

    color: white;

    font-size: 1rem;

    margin-bottom: 8px;

}


.support-message p {

    color: #a9adb8;

    font-size: .95rem;

    margin: 0;

    line-height: 1.6;

}