:root{--md-sys-color-primary:#6750A4;--md-sys-color-on-primary:#FFFFFF;--md-sys-color-primary-container:#EADDFF;--md-sys-color-secondary:#625B71;--md-sys-color-on-secondary:#FFFFFF;--md-sys-color-secondary-container:#E8DEF8;--md-sys-color-on-secondary-container:#1D192B;--md-sys-color-tertiary:#7D5260;--md-sys-color-on-tertiary:#FFFFFF;--md-sys-color-tertiary-container:#FFD8E4;--md-sys-color-on-tertiary-container:#31111D;--md-sys-color-surface:#FFFBFE;--md-sys-color-on-surface:#1C1B1F;--md-sys-color-surface-variant:#E7E0EC;--md-sys-color-on-surface-variant:#49454F;--md-sys-color-outline:#79747E;--md-sys-color-outline-variant:#CAC4D0;--tier-bronze:#CD7F32;--tier-bronze-container:#FCE4C8;--tier-silver:#C0C0C0;--tier-silver-container:#E8E8E8;--tier-gold:#FFD700;--tier-gold-container:#FFF5C2;--tier-diamond:#B9F2FF;--tier-diamond-container:#E0F7FA}.m3-progress-linear{position:relative;width:100%;height:4px;background:var(--md-sys-color-surface-variant);border-radius:2px;overflow:hidden}.m3-progress-linear .progress-track{position:absolute;inset:0;background:var(--md-sys-color-surface-variant)}.m3-progress-linear .progress-indicator{position:absolute;top:0;left:0;height:100%;background:var(--md-sys-color-primary);border-radius:2px;transition:width .3s}.m3-progress-linear .progress-indicator.active{background:linear-gradient(90deg,var(--md-sys-color-primary),var(--md-sys-color-primary-container))}.m3-progress-linear .progress-indicator.tier-bronze{background:linear-gradient(90deg,var(--tier-bronze),var(--tier-bronze-container))}.m3-progress-linear .progress-indicator.tier-silver{background:linear-gradient(90deg,var(--tier-silver),var(--tier-silver-container))}.m3-progress-linear .progress-indicator.tier-gold{background:linear-gradient(90deg,var(--tier-gold),var(--tier-gold-container))}.m3-progress-linear .progress-indicator.tier-diamond{background:linear-gradient(90deg,var(--tier-diamond),var(--tier-diamond-container))}.m3-progress-linear.buffered .progress-buffer{position:absolute;top:0;left:0;height:100%;background:var(--md-sys-color-primary-container);opacity:.3;transition:width .3s}.m3-progress-linear.indeterminate .progress-indicator{animation:2.1s cubic-bezier(.65,.815,.735,.395) infinite indeterminate}@keyframes indeterminate{0%{left:-35%;right:100%}100%,60%{left:100%;right:-90%}}.m3-progress-circular{position:relative;display:inline-flex;align-items:center;justify-content:center}.m3-progress-circular svg{width:48px;height:48px;transform:rotate(-90deg)}.m3-progress-circular .progress-track{fill:none;stroke:var(--md-sys-color-surface-variant);stroke-width:3.6}.m3-progress-circular .progress-indicator{fill:none;stroke:var(--md-sys-color-primary);stroke-width:3.6;stroke-linecap:round;stroke-dasharray:126;stroke-dashoffset:126;transition:stroke-dashoffset .5s}.m3-progress-circular .progress-label{position:absolute;font-size:.75rem;font-weight:500;color:var(--md-sys-color-on-surface)}.m3-tier-card{position:relative;background:var(--md-sys-color-surface);border-radius:16px;padding:24px;border:1px solid var(--md-sys-color-outline-variant);transition:.3s;overflow:hidden}.m3-tier-card:hover{border-color:var(--md-sys-color-primary);box-shadow:0 4px 12px rgba(103,80,164,.15);transform:translateY(-4px)}.m3-tier-card.tier-bronze{background:linear-gradient(135deg,var(--md-sys-color-surface),var(--tier-bronze-container));border-color:var(--tier-bronze)}.m3-tier-card.tier-bronze .tier-header{color:var(--tier-bronze)}.m3-tier-card.tier-silver{background:linear-gradient(135deg,var(--md-sys-color-surface),var(--tier-silver-container));border-color:var(--tier-silver)}.m3-tier-card.tier-silver .tier-header{color:var(--tier-silver)}.m3-tier-card.tier-gold{background:linear-gradient(135deg,var(--md-sys-color-surface),var(--tier-gold-container));border-color:var(--tier-gold)}.m3-tier-card.tier-gold .tier-header{color:var(--tier-gold)}.m3-tier-card.tier-diamond{background:linear-gradient(135deg,var(--md-sys-color-surface),var(--tier-diamond-container));border-color:var(--tier-diamond)}.m3-tier-card.tier-diamond .tier-header{color:var(--tier-diamond)}.m3-tier-card.active{border-width:2px;box-shadow:0 6px 20px rgba(103,80,164,.2)}.m3-tier-card.active::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--md-sys-color-primary),var(--md-sys-color-primary-container))}.m3-tier-card .tier-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.m3-tier-card .tier-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.m3-tier-card .tier-icon .material-symbols-outlined{font-size:28px}.m3-tier-card .tier-info{flex:1}.m3-tier-card .tier-name{font-size:1.25rem;font-weight:600;color:var(--md-sys-color-on-surface);margin-bottom:2px}.m3-tier-card .tier-label{font-size:.75rem;color:var(--md-sys-color-outline);text-transform:uppercase;letter-spacing:.5px}.m3-tier-card .tier-body{margin-top:16px}.m3-tier-card .tier-points{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--md-sys-color-outline-variant)}.m3-tier-card .tier-points:last-child{border-bottom:none}.m3-tier-card .tier-points-label{font-size:.875rem;color:var(--md-sys-color-on-surface-variant)}.m3-tier-card .tier-points-value{font-size:.875rem;font-weight:600;color:var(--md-sys-color-on-surface)}.m3-tier-card .tier-benefits{margin-top:16px;padding-top:16px;border-top:1px solid var(--md-sys-color-outline-variant)}.m3-tier-card .tier-benefits h4{font-size:.875rem;font-weight:500;color:var(--md-sys-color-on-surface);margin-bottom:12px}.m3-tier-card .benefit-list{list-style:none;padding:0;margin:0}.m3-tier-card .benefit-item{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:.875rem;color:var(--md-sys-color-on-surface-variant)}.m3-tier-card .benefit-item:last-child{margin-bottom:0}.m3-tier-card .benefit-item .material-symbols-outlined{font-size:16px;color:var(--md-sys-color-primary);flex-shrink:0;margin-top:2px}.m3-tier-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;font-size:.875rem;font-weight:500;border:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface)}.m3-tier-chip.active{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary)}.m3-tier-chip .material-symbols-outlined{font-size:18px}.m3-tier-progress-container{background:var(--md-sys-color-surface);border-radius:16px;padding:24px;border:1px solid var(--md-sys-color-outline-variant);margin:24px 0}.m3-tier-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.m3-tier-progress-header .current-tier{display:flex;align-items:center;gap:12px}.m3-tier-progress-header .current-tier-icon{width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.m3-tier-progress-header .current-tier-info h3{font-size:1rem;font-weight:600;color:var(--md-sys-color-on-surface);margin-bottom:2px}.m3-tier-progress-header .current-tier-info p{font-size:.75rem;color:var(--md-sys-color-outline)}.m3-tier-progress-header .next-tier{text-align:right}.m3-tier-progress-header .next-tier h3{font-size:.875rem;font-weight:500;color:var(--md-sys-color-on-surface)}.m3-tier-progress-header .next-tier p{font-size:.75rem;color:var(--md-sys-color-outline)}.m3-progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.m3-progress-info .progress-points{font-size:.875rem;font-weight:500;color:var(--md-sys-color-on-surface)}.m3-progress-info .progress-percentage{font-size:.75rem;color:var(--md-sys-color-outline)}.m3-progress-hint{margin-top:12px;font-size:.875rem;color:var(--md-sys-color-outline);text-align:center}.m3-progress-hint strong{color:var(--md-sys-color-primary)}.m3-tier-badges-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:24px}.m3-tier-badge-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.m3-tier-badge-item .badge-icon{width:48px;height:48px;border-radius:24px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);transition:.3s}.m3-tier-badge-item.achieved .badge-icon{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.m3-tier-badge-item .badge-label{font-size:.75rem;font-weight:500;color:var(--md-sys-color-on-surface-variant);text-align:center}.m3-tier-badge-item.achieved .badge-label{color:var(--md-sys-color-on-surface)}.m3-points-card{background:var(--md-sys-color-surface);border-radius:16px;padding:24px;border:1px solid var(--md-sys-color-outline-variant);text-align:center}.m3-points-card .points-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:32px;display:flex;align-items:center;justify-content:center;font-size:2rem;background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.m3-points-card .points-value{font-size:3rem;font-weight:700;color:var(--md-sys-color-primary);line-height:1;margin-bottom:8px}.m3-points-card .points-label{font-size:.875rem;color:var(--md-sys-color-outline);margin-bottom:16px}.m3-points-card .points-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-top:16px;border-top:1px solid var(--md-sys-color-outline-variant)}.m3-points-card .breakdown-item{text-align:center}.m3-points-card .breakdown-value{font-size:1.25rem;font-weight:600;color:var(--md-sys-color-on-surface)}.m3-points-card .breakdown-label{font-size:.75rem;color:var(--md-sys-color-outline)}@media (max-width:768px){.m3-tier-badges-row{overflow-x:auto;justify-content:flex-start;padding-bottom:8px}.m3-tier-badge-item{flex-shrink:0}.m3-tier-progress-header{flex-direction:column;align-items:flex-start;gap:16px}.m3-tier-progress-header .next-tier{text-align:left}}@media (max-width:375px){.m3-tier-card{padding:16px}.m3-tier-card .tier-icon{width:40px;height:40px}.m3-points-card .points-value{font-size:2.5rem}}