/* ... Header styles keep same ... */ body { background-color: #fff; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; } .custom-header { position: fixed; top: 0; left: 0; width: 100%; height: 2.75rem; padding-top: var(--status-bar-height); background-color: #fff; display: flex; align-items: center; justify-content: space-between; padding-left: 0.9375rem; padding-right: 0.9375rem; box-sizing: border-box; z-index: 100; } .header-placeholder { height: calc(2.75rem + var(--status-bar-height)); } .back-icon { width: 1.25rem; height: 1.25rem; } .header-title { font-size: 1rem; font-weight: bold; color: #333; } .header-right { width: 1.25rem; } .swiper-container { position: relative; padding-bottom: 0.9375rem; } .level-swiper { height: 11.25rem; margin-top: 0.625rem; } .level-card { height: 10rem; border-radius: 0.9375rem; margin: 0 0.3125rem; transition: transform 0.3s; overflow: hidden; position: relative; box-shadow: 0 0.3125rem 0.625rem rgba(0,0,0,0.1); } /* Gradients */ .level-card-1 { background: linear-gradient(135deg, #E0E0E0 0%, #BDBDBD 100%); } .level-card-2 { background: linear-gradient(135deg, #CFD8DC 0%, #B0BEC5 100%); } .level-card-3 { background: linear-gradient(135deg, #FFC107 0%, #FF9800 100%); } .level-card-4 { background: linear-gradient(135deg, #4FC3F7 0%, #039BE5 100%); } .card-content { padding: 0.9375rem; position: relative; z-index: 2; height: 100%; box-sizing: border-box; display: flex; flex-direction: column; } .card-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: auto; /* Push content down */ } .level-badge { border: 1px solid rgba(255,255,255,0.6); padding: 0.0625rem 0.375rem; border-radius: 0.3125rem; font-size: 0.75rem; color: #fff; } .current-badge { background-color: rgba(255,255,255,0.9); color: #333; font-size: 0.625rem; padding: 0.125rem 0.375rem; border-radius: 0.625rem; font-weight: bold; } .level-name { font-size: 1.375rem; font-weight: bold; color: #fff; margin-bottom: 0.3125rem; text-shadow: 0 0.0625rem 0.125rem rgba(0,0,0,0.1); } .level-score { font-size: 0.75rem; color: rgba(255,255,255,0.8); margin-bottom: 0.625rem; } .crown-overlay { position: absolute; bottom: -0.9375rem; right: -0.9375rem; width: 8.125rem; height: 8.125rem; opacity: 0.1; z-index: 1; } /* Dots */ .swiper-dots { display: flex; justify-content: center; margin-top: 0.3125rem; } .dot { width: 0.375rem; height: 0.375rem; background-color: #E0E0E0; border-radius: 50%; margin: 0 0.1875rem; transition: all 0.3s; } .dot.active { width: 0.75rem; background-color: #333; border-radius: 0.1875rem; } .benefits-title-row { padding: 0.625rem 0.9375rem; display: flex; align-items: baseline; } .benefits-title { font-size: 1rem; font-weight: bold; color: #333; } .benefits-count { font-size: 0.875rem; color: #999; margin-left: 0.3125rem; } .benefits-grid { display: flex; flex-wrap: wrap; padding: 0 0.625rem; } .benefit-item { width: 25%; /* 4 items per row */ display: flex; flex-direction: column; align-items: center; margin-bottom: 0.9375rem; } .benefit-icon-wrapper { width: 2.75rem; height: 2.75rem; background-color: #F8F8F8; /* Or very light color based on current level? Keep simple for now */ border-radius: 0.75rem; display: flex; align-items: center; justify-content: center; margin-bottom: 0.375rem; } .benefit-icon { width: 1.375rem; height: 1.375rem; } .benefit-icon-placeholder { font-size: 1.125rem; font-weight: bold; color: #FFB300; } .benefit-name { font-size: 0.6875rem; /* Smaller font as requested matching image roughly */ color: #666; text-align: center; } /* Modal */ .popup-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.5); /* Semi-transparent black */ z-index: 999; display: none; /* Hidden by default */ align-items: center; justify-content: center; } .popup-mask.show { display: flex; /* Show when active */ } .popup-modal { width: 15rem; /* Narrower width */ background-color: #fff; border-radius: 0.9375rem; padding: 1.5625rem 1.25rem; display: flex; flex-direction: column; align-items: center; box-shadow: 0 0.3125rem 1.25rem rgba(0,0,0,0.2); /* Drop shadow */ } .popup-icon-wrapper { width: 3.75rem; height: 3.75rem; background-color: #FFF8E1; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 0.9375rem; } .benefit-icon-large { width: 1.875rem; height: 1.875rem; } .benefit-icon-placeholder-large { font-size: 1.5625rem; font-weight: bold; color: #FFB300; } .popup-title { font-size: 1rem; font-weight: bold; color: #333; margin-bottom: 0.625rem; } .popup-desc { font-size: 0.8125rem; color: #666; text-align: center; line-height: 1.5; margin-bottom: 1.25rem; } .popup-btn { width: 80%; height: 2.25rem; line-height: 2.25rem; background-color: #212121; color: #fff; font-size: 0.875rem; border-radius: 1.125rem; }