.header{position:fixed;top:0;width:100%;height:var(--header-height);background-color:var(--bg-surface);box-shadow:var(--shadow-sm);z-index:1000;display:flex;align-items:center}.header-container{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}.header-logo{font-size:20px;font-weight:800;color:var(--primary-color);display:flex;align-items:center;gap:8px}.header-logo span{color:var(--secondary-color)}.header-search{flex:1;max-width:400px;margin:0 24px;position:relative;display:none}@media (min-width: 768px){.header-search{display:block}}.header-search input{width:100%;padding:12px 16px 12px 40px;border-radius:50px;border:1px solid var(--border-color);background-color:var(--bg-body);font-family:inherit;font-size:14px;transition:all .3s ease}.header-search input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #00aeef1a;background-color:#fff}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.header-actions{display:flex;align-items:center;gap:16px}.header-actions a{font-weight:600;font-size:14px;color:var(--text-main);display:none}@media (min-width: 768px){.header-actions a{display:block}}.mobile-search-btn{display:block;color:var(--text-main)}@media (min-width: 768px){.mobile-search-btn{display:none}}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;height:var(--mobile-nav-height);background-color:var(--bg-surface);box-shadow:0 -2px 10px #0000000d;display:flex;justify-content:space-around;align-items:center;z-index:1000}@media (min-width: 768px){.bottom-nav{display:none}}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);font-size:11px;font-weight:500;flex:1;height:100%;transition:color .2s ease}.bottom-nav-item.active{color:var(--primary-color)}.bottom-nav-item svg{transition:transform .2s ease}.bottom-nav-item:active svg{transform:scale(.9)}.footer{background-color:var(--bg-surface);color:var(--text-secondary);border-top:1px solid var(--border-color);padding:32px 0 24px;font-size:14px}@media (max-width: 767px){.footer{padding-bottom:calc(var(--mobile-nav-height) + 24px)}}.footer-content{display:grid;grid-template-columns:1fr;gap:32px}@media (min-width: 768px){.footer-content{grid-template-columns:2fr 1fr 1fr}}.footer-logo{font-size:24px;font-weight:800;color:var(--primary-color);display:flex;align-items:center;gap:8px;margin-bottom:12px}.footer-logo span{color:var(--secondary-color)}.footer-about{color:var(--text-muted);line-height:1.6;margin-bottom:24px;max-width:400px}.footer-socials{display:flex;gap:16px}.social-icon{width:40px;height:40px;border-radius:50%;background-color:var(--bg-body);display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:all .3s ease}.social-icon:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px)}.footer-col h4{font-size:16px;margin-bottom:16px;color:var(--text-main)}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:12px}.footer-col ul li a{color:var(--text-secondary);transition:color .2s}.footer-col ul li a:hover{color:var(--primary-color)}.footer-bottom{margin-top:48px;padding-top:24px;border-top:1px solid var(--border-color);text-align:center;color:var(--text-muted);font-size:13px}.banner-container{width:100%;position:relative;overflow:hidden;padding:16px 0}@media (min-width: 768px){.banner-container{padding:24px 0 32px}}.banner-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 16px;-webkit-overflow-scrolling:touch}.banner-track::-webkit-scrollbar{display:none}@media (min-width: 768px){.banner-track{gap:20px}}.banner-item{flex:0 0 calc(100% - 32px);scroll-snap-align:center;border-radius:var(--border-radius-md);overflow:hidden;position:relative;box-shadow:var(--shadow-sm)}@media (min-width: 768px){.banner-item{flex:0 0 80%}}.banner-item.wide{flex:0 0 100%}.banner-img{width:100%;height:180px;object-fit:cover;display:block}@media (min-width: 768px){.banner-img{height:320px}}.banner-indicators{display:flex;justify-content:center;gap:6px;margin-top:12px}.indicator{width:6px;height:6px;border-radius:50%;background-color:var(--border-color);transition:all .3s ease}.indicator.active{width:16px;border-radius:10px;background-color:var(--primary-color)}.category-menu{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 8px;margin:16px auto}@media (min-width: 768px){.category-menu{grid-template-columns:repeat(8,1fr);gap:24px;margin:32px auto}}.category-item{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:transform .2s ease}.category-item:hover{transform:translateY(-4px)}.category-icon{width:50px;height:50px;border-radius:16px;background-color:var(--primary-light);display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:all .3s ease}.category-item:hover .category-icon{background-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #00aeef4d}.category-label{font-size:12px;font-weight:500;text-align:center;color:var(--text-main);line-height:1.2}@media (min-width: 768px){.category-icon{width:64px;height:64px;border-radius:20px}.category-label{font-size:13px}}.campaign-card{background-color:var(--bg-surface);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;display:flex;flex-direction:column;height:100%}.campaign-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.campaign-img-wrapper{position:relative;width:100%;padding-top:56.25%;overflow:hidden}.campaign-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.campaign-urgent-badge{position:absolute;top:10px;right:10px;background-color:var(--secondary-color);color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:4px}.campaign-content{padding:16px;display:flex;flex-direction:column;flex:1}.campaign-title{font-size:14px;font-weight:600;line-height:1.4;margin-bottom:8px;color:var(--text-main);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.campaign-author{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:4px;margin-bottom:12px}.campaign-author svg{color:var(--primary-color)}.campaign-stats{margin-top:auto}.stats-row{display:flex;justify-content:space-between;font-size:12px;margin-top:8px}.stats-label{color:var(--text-muted)}.stats-value{font-weight:700;color:var(--text-main)}.campaign-grid.horizontal-scroll{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px;padding:0 16px 12px}.campaign-grid.horizontal-scroll::-webkit-scrollbar{display:none}.campaign-grid.horizontal-scroll>div{flex:0 0 75%;max-width:280px;scroll-snap-align:start}.campaign-grid.grid-layout{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 768px){.campaign-grid.horizontal-scroll,.campaign-grid.grid-layout{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;overflow:visible}.campaign-grid.horizontal-scroll>div{flex:auto;max-width:none}}@media (min-width: 1024px){.campaign-grid.horizontal-scroll,.campaign-grid.grid-layout{grid-template-columns:repeat(4,1fr)}}.campaign-detail-page{background-color:var(--bg-body);min-height:100vh}.campaign-detail-header{position:relative;width:100%;aspect-ratio:16/9;background-color:#eee}@media (min-width: 768px){.campaign-detail-header{height:480px;aspect-ratio:auto}}.campaign-detail-header img{width:100%;height:100%;object-fit:cover}.campaign-detail-content{background-color:var(--bg-surface);margin-top:-24px;border-radius:24px 24px 0 0;position:relative;padding:24px 16px;z-index:10}@media (min-width: 768px){.campaign-detail-content{margin-top:-48px;border-radius:24px;box-shadow:var(--shadow-md);padding:32px;margin-bottom:48px}}.campaign-detail-title{font-size:20px;line-height:1.4;margin-bottom:16px}@media (min-width: 768px){.campaign-detail-title{font-size:28px}}.fundraiser-info{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--divider);margin-bottom:16px}.fundraiser-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--primary-light);display:flex;align-items:center;justify-content:center;color:var(--primary-color)}.fundraiser-name{font-weight:600;font-size:14px}.fundraiser-role{font-size:12px;color:var(--text-muted)}.campaign-detail-stats{margin-bottom:24px}.stats-amount{font-size:18px;font-weight:700;color:var(--primary-color);margin-bottom:4px}.stats-target{font-size:13px;color:var(--text-secondary);display:flex;justify-content:space-between}.campaign-detail-story{margin-top:24px}.campaign-detail-story h3{font-size:16px;margin-bottom:12px}.campaign-detail-story p{color:var(--text-secondary);font-size:14px;line-height:1.6;margin-bottom:16px}.sticky-action-bar{position:fixed;bottom:0;left:0;width:100%;padding:16px;background-color:var(--bg-surface);box-shadow:0 -4px 12px #0000000d;display:flex;gap:12px;z-index:100}@media (min-width: 768px){.sticky-action-bar{position:static;box-shadow:none;padding:0;margin-top:32px}}.btn-donate{flex:1;background-color:var(--secondary-color);color:#fff;padding:14px;border-radius:50px;font-weight:700;font-size:16px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-donate:hover{background-color:var(--secondary-hover);transform:translateY(-2px)}.btn-share{width:50px;height:50px;border-radius:50px;border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--text-main);background-color:#fff}.donation-page{background-color:var(--bg-body);min-height:100vh;padding-bottom:80px}.donation-header{background-color:var(--bg-surface);padding:16px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:50}.donation-header h2{font-size:16px;margin:0;flex:1}.donation-card{background-color:var(--bg-surface);margin-top:16px;padding:24px 16px}@media (min-width: 768px){.donation-card{border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-top:32px;padding:32px}}.nominal-input-group{position:relative;margin-bottom:24px}.nominal-currency{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:700;color:var(--text-main)}.nominal-input{width:100%;padding:16px 16px 16px 56px;font-size:24px;font-weight:700;border:2px solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-main);transition:all .3s ease}.nominal-input:focus{outline:none;border-color:var(--primary-color);background-color:var(--primary-light)}.preset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px}@media (min-width: 768px){.preset-grid{grid-template-columns:repeat(4,1fr)}}.preset-btn{border:1px solid var(--border-color);background-color:#fff;padding:12px;border-radius:var(--border-radius-sm);font-weight:600;font-size:14px;color:var(--text-main);transition:all .2s ease}.preset-btn:hover{background-color:#f8f8f8}.preset-btn.selected{border-color:var(--primary-color);background-color:var(--primary-light);color:var(--primary-color)}.payment-section h3{font-size:16px;margin-bottom:16px}.payment-method{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);cursor:pointer;transition:all .2s ease}.payment-method:hover{border-color:var(--primary-color)}.payment-method-icon{display:flex;align-items:center;gap:12px;font-weight:600}.btn-proceed{width:100%;background-color:var(--secondary-color);color:#fff;padding:16px;border-radius:50px;font-weight:700;font-size:16px;border:none;margin-top:32px;transition:transform .2s ease}.btn-proceed:active{transform:scale(.98)}.auth-page{min-height:100vh;background-color:var(--background-light, #f8fafc);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 16px}.auth-container{max-width:440px;width:100%}.auth-back-btn{margin-bottom:24px}.auth-back-btn .back-link{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted, #64748b);font-weight:500;text-decoration:none;font-size:14px;transition:color .2s ease}.auth-back-btn .back-link:hover{color:var(--primary-color, #0f172a)}.auth-card{background:#fff;border-radius:20px;padding:40px 32px;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;border:1px solid var(--divider, #e2e8f0)}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{font-size:24px;font-weight:700;color:var(--primary-color, #0d9488);display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:16px}.auth-logo span{color:var(--text-main, #0f172a)}.auth-header h2{font-size:22px;font-weight:700;color:var(--text-main, #0f172a);margin-bottom:8px}.auth-header p{color:var(--text-muted, #64748b);font-size:14px}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-error{background-color:#fef2f2;border:1px solid #fee2e2;color:#ef4444;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;text-align:center}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:600;color:var(--text-main, #0f172a)}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:14px;color:var(--text-muted, #94a3b8);pointer-events:none;transition:color .2s ease}.input-with-icon input{width:100%;padding:12px 16px 12px 44px;border:1px solid var(--divider, #cbd5e1);border-radius:10px;font-size:14px;font-family:inherit;color:var(--text-main, #0f172a);outline:none;transition:all .2s ease;background-color:#f8fafc}.input-with-icon input:focus{background-color:#fff;border-color:var(--primary-color, #0d9488);box-shadow:0 0 0 3px #0d948826}.input-with-icon input:focus+.input-icon{color:var(--primary-color, #0d9488)}.btn-auth{width:100%;padding:14px;background-color:var(--primary-color, #0d9488);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px}.btn-auth:hover{background-color:#0b7a70;transform:translateY(-1px)}.btn-auth:active{transform:translateY(0)}.btn-auth:disabled{background-color:var(--divider, #cbd5e1);cursor:not-allowed;transform:none}.auth-footer{margin-top:24px;text-align:center;font-size:14px;color:var(--text-muted, #64748b)}.auth-footer a{color:var(--primary-color, #0d9488);font-weight:600;text-decoration:none;transition:color .2s ease}.auth-footer a:hover{color:#0b7a70;text-decoration:underline}:root{--primary-color: #00AEEF;--primary-hover: #009BD6;--primary-light: #E5F7FD;--secondary-color: #E75283;--secondary-hover: #D1426F;--text-main: #212121;--text-secondary: #666666;--text-muted: #9E9E9E;--bg-body: #F4F7F9;--bg-surface: #FFFFFF;--border-color: #E0E0E0;--divider: #F0F0F0;--header-height: 70px;--mobile-nav-height: 60px;--max-width: 1200px;--border-radius-sm: 8px;--border-radius-md: 12px;--border-radius-lg: 20px;--shadow-sm: 0 2px 8px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08);--shadow-hover: 0 8px 24px rgba(0,0,0,.12);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-body);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:var(--primary-color);transition:color .2s ease}button{cursor:pointer;font-family:inherit;border:none;background:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 16px}.btn-primary{background-color:var(--secondary-color);color:#fff;padding:10px 20px;border-radius:50px;font-weight:600;font-size:14px;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center}.btn-primary:hover{background-color:var(--secondary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #e752834d}.btn-outline{border:1px solid var(--primary-color);color:var(--primary-color);padding:10px 20px;border-radius:50px;font-weight:600;font-size:14px;transition:all .3s ease}.btn-outline:hover{background-color:var(--primary-light)}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding-top:var(--header-height);padding-bottom:calc(var(--mobile-nav-height) + 20px)}.text-bold{font-weight:700}.text-semibold{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:700;color:var(--text-main)}.progress-container{width:100%;height:6px;background-color:var(--divider);border-radius:10px;margin:10px 0;overflow:hidden}.progress-bar{height:100%;background-color:var(--secondary-color);border-radius:10px;transition:width 1s cubic-bezier(.4,0,.2,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .5s ease forwards}@media (min-width: 768px){.main-content{padding-bottom:40px;padding-top:calc(var(--header-height) + 20px)}}
