.rewards-page{margin:0 auto;max-width:900px;padding:2rem 1rem}.rewards-header{margin-bottom:2rem;text-align:center}.rewards-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem}.rewards-header p{color:#666}.points-summary{background:#f5f5f5;border-radius:12px;margin-bottom:2rem;padding:2rem}.points-main{margin-bottom:1.5rem;text-align:center}.points-balance{color:#000;font-size:3rem;font-weight:700;line-height:1}.points-label{color:#666;font-size:1rem;margin-top:.5rem}.tier-badge{background:linear-gradient(135deg,#f1d5d5,#e8c4c4);border-radius:20px;color:#4a2a2a;display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-top:.75rem;padding:.35rem 1rem;text-transform:uppercase}.points-stats-row{border-top:1px solid #ddd;display:flex;gap:1.5rem;justify-content:center;padding-top:1.5rem}.points-stat{flex:1;max-width:120px;min-width:0;text-align:center}.points-stat-value{font-size:1.5rem;font-weight:600}.points-stat-label{color:#666;font-size:.875rem}.points-details{border-top:1px solid #ddd;display:flex;gap:2rem;justify-content:center;margin-top:1.5rem;padding-top:1.5rem}.points-detail{text-align:center}.points-detail-value{font-size:1.5rem;font-weight:600}.points-detail-label{color:#666;font-size:.875rem}.tier-progress-section{border-top:1px solid #ddd;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1.5rem;padding-top:1.5rem}.tier-progress-card{background:#fff;border-radius:8px;padding:1rem}.tier-progress-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:.5rem}.tier-progress-label{font-size:.875rem;font-weight:500}.tier-progress-value{color:#666;font-size:.75rem}.tier-progress-bar{background:#e0e0e0;border-radius:4px;height:8px;overflow:hidden}.tier-progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.tier-progress-fill.upgrade{background:linear-gradient(90deg,#667eea,#764ba2)}.tier-progress-fill.renewal{background:linear-gradient(90deg,#11998e,#38ef7d)}.tier-expiration{color:#888;font-size:.75rem;margin-top:.5rem;text-align:right}.tier-reset-timeline{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e0e0e0;border-radius:12px;grid-column:1/-1;margin-top:.5rem;padding:1.25rem}.tier-reset-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.tier-reset-title{color:#333;font-size:.875rem;font-weight:600}.tier-reset-countdown{background:#6366f11a;border-radius:20px;color:#6366f1;font-size:.75rem;font-weight:500;padding:.25rem .625rem}.tier-reset-track{background:#e9ecef;border-radius:4px;height:8px;margin-bottom:.75rem;position:relative}.tier-reset-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:4px;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.tier-reset-marker{background:#fff;border:3px solid #6366f1;border-radius:50%;box-shadow:0 2px 4px #0000001a;height:16px;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.tier-reset-labels{align-items:flex-start;color:#666;display:flex;font-size:.75rem;justify-content:space-between}.tier-reset-end,.tier-reset-start{display:flex;flex-direction:column;gap:.125rem}.tier-reset-start{text-align:left}.tier-reset-now{color:#6366f1;font-weight:600;text-align:center}.tier-reset-end{text-align:right}.tier-reset-labels strong{color:#333;font-weight:600}.tier-reset-explanation{border-top:1px solid #eee;color:#666;font-size:.75rem;line-height:1.5;margin-top:1rem;padding-top:.75rem}@media(max-width:640px){.points-stats-row{gap:.75rem}.points-stat{max-width:none}.points-stat-value{font-size:1.25rem}.points-stat-label{font-size:.75rem}.tier-progress-section{grid-template-columns:1fr}}.rewards-section{margin-top:2rem}.rewards-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.rewards-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.reward-card{background:#fff;border:1px solid #ddd;border-radius:12px;display:flex;flex-direction:column;padding:1.5rem}.reward-card-header{margin-bottom:1rem}.reward-name{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.reward-description{color:#666;font-size:.875rem}.reward-cost{align-items:baseline;display:flex;gap:.25rem;margin-bottom:1rem}.reward-cost-value{font-size:1.5rem;font-weight:700}.reward-card-footer{margin-top:auto}.redeem-button{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1rem;transition:opacity .2s;width:100%}.redeem-button:hover:not(:disabled){opacity:.9}.redeem-button:disabled{background:#ccc;cursor:not-allowed}.redeem-button.loading{opacity:.7}.discount-code{background:#e6f4ea;border:1px solid #34a853;border-radius:8px;padding:1rem}.discount-code-label{color:#34a853;font-size:.75rem;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.discount-code-value{font-family:monospace;font-size:1.125rem;font-weight:600;margin-bottom:.5rem;word-break:break-all}.discount-code-actions{display:flex;flex-wrap:wrap;gap:.5rem}.copy-button{background:transparent;border:1px solid #34a853;border-radius:4px;color:#34a853;cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.copy-button:hover,.view-cart-link{background:#34a853;color:#fff}.view-cart-link{border-radius:4px;font-size:.875rem;padding:.5rem 1rem;text-decoration:none}.view-cart-link:hover{opacity:.9}.reward-error{color:#dc3545;font-size:.875rem;margin-top:.5rem}.rewards-loading{padding:4rem 2rem;text-align:center}.rewards-loading-spinner{animation:spin 1s linear infinite;border:3px solid #ddd;border-radius:50%;border-top-color:#000;height:40px;margin:0 auto 1rem;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.rewards-login-prompt{background:#f5f5f5;border-radius:12px;padding:4rem 2rem;text-align:center}.rewards-login-prompt h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.rewards-login-prompt p{color:#666;margin-bottom:1.5rem}.login-button{background:#000;border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:.75rem 2rem;text-decoration:none}.login-button:hover{opacity:.9}.rewards-error{background:#fce4e4;border-radius:12px;padding:4rem 2rem;text-align:center}.rewards-error h2{color:#dc3545;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.rewards-empty{background:#f5f5f5;border-radius:12px;padding:3rem;text-align:center}.tier-info{background:#f0f0f0;border-radius:100px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-top:.5rem;padding:.25rem .75rem;text-transform:uppercase}.insufficient-points{color:#f59e0b;font-size:.75rem;margin-top:.25rem}.checkout-redemption-info{margin-top:1.5rem}.checkout-info-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #ddd;border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;padding:1.5rem}.checkout-info-icon{flex-shrink:0;font-size:2rem}.checkout-info-content{flex:1;min-width:200px}.checkout-info-content h3{font-size:1rem;font-weight:600;margin-bottom:.25rem}.checkout-info-description{color:#666;font-size:.875rem;margin-bottom:.25rem}.checkout-info-rate{color:#000;font-size:.75rem;font-weight:500}.checkout-info-link{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.25rem;text-decoration:none;white-space:nowrap}.checkout-info-link:hover{opacity:.9}.history-section{margin-top:3rem}.history-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.history-empty{background:#f5f5f5;border-radius:8px;padding:2rem}.history-table-wrapper{border:1px solid #ddd;border-radius:8px;overflow-x:auto}.history-table{border-collapse:collapse;font-size:.875rem;width:100%}.history-table td,.history-table th{border-bottom:1px solid #eee;padding:.75rem 1rem;text-align:left}.history-table th{background:#f5f5f5;color:#666;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.history-table tbody tr:last-child td{border-bottom:none}.history-table tbody tr:hover{background:#f9f9f9}.history-type{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.history-type-earned{background:#e6f4ea;color:#137333}.history-type-redeemed{background:#fef7e0;color:#c77800}.history-type-reward{background:#e8f0fe;color:#1967d2}.history-type-bonus{background:#f3e8fd;color:#8430ce}.history-type-deducted,.history-type-expired{background:#fce8e6;color:#c5221f}.history-type-tier{background:#fff8e1;color:#f9a825}.history-type-activity{background:#f5f5f5;color:#666}.points-positive{color:#137333;font-weight:600}.points-negative{color:#c5221f;font-weight:600}.history-status{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.history-status-approved{background:#e6f4ea;color:#137333}.history-status-pending{background:#fef7e0;color:#c77800}.history-status-expired,.history-status-void{background:#fce8e6;color:#c5221f}.history-action-cell{display:flex;flex-direction:column;gap:.25rem}.history-voucher-code{align-items:center;display:flex;gap:.375rem;margin-top:.25rem}.history-voucher-code code{background:#e8f0fe;border-radius:4px;color:#1967d2;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.history-voucher-code code.used{background:#f5f5f5;color:#999;text-decoration:line-through}.history-copy-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:.75rem;padding:.125rem .25rem;transition:background .2s}.history-copy-btn:hover{background:#0000000d}.voucher-used-badge{background:#f5f5f5;border-radius:4px;color:#999;font-size:.625rem;font-weight:500;padding:.125rem .375rem}.history-load-more{align-items:center;border-top:1px solid #eee;display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem}.load-more-btn{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1.5rem;transition:background .2s,border-color .2s}.load-more-btn:hover{background:#eee;border-color:#ccc}.history-limit-note{color:#999;font-size:.75rem;max-width:300px;text-align:center}@media(max-width:640px){.history-voucher-code{flex-wrap:wrap}.history-voucher-code code{font-size:.625rem;padding:.125rem .375rem}}.earn-points-section{margin-top:3rem}.earn-points-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.earn-points-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.earn-card,.earn-info-card{background:#fff;border:1px solid #ddd;border-radius:12px;padding:1.5rem;text-align:center}.earn-info-icon{font-size:2rem;margin-bottom:.5rem}.earn-card h3,.earn-info-card h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}.earn-card p,.earn-info-card p{color:#666;font-size:.875rem}.birthday-card{grid-column:span 2}@media(max-width:600px){.birthday-card{grid-column:span 1}}.birthday-card.birthday-set{background:linear-gradient(135deg,#fff8e1,#ffecb3);border-color:#ffc107}.birthday-saved{color:#000;font-weight:600;margin-bottom:.25rem}.birthday-note{font-size:.75rem}.birthday-form{margin-top:1rem}.birthday-inputs{display:flex;gap:.5rem;justify-content:center;margin-bottom:.75rem}.birthday-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.birthday-submit{background:#000;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1.5rem}.birthday-submit:disabled{background:#ccc;cursor:not-allowed}.birthday-error{color:#dc3545;font-size:.75rem;margin-top:.5rem}.social-card{position:relative}.social-card h3{margin-bottom:.5rem}.social-card p{margin-bottom:1rem}.social-follow-button{background:linear-gradient(135deg,#833ab4,#fd1d1d 50%,#fcb045);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:transform .2s,box-shadow .2s;width:100%}.social-follow-button:hover:not(:disabled){box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.social-follow-button:disabled{cursor:not-allowed;opacity:.7}.social-follow-button.loading{background:#ccc}.earn-card:nth-of-type(3) .social-follow-button,.social-card:has([class*=tiktok]) .social-follow-button{background:linear-gradient(135deg,#00f2ea,#ff0050)}.social-completed{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.social-completed-text{color:#137333;font-weight:600;margin-bottom:.5rem}.social-profile-link{color:#000;display:inline-block;font-weight:500;text-decoration:none}.social-profile-link:hover{text-decoration:underline}.social-error{color:#dc3545;font-size:.75rem;margin-top:.5rem}.referral-card{position:relative}.referral-card h3{margin-bottom:.5rem}.referral-card p{margin-bottom:1rem}.referral-link-container{display:flex;flex-direction:column;gap:.75rem}.referral-link-input{width:100%}.referral-url-field{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;color:#666;cursor:text;font-size:.75rem;padding:.625rem .75rem;text-overflow:ellipsis;width:100%}.referral-url-field:focus{border-color:#000;outline:none}.referral-actions{display:flex;gap:.5rem}.referral-copy-button,.referral-share-button{border:none;border-radius:8px;cursor:pointer;flex:1;font-size:.875rem;font-weight:600;padding:.625rem 1rem;transition:transform .2s,box-shadow .2s}.referral-copy-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.referral-copy-button:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.referral-share-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.referral-share-button:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.referral-loading{color:#666;font-size:.875rem;font-style:italic}.referral-stats{border-top:1px solid #eee;color:#666;font-size:.875rem;margin-top:.75rem;padding-top:.75rem;text-align:center}@media(max-width:480px){.referral-url-field{font-size:.625rem}.referral-actions{flex-direction:column}}.newsletter-card{position:relative}.newsletter-card h3{margin-bottom:.5rem}.newsletter-card p{margin-bottom:1rem}.newsletter-button{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:transform .2s,box-shadow .2s;width:100%}.newsletter-button:hover:not(:disabled){box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px)}.newsletter-button:disabled{cursor:not-allowed;opacity:.7}.newsletter-button.loading{background:#ccc}.newsletter-subscribed{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#22c55e}.newsletter-completed-text{color:#137333;font-weight:600}.newsletter-error{color:#dc3545;font-size:.75rem;margin-top:.5rem}.reviews-card .reviews-stars{font-size:1rem;letter-spacing:-2px}@media(max-width:480px){.reviews-card .reviews-stars{font-size:.75rem;letter-spacing:-3px}}.tiers-section{border:1px solid #ddd;border-radius:12px;margin-top:2rem;overflow:hidden}.tiers-header{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;text-align:left;width:100%}.tiers-header h2{font-size:1.25rem;font-weight:600;margin:0}.tiers-toggle{align-items:center;background:#f5f5f5;border-radius:50%;color:#666;display:flex;font-size:1.25rem;font-weight:300;height:28px;justify-content:center;transition:transform .2s;width:28px}.tiers-toggle.expanded{transform:rotate(180deg)}.tiers-content{padding:1.5rem}.tiers-list{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.tier-item{align-items:center;background:#f5f5f5;border-radius:12px;display:flex;flex-direction:column;font-size:.875rem;gap:.25rem;min-width:100px;padding:.75rem 1.25rem;text-align:center}.tier-item.current{background:linear-gradient(135deg,#f1d5d5,#e8c4c4);color:#4a2a2a;font-weight:600}.tier-item-content{align-items:center;display:flex;gap:.5rem}.tier-current-badge{background:#4a2a2a33;border-radius:4px;font-size:.7rem;letter-spacing:.03em;padding:.15rem .4rem;text-transform:uppercase}.tier-threshold{color:#666;display:block;font-size:.75rem;margin-top:.25rem}.tiers-rules-table-wrapper{border:1px solid #ddd;border-radius:8px;overflow-x:auto}.tiers-rules-table{border-collapse:collapse;font-size:.875rem;width:100%}.tiers-rules-table td,.tiers-rules-table th{border-bottom:1px solid #eee;padding:.75rem 1rem;text-align:center}.tiers-rules-table td:first-child,.tiers-rules-table th:first-child{text-align:left}.tiers-rules-table th{background:#f5f5f5;color:#666;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tiers-rules-table th.current-tier{background:linear-gradient(135deg,#f1d5d5,#e8c4c4);color:#4a2a2a}.tiers-rules-table td.current-tier{background:#faf5f5;font-weight:600}.tiers-rules-table tbody tr:last-child td{border-bottom:none}.tiers-rules-table tbody tr:hover{background:#f9f9f9}.tiers-rules-table tbody tr:hover td.current-tier{background:#f5eaea}@media(max-width:640px){.tiers-rules-table td,.tiers-rules-table th{font-size:.75rem;padding:.5rem}.tiers-rules-table th{font-size:.65rem}}.expandable-section{border:1px solid #ddd;border-radius:12px;margin-top:2rem;overflow:hidden}.expandable-header{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;text-align:left;width:100%}.expandable-header h2{font-size:1.25rem;font-weight:600;margin:0}.expandable-toggle{align-items:center;background:#f5f5f5;border-radius:50%;color:#666;display:flex;font-size:1.25rem;font-weight:300;height:28px;justify-content:center;transition:transform .2s;width:28px}.expandable-toggle.expanded{transform:rotate(180deg)}.expandable-content{padding:1.5rem}.history-section.expandable-section .history-table-wrapper{overflow-x:auto}.history-empty{color:#666;padding:1rem 0;text-align:center}.faq-list{display:flex;flex-direction:column;gap:0}.faq-item{border-bottom:1px solid #ddd}.faq-item:last-child{border-bottom:none}.faq-question{align-items:center;background:none;border:none;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:500;justify-content:space-between;padding:1rem 0;text-align:left;width:100%}.faq-question:hover{color:#333}.faq-toggle{color:#666;flex-shrink:0;font-size:1.25rem;font-weight:300;margin-left:1rem}.faq-answer{padding:0 0 1rem}.faq-answer p{color:#666;line-height:1.6;margin:0}@media(max-width:640px){.expandable-content{padding:1rem}.faq-question{font-size:.9rem}.faq-answer p{font-size:.875rem}}
