.project-setup-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;

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

    padding: 24px;

    background:
        radial-gradient(
            circle at top right,
            rgba(255, 109, 0, 0.14),
            transparent 38%
        ),
        rgba(5, 8, 12, 0.88);

    backdrop-filter: blur(10px);
}


.project-setup-card {
    width: 100%;
    max-width: 560px;
    max-height: 90vh;
    overflow-y: auto;

    padding: 34px;

    background:
        linear-gradient(
            145deg,
            var(--panel),
            var(--surface)
        );

    border: 1px solid var(--border);
    border-radius: 18px;

    box-shadow:
        0 28px 80px rgba(0, 0, 0, 0.45),
        0 0 0 1px rgba(255, 255, 255, 0.02);

    animation:
        projectSetupEnter 0.28s ease-out;
}


.project-setup-card h2 {
    margin: 0 0 8px;

    font-size: 28px;
    font-weight: 650;

    color: var(--text);
}


.project-setup-intro {
    margin: 0 0 28px;

    color: var(--muted);
    font-size: 14px;
    line-height: 1.6;
}


.project-setup-field {
    margin-bottom: 20px;
}


.project-setup-field > label {
    display: block;

    margin-bottom: 8px;

    color: var(--text);

    font-size: 13px;
    font-weight: 600;
}


.project-setup-field input[type="text"] {
    width: 100%;
    box-sizing: border-box;

    padding: 12px 14px;

    background: var(--surface);
    color: var(--text);

    border: 1px solid var(--border);
    border-radius: 9px;

    font: inherit;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}


.project-setup-field input[type="text"]:focus {
    outline: none;

    border-color: var(--accent);

    box-shadow:
        0 0 0 3px
        color-mix(
            in srgb,
            var(--accent) 18%,
            transparent
        );
}


.project-currency-options,
.project-theme-options {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 10px;
}


.project-currency-options label,
.project-theme-options label {
    display: flex;
    align-items: center;

    gap: 9px;

    margin: 0;
    padding: 12px 14px;

    background: var(--surface);

    border: 1px solid var(--border);
    border-radius: 10px;

    cursor: pointer;

    font-size: 13px;
    font-weight: 500;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        transform 0.15s ease;
}


.project-currency-options label:hover,
.project-theme-options label:hover {
    border-color: var(--accent);

    transform: translateY(-1px);
}


.project-currency-options input,
.project-theme-options input {
    accent-color: var(--accent);
}


.project-setup-card #saveProjectSetup {
    width: 100%;

    margin-top: 8px;
    padding: 13px 18px;

    border: none;
    border-radius: 10px;

    background: var(--accent);
    color: #fff;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition:
        transform 0.15s ease,
        filter 0.2s ease;
}


.project-setup-card #saveProjectSetup:hover {
    transform: translateY(-1px);

    filter: brightness(1.08);
}


.project-setup-card #saveProjectSetup:active {
    transform: translateY(0);
}


@keyframes projectSetupEnter {

    from {
        opacity: 0;
        transform: translateY(12px) scale(0.985);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

}


@media (max-width: 600px) {

    .project-setup-overlay {
        padding: 14px;
    }

    .project-setup-card {
        padding: 24px;
        border-radius: 14px;
    }

    .project-currency-options,
    .project-theme-options {
        grid-template-columns: 1fr;
    }

}

.project-setup-logo {
    text-align: center;
    margin-bottom: 18px;
}

.project-setup-logo img {
    display: inline-block;
    width: 115px;
    height: auto;
}
