/* --- UNIVERSAL STYLES --- */
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; background-color: #f4f4f4; }
html, body { height: 100%; }
.app-container { display: flex; flex-direction: column; height: 100%; width: 100%; max-width: 480px; margin: 0 auto; background-color: #fff; }

/* --- FINAL, PERFECT `index.html` STYLES --- */
.login-header { background-color: #000; padding: 15px 20px; text-align: center; flex-shrink: 0; }
.login-logo { max-height: 40px; /* This CONTROLS the logo size perfectly */ }
.login-content { flex-grow: 1; padding: 30px 25px; }
.login-form-group { margin-bottom: 30px; position: relative; }
.login-form-group label { font-size: 1rem; color: #555; margin-bottom: 8px; display: block; }
.login-form-group input { width: 100%; border: none; border-bottom: 1px solid #e0e0e0; padding: 10px 0; font-size: 1.2rem; direction: ltr; }
.login-form-group input:focus { outline: none; border-bottom-color: #F76B00; }
.login-form-group span { font-size: 0.8rem; color: #999; }
.password-input-wrapper { position: relative; display: flex; align-items: center; }
.password-toggle-icon { position: absolute; left: 5px; cursor: pointer; color: #888; font-size: 1.5rem; }
.login-forgot-link { display: block; text-align: right; color: #F76B00; text-decoration: underline; font-size: 0.9rem; margin-bottom: 40px; }
.login-submit-button { background-color: #F76B00; color: white; border: none; border-radius: 8px; width: 100%; padding: 16px; font-size: 1.2rem; font-weight: 600; cursor: pointer; display: flex; justify-content: center; align-items: center; }
.lock-icon { margin-left: 10px; font-size: 1.1rem; }

/* --- FINAL, PERFECT `forgot.html` STYLES --- */
.page-header-alt { text-align: center; padding: 20px; }
.page-header-alt h1 { margin: 0; font-size: 1.5rem; }
.hero-banner { text-align: center; background-color: #8DC5A0; }
.hero-banner img { max-width: 100%; display: block; }
.form-container-alt { padding: 25px 30px; }
.info-text { text-align: right; margin-bottom: 25px; color: #555; font-size: 1rem; }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; margin-bottom: 8px; font-weight: 600; color: #333; }
.form-group input { width: 100%; padding: 14px; border: 1px solid #ccc; border-radius: 8px; font-size: 1rem; box-sizing: border-box; }
.login-button { width: 100%; padding: 16px; background-color: #F76B00; color: white; border: none; border-radius: 12px; font-size: 1.2rem; font-weight: bold; cursor: pointer; margin-top: 15px; }

/* --- FINAL, PERFECT `verify.html` STYLES --- */
.final-body { background-color: #fff; }
.final-header { background-color: #1a1a1a; color: #fff; font-size: 1.1rem; font-weight: 600; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; flex-shrink: 0; }
.final-arrow { transform: scaleX(-1); font-weight: bold; font-size: 1.5rem; }
.final-content { flex-grow: 1; padding: 25px; text-align: center; }
.final-title { font-size: 2rem; font-weight: 800; color: #000; margin-top: 10px; margin-bottom: 30px; }
.final-info-text { color: #666; font-size: 1rem; margin-bottom: 15px; }
.final-phone-number { color: #F76B00; font-size: 1.8rem; font-weight: bold; margin-bottom: 20px; direction: ltr; }
.final-not-your-number { color: #666; text-decoration: underline; font-size: 0.9rem; margin-bottom: 40px; display: inline-block; }
.final-otp-label { color: #666; font-size: 1rem; margin-bottom: 15px; }
.final-otp-input { height: 60px; border: 1px solid #ddd; border-radius: 12px; text-align: center; font-size: 2rem; letter-spacing: 5px; width: 100%; box-sizing: border-box; }
.final-resend-timer { color: #ccc; font-size: 0.9rem; margin-top: 30px; }
.final-footer { padding: 20px; flex-shrink: 0; border-top: 1px solid #f0f0f0; }
.final-submit-button { background-color: #e0e0e0; color: #fff; width: 100%; border: none; border-radius: 12px; font-size: 1.2rem; font-weight: 600; padding: 16px; cursor: not-allowed; transition: background-color 0.2s ease-in-out; }
.final-submit-button.active { background-color: #F76B00; cursor: pointer; }