/* Download Page Styles - Aadhaar Pro */ /* Only page-specific styles. Shared branded classes are in global.css */ /* ======================================== 1. PAGE-SPECIFIC LAYOUT ======================================== */ /* .service-page-body { padding: 0; } */ .download-form-container { width: 100%; padding-bottom: 50px; } .download-form-container .sidebar-form { width: 100%; max-width: 100%; } .download-form-container .sidebar-form { width: 100%; max-width: 100%; } /* Page-specific overrides for shared classes */ .service-page-body .card.card-balance { padding: 25px 35px; margin-bottom: 30px; } /* ======================================== 2. PAGE-SPECIFIC COMPONENTS ======================================== */ .form-title { font-size: 1.6rem; margin-bottom: 5px; color: var(--text-color); } .sidebar-subtitle { color: var(--text-muted); font-size: 0.95rem; margin: 0; } /* ======================================== 3. STEP INDICATOR & DESCRIPTION ======================================== */ .step-indicator { background: var(--primary-gradient); color: white; padding: 8px 16px; border-radius: 20px; font-size: 0.85rem; font-weight: 600; display: inline-block; margin-bottom: 20px; } .step-description { color: var(--text-muted); margin-bottom: 25px; font-size: 0.95rem; } .step-description .mobile-highlight { font-weight: 600; color: var(--text-color); } /* ======================================== 4. CAPTCHA SECTION ======================================== */ .captcha-wrapper { display: flex; gap: 10px; align-items: center; margin-bottom: 10px; } .captcha-display-box { flex: 1; background: var(--bg-color); padding: 15px; border-radius: 12px; text-align: center; font-size: 1.5rem; letter-spacing: 5px; font-weight: 700; color: var(--primary-color); border: 1px dashed var(--border-color); min-height: 90px; display: flex; align-items: center; justify-content: center; } .captcha-display-box.captcha-placeholder { color: var(--text-muted); font-size: 0.9rem; font-weight: 500; font-family: 'Outfit', sans-serif; letter-spacing: normal; } .captcha-display-box .captcha-image { max-width: 100%; height: auto; border-radius: 8px; } .captcha-display-box .captcha-loading { color: var(--text-muted); font-size: 0.9rem; display: flex; align-items: center; justify-content: center; font-family: 'Outfit', sans-serif; letter-spacing: normal; font-weight: 500; } .captcha-display-box .captcha-error { color: var(--error); font-size: 0.85rem; font-weight: 500; font-family: 'Outfit', sans-serif; } /* ======================================== 5. OPTION / CHECKBOX CONTAINERS ======================================== */ .option-container { display: flex; align-items: center; gap: 10px; cursor: pointer; padding: 15px; background: var(--bg-color); border-radius: 12px; border: 1px solid var(--border-color); transition: var(--transition); } .option-container:hover { border-color: var(--primary-color); } .option-container input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--primary-color); cursor: pointer; } .option-label { color: var(--text-color); font-weight: 500; cursor: pointer; } /* ======================================== 6. ERROR CONTAINERS ======================================== */ .error-container { display: none; background: var(--error-light); color: var(--error); padding: 12px 16px; border-radius: 8px; margin-bottom: 20px; font-size: 0.9rem; } .error-container.visible { display: block; } /* ======================================== 7. SUCCESS STATE (download-specific overrides) ======================================== */ .success-state .success-title { margin-bottom: 10px; color: var(--text-color); } .success-state .success-description { color: var(--text-muted); margin-bottom: 30px; } /* ======================================== 8. PDF POPUP (page-specific popup styles) ======================================== */ .pdf-popup-icon { width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; font-size: 2rem; } .pdf-popup-icon svg.spinner-animation { animation: spin 1s linear infinite; } .pdf-popup-title { margin: 0 0 10px; font-size: 1.5rem; font-weight: 600; color: var(--text-color); } .pdf-popup-msg { margin: 0 0 20px; color: var(--text-muted); font-size: 1rem; } /* ======================================== 9. HISTORY MODAL (page-specific) ======================================== */ .history-modal-card { max-width: 500px; max-height: 80vh; overflow: hidden; } .history-modal-header { display: flex; justify-content: space-between; align-items: center; padding: 20px 25px; border-bottom: 1px solid var(--border-color); } .history-modal-title { margin: 0; display: flex; align-items: center; gap: 10px; color: var(--text-color); } .history-modal-title i { color: var(--primary-color); } .history-list { padding: 20px; max-height: 60vh; overflow-y: auto; } /* History FAB */ .history-fab { position: fixed; bottom: 30px; right: 30px; width: 60px; height: 60px; border-radius: 50%; background: var(--primary-gradient); color: white; border: none; box-shadow: 0 4px 15px var(--shadow-primary-medium); cursor: pointer; z-index: 999; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; transition: var(--transition); } .history-fab:hover { transform: scale(1.1); box-shadow: 0 6px 20px var(--shadow-primary-dark); } /* ======================================== 10. BUTTON LOADER ======================================== */ .btn-loader { display: none; } .btn-loader.visible { display: inline-flex; } /* ======================================== 11. ANIMATIONS ======================================== */ @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } /* ======================================== 12. RESPONSIVE ======================================== */ @media (max-width: 768px) { .sidebar-form { padding: 25px 20px; } .card-balance { padding: 20px; } } @media (max-width: 520px) { .tabs { flex-direction: column; width: 100%; } .tab { width: 100%; justify-content: center; } }