#app-root {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.main-content {
    flex: 1;
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 1.5rem 1rem 3rem;
}

@media (max-width: 767px) {
    .main-content {
        padding: 1rem 0.75rem 2rem;
    }
}

@media (min-width: 1024px) {
    .main-content {
        padding: 2rem 2rem 4rem;
    }
}

.page-section {
    animation: fade-in 0.2s ease-out;
}

@keyframes fade-in {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}
