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

/* Root variables for easy customization */
:root {
    --primary-color: #2c3e50;
    --accent-color: #3498db;
    --bg-color: #f8f9fa;
    --text-color: #333;
    --header-bg: #fff;
    --footer-bg: #2c3e50;
    --footer-text: #ecf0f1;
    --max-width: 1200px;
    --spacing: 2rem;
}

/* Base styles */
html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
    line-height: 1.6;
    color: var(--text-color);
    background-color: #231f20;
    margin: 0;
    padding: 0;
    height: 100vh;
    overflow: hidden;
}

/* Main content */
main {
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Scale container - uses JavaScript to scale to fit viewport */
.presentation-scale-container {
    width: 100%;
    aspect-ratio: 16 / 9;
    transform-origin: center center;
}

.canva-placeholder {
    width: 100%;
    height: 100%;
}

/* Remove Canva's default margins and styling */
.canva-placeholder > div {
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Responsive design */
@media (max-width: 768px) {
    .presentation-wrapper {
        border-radius: 8px;
    }
}

@media (max-width: 480px) {
    main {
        padding: 1rem 0;
    }

    .canva-placeholder {
        font-size: 1rem;
        padding: 1rem;
    }
}
