/* styles/base.css */

/* Google Fonts Import */
@import url('https://fonts.googleapis.com/css2?family=Montserrat+Alternates:wght@400;600;700&family=Rubik:wght@600&family=Varela+Round&display=swap');

/* Reset & Base */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: clamp(0.9rem, 0.4vw + 0.8rem, 1rem);
}

body {
    font-family: 'Montserrat Alternates', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    direction: rtl;
    background: #FFFCF8;
    /* Ensure body itself doesn't have weird overflow issues on mobile */
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.app-container {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    position: relative;
    overflow-x: hidden;
}

/* --- Main Screen Layout --- */
.screen {
    width: 100%;
    height: 100%; /* Use height instead of min-height for this structure */
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out;
    overflow: hidden; /* Prevent the whole screen from scrolling */
}

.screen.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

/* --- Unified Structure Rules --- */
.screen-header-area {
    flex-shrink: 0;
    /* REMOVE the fixed height */
    /* height: 20%; */ 
    
    /* ADD padding to create a smaller frame around the logo */
    padding: 0.5vh 0; 
    
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80px;
    position: relative;
    z-index: 5;
}
.screen-base-overlay {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background-image: url('../images/base-overlay.png');
    background-size: cover;
    background-position: center;
    padding-top: 5vh;
    overflow-y: auto;   /* Allow ONLY this container to scroll */
    overflow-x: hidden;
    min-height: 0;      /* Fix for flexbox overflow */
}

.screen-main {
    flex-grow: 1;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
}

.screen-footer {
    flex-shrink: 0;
    width: 100%;
    padding: 0 1.5rem 1.5rem;
}

/* --- Reusable Components --- */
.small-logo-img {
    width: clamp(110px, 30vw, 131px);
    height: auto;
}

.screen-progress-bar {
    display: flex;
    justify-content: center;
    gap: 5.5px;
    width: 100%;
    flex-shrink: 0;
}

.progress-segment {
    width: clamp(28px, 8vw, 36px);
    height: 4px;
    background-color: rgba(255, 252, 248, 0.4);
    border-radius: 35px;
    transition: background-color 0.4s ease;
}

.progress-segment.active {
    background-color: #E6F19A;
}

.screen-btn-next {
    width: 100%;
    max-width: 343px;
    min-height: 50px;
    padding: 0.9rem 1rem;
    background: #E6F19A;
    color: #282743;
    font-family: 'Varela Round', sans-serif;
    font-size: clamp(1rem, 4vw, 1.1rem);
    border-radius: 8px;
    border: none;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    gap: 15px;               
}


.swipe-arrows {
    display: flex;
    align-items: center;
    gap: 5px; 
}


.swipe-arrow {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    transform: rotate(135deg);
}


/* Arrow 1 (Right-most, darkest) */
.swipe-arrow:nth-child(1) {
    border-color: #717D7B;
}

/* Arrow 2 (Middle) */
.swipe-arrow:nth-child(2) {
    border-color: #9FA8A8;
}

/* Arrow 3 (Left-most, lightest) */
.swipe-arrow:nth-child(3) {
    border-color: #BDC3C2; /* A slightly lighter shade for better effect */
}