/* Body Setup - Flexbox untuk push footer ke bawah */ body { min-height: 100vh; display: flex; flex-direction: column; padding-bottom: 0; margin: 0; } /* Main Content Area - Flex Grow untuk isi space */ header, .hero, section:not(footer) { flex-shrink: 0; /* prevent shrinking */ } /* Spacer juga perlu flex-grow supaya push footer */ br { display: block; } /* Wrapper untuk semua konten sebelum footer */ body > *:not(footer):not(script):not(#particles):not(.logout-overlay):not(.logout-success-overlay) { flex-shrink: 0; } /* Footer Section - Relative & Auto Push to Bottom */ footer { position: relative; margin-top: auto; /* push footer ke bawah */ z-index: 10; text-align: center; padding: 20px 20px; background: transparent; } /* HR Line Above Credits - Simple Single Line */ .footer-hr { width: 50%; max-width: 500px; height: 1px; margin: 0 auto 12px; background: rgba(0, 234, 255, 0.3); border: none; } /* Credits Container - No Box, Just Text */ .credits { max-width: 100%; margin: 0 auto; padding: 0; background: none; border: none; } /* Simple Credit Text - Small & Clean */ .credits-text { color: rgba(255, 255, 255, 0.5); font-size: 12px; font-family: 'Exo 2', sans-serif; line-height: 1.5; letter-spacing: 0.5px; font-weight: 300; } .credits-text strong { color: rgba(0, 234, 255, 0.7); font-weight: 500; } /* Responsive */ @media (max-width: 768px) { footer { padding: 15px 15px; } .footer-hr { width: 60%; margin-bottom: 10px; } .credits-text { font-size: 11px; } } @media (max-width: 480px) { footer { padding: 12px 10px; } .footer-hr { width: 70%; margin-bottom: 8px; } .credits-text { font-size: 10px; line-height: 1.4; } }