@layer components {
/**
 * Title: Placeholder Page Styles
 *
 * Purpose:
 * - Provides styling for the placeholder splash/landing page.
 *
 * Why / Why this design:
 * - Isolated Styles: Keeps simple placeholder styles separate from the main application framework.
 *
 * Teaching notes:
 * - Usually displayed when the application is not fully configured or during maintenance.
 */

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-main, sans-serif);
    background-color: var(--color-landing-bg, #335642);
    color: var(--color-landing-text, #ebb33a);
}

.placeholder-page {
    background: var(--color-landing-bg);
    min-height: 100vh;
    min-height: 100dvh;
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem 1rem;
    box-sizing: border-box;
}

.placeholder-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: auto 0;
    box-sizing: border-box;
}

.placeholder-logo-container {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

.placeholder-logo-link {
    display: inline-flex;
    text-decoration: none;
    cursor: pointer;
    transition: transform var(--transition-speed, 0.3s) ease, opacity var(--transition-speed, 0.3s) ease;
}

.placeholder-logo-link:hover {
    opacity: 0.9;
    transform: scale(1.02);
}

.placeholder-login-container {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 10;
}

.header-action-link {
    color: var(--color-landing-text);
    padding: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity var(--transition-speed, 0.3s) ease;
}

.header-action-link:hover {
    opacity: 0.8;
}

.placeholder-logo {
    height: 280px;
    max-height: 35vh;
    max-height: 35dvh;
    max-width: min(280px, 80vw);
    width: auto;
    display: block;
    object-fit: contain;
}

.placeholder-footer {
    width: 100%;
    text-align: left;
    margin-top: 1.75rem;
    color: var(--color-landing-text, var(--color-secondary));
    font-family: var(--font-main, sans-serif);
    font-size: 0.8rem;
    opacity: 0.7;
    box-sizing: border-box;
}

@media (min-width: 1024px) and (min-height: 750px) {
    .placeholder-login-container {
        top: 24px;
        right: 32px;
    }

    .placeholder-footer {
        position: absolute;
        bottom: 24px;
        left: 32px;
        width: auto;
        margin-top: 0;
    }
}
}
