/* ===================================
   DESKTOP-ONLY MODE - NO RESPONSIVE BEHAVIOR
   Mobile devices will show the full desktop layout
   =================================== */

/* Base layout (IMPORTANT) */
html,
body {
    height: 100%;
    margin: 0;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    /* Ensure body is at least viewport height */
    overflow-x: hidden;
}

/* ===================================
   Touch-Friendly Elements
   =================================== */
button,
a,
input[type="submit"],
input[type="button"],
.btn,
.card,
.list-item {
    -webkit-tap-highlight-color: rgba(16, 185, 129, 0.2);
    touch-action: manipulation;
}

/* Minimum tap target size */
button,
a.btn,
input[type="submit"],
input[type="button"] {
    min-height: 44px;
    min-width: 44px;
}

/* Prevent zoom on input focus (iOS) */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="date"],
select,
textarea {
    font-size: 16px;
}

/* Images */
img {
    max-width: 100%;
    height: auto;
}

/* iOS appearance fix */
@supports (-webkit-touch-callout: none) {

    input,
    textarea,
    select {
        -webkit-appearance: none;
        appearance: none;
    }
}

/* Touch devices – remove hover */
@media (hover: none) and (pointer: coarse) {

    .card:hover,
    .list-item:hover,
    .btn:hover {
        transform: none;
    }

    .card:active,
    .list-item:active {
        transform: scale(0.98);
        transition: transform 0.1s ease;
    }

    .btn:active {
        opacity: 0.9;
    }

    button:active,
    a:active {
        opacity: 0.7;
    }
}

/* ===================================
   Safe Area Support (iPhone)
   =================================== */
@supports (padding: max(0px)) {

    body {
        padding-left: max(0px, env(safe-area-inset-left));
        padding-right: max(0px, env(safe-area-inset-right));
    }

    header {
        padding-left: max(0.4rem, env(safe-area-inset-left));
        padding-right: max(0.4rem, env(safe-area-inset-right));
    }

    footer {
        padding-left: max(2rem, env(safe-area-inset-left));
        padding-right: max(2rem, env(safe-area-inset-right));
        padding-bottom: max(3rem, env(safe-area-inset-bottom));
    }
}

/* ===================================
   Desktop Wrapper (Main Content)
   =================================== */
#desktop-wrapper {
    width: 1280px;
    transform-origin: top center;
    flex: 1 0 auto;
    /* Grow to fill space, push footer down */
    display: flex;
    flex-direction: column;
}

/* ===================================
   Mobile Scaling + Font Increase
   =================================== */
@media (max-width: 1280px) {

    #desktop-wrapper {
        transform: scale(calc(100vw / 1280));
    }

    body {
        font-size: 1.5rem;
        /* Mobile font size */
    }

    button,
    input,
    select,
    textarea {
        font-size: 1rem;
    }
}

/* ===================================
   Footer
   =================================== */
footer {
    width: 100%;
    flex-shrink: 0;
    /* Prevent footer from shrinking */
    margin-top: auto;
    /* Push footer to bottom if content is short */
}

/* ALL RESPONSIVE MEDIA QUERIES DISABLED */
/* Mobile will show full desktop layout */