:root {
    --pastel-pink: #ffcad4;
    --soft-rose: #f4acb7;
    --dark-rose: #9d8189;
    --bg-color: #fff5f7;
    --white: #ffffff;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    padding: 0;
    font-family: 'Segoe UI', sans-serif;
    background-color: var(--bg-color);
    color: var(--dark-rose);
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    overflow: hidden;
}

#step-0 .btn {
    width: 45%;
    display: inline-block;
    margin: 5px;
}

#app {
    background: var(--white);
    width: 90%;
    max-width: 400px;
    padding: 30px;
    border-radius: 25px;
    box-shadow: 0 15px 35px rgba(255, 182, 193, 0.4);
    text-align: center;
    position: relative;
    z-index: 10;
}

h1 { color: var(--soft-rose); font-size: 1.6rem; margin-bottom: 1rem; }
p { line-height: 1.5; font-size: 1rem; }

.btn {
    background-color: var(--pastel-pink);
    border: none;
    padding: 12px 20px;
    border-radius: 50px;
    color: var(--dark-rose);
    font-weight: bold;
    font-size: 0.95rem;
    cursor: pointer;
    transition: transform 0.2s, background-color 0.3s;
    margin: 8px 0;
    width: 100%;
    display: block;
}

.btn:hover { background-color: var(--soft-rose); color: white; transform: scale(1.02); }

.small-btn { width: auto; font-size: 0.8rem; padding: 8px 15px; margin: 20px auto 0; }

.screen { display: none; animation: fadeIn 0.6s ease; }
.screen.active { display: block; }

@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* Подпись */
.divider { border: 0; height: 1px; background: #eee; margin: 20px 0; }
.signature { font-family: 'Georgia', serif; font-style: italic; color: #b56576; font-size: 0.9rem; margin-top: 10px; }

/* АДАПТАЦИЯ ДЛЯ ТЕЛЕФОНОВ */
@media (max-width: 480px) {
    #app { padding: 20px; width: 95%; }
    h1 { font-size: 1.4rem; }
    p { font-size: 0.9rem; }
    .btn { padding: 10px 15px; font-size: 0.9rem; }
}

/* Лепестки */
.petal { position: absolute; background-color: var(--pastel-pink); border-radius: 150% 0 150% 0; opacity: 0.5; z-index: 1; animation: fall linear infinite; }
@keyframes fall { to { transform: translateY(100vh) rotate(360deg); } }