.pin-input-container{display:flex;justify-content:space-between;align-items:center;width:100%;gap:var(--space-2)}.pin-input{--background: var(--color-input-bg);--color: var(--color-text-primary);--placeholder-color: var(--color-input-placeholder);--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;flex:1 1 0;min-width:0;text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);background:var(--color-input-bg);border:1.5px solid var(--color-input-border);border-radius:var(--radius-md);height:52px;margin:0;caret-color:var(--color-brand-primary);transition:border-color var(--motion-duration-fast) var(--motion-ease-out),box-shadow var(--motion-duration-fast) var(--motion-ease-out),background var(--motion-duration-fast) var(--motion-ease-out)}.pin-input::part(native){background:var(--color-input-bg);color:var(--color-text-primary);text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);padding:0;caret-color:var(--color-brand-primary)}.pin-input:focus-within{border-color:var(--color-brand-primary);background:var(--color-input-bg-focus);box-shadow:0 0 0 3px rgba(var(--color-brand-primary-rgb),.22)}.pin-input:focus-within::part(native){background:var(--color-input-bg-focus)}ion-item:has(>.pin-input-container){--background: transparent;--padding-start: 0;--padding-end: 0;--inner-padding-end: 0;--inner-padding-start: 0;--min-height: 52px;--border-color: transparent}.resend-button-container{display:flex;justify-content:flex-end;margin-top:16px}.resend-button{font-size:.6rem}.resend-text{font-size:.8rem;margin-left:8px}.tutorial-modal{--width: 100%;--height: 100%;--border-radius: 0}.tutorial-modal::part(backdrop){background:#000c;backdrop-filter:blur(10px)}.tutorial-content{--background: linear-gradient(180deg, var(--color-surface-1) 0%, var(--color-surface-canvas) 100%);--padding-top: 0;--padding-bottom: 0}.tutorial-close-button{position:absolute;top:16px;right:16px;z-index:1000}.tutorial-close-button ion-button{--color: var(--color-text-primary);--background: rgba(255, 255, 255, .1);--border-radius: 50%;width:40px;height:40px}.tutorial-header{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-brand-primary-pressed) 100%);padding:40px 24px 32px;text-align:center;border-bottom:3px solid rgba(255,255,255,.1)}.tutorial-logo{margin-bottom:16px}.logo-text{font-size:3rem;font-weight:900;color:var(--color-text-primary);text-shadow:2px 2px 8px rgba(0,0,0,.3);letter-spacing:2px}.tutorial-title{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin:0 0 12px;line-height:1.3}.tutorial-subtitle{font-size:.95rem;color:var(--color-text-primary);line-height:1.5;max-width:400px;margin:0 auto}.tutorial-slides{height:calc(100vh - 450px);min-height:300px;padding:0}.tutorial-slides .swiper-wrapper{height:100%}.tutorial-slide{display:flex;align-items:flex-start;justify-content:flex-start;padding:24px;height:auto}.slide-content{width:100%;max-width:600px;margin:0 auto}.slide-step{display:flex;align-items:center;gap:20px;margin-bottom:24px}.step-number{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-brand-primary-pressed) 100%);width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #2dd36f4d}.step-number span{font-size:1.5rem;font-weight:900;color:var(--color-text-primary);text-shadow:0 2px 4px rgba(0,0,0,.2)}.step-icon{width:60px;height:60px;background:#ffffff0d;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.1)}.icon-emoji{font-size:2rem}.slide-text{text-align:left}.slide-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0 0 12px;line-height:1.3}.slide-description{font-size:.95rem;color:var(--color-text-secondary);line-height:1.6;margin:0 0 16px}.slide-tips{list-style:none;padding:0;margin:16px 0 0}.slide-tips li{font-size:.9rem;color:var(--color-text-secondary);padding:8px 0 8px 28px;position:relative;line-height:1.5}.slide-tips li:before{content:"✓";position:absolute;left:0;color:var(--color-success);font-weight:700;font-size:1.1rem}.slide-image{margin-top:20px;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000004d}.slide-image img{width:100%;height:auto;display:block}.tutorial-progress{display:flex;justify-content:center;align-items:center;gap:12px;padding:20px 24px;background:#0003}.progress-dot{width:10px;height:10px;border-radius:50%;background:#fff3;transition:all .3s ease;cursor:pointer}.progress-dot.active{width:32px;border-radius:5px;background:linear-gradient(135deg,var(--color-success) 0%,var(--color-brand-primary-pressed) 100%);box-shadow:0 2px 8px #2dd36f66}.progress-dot.completed{background:#2dd36f80}.tutorial-footer{padding:16px 24px 20px;background:#0000004d;border-top:1px solid rgba(255,255,255,.1)}.dont-show-wrapper{display:flex;align-items:center;gap:12px;margin-bottom:16px;justify-content:center}.dont-show-wrapper ion-checkbox{--size: 20px;--background-checked: var(--color-success);--border-color-checked: var(--color-success)}.dont-show-text{font-size:.9rem;color:var(--color-text-secondary);user-select:none}.tutorial-buttons{display:flex;justify-content:space-between;align-items:center;gap:12px}.btn-prev,.btn-skip{--color: var(--color-text-secondary);font-size:.9rem;font-weight:600}.btn-prev:hover,.btn-skip:hover{--color: var(--color-text-primary)}.btn-next{--background: linear-gradient(135deg, var(--color-success) 0%, var(--color-brand-primary-pressed) 100%);--color: var(--color-text-primary);font-weight:700;font-size:1rem;--border-radius: 12px;--padding-start: 24px;--padding-end: 24px;height:48px;box-shadow:0 4px 16px #2dd36f4d;flex:1;max-width:200px;margin-left:auto}.btn-next:hover{--background: linear-gradient(135deg, var(--color-brand-primary-pressed) 0%, var(--color-success) 100%);box-shadow:0 6px 20px #2dd36f66}.tutorial-branding{padding:20px 24px 24px;text-align:center;background:#0003;border-top:1px solid rgba(255,255,255,.05)}.branding-text{font-size:1rem;color:var(--color-text-primary);margin:0 0 12px;font-weight:500}.branding-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;font-size:.85rem;color:var(--color-text-tertiary)}@media (max-width: 576px){.tutorial-header{padding:32px 20px 24px}.tutorial-title{font-size:1.4rem}.tutorial-subtitle{font-size:.85rem}.tutorial-slides{height:calc(100vh - 420px)}.tutorial-slides .swiper-wrapper{height:100%}.tutorial-slide{padding:16px}.slide-step{gap:16px;margin-bottom:20px}.step-number{width:48px;height:48px}.step-number span{font-size:1.3rem}.step-icon{width:52px;height:52px}.icon-emoji{font-size:1.75rem}.slide-title{font-size:1.25rem}.slide-description{font-size:.9rem}.tutorial-buttons{flex-wrap:wrap}.btn-next{flex:1;max-width:100%;order:-1}.btn-prev,.btn-skip{flex:1}}@media (min-width: 768px){.tutorial-modal{--width: 90%;--height: 90%;--border-radius: 24px}.tutorial-slides{height:calc(90vh - 450px)}.tutorial-slides .swiper-wrapper{height:100%}.slide-content{max-width:700px}}@media (min-width: 1024px){.tutorial-modal{--width: 800px;--height: 85%}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.slide-content{animation:slideInUp .5s ease-out}@media (prefers-reduced-motion: reduce){.tutorial-content,.slide-content,.progress-dot,.btn-next{animation:none!important;transition:none!important}}.tutorial-buttons ion-button:focus-visible{outline:2px solid var(--color-success);outline-offset:2px}.logo-image{height:60px;width:auto}.scanner-content{--background: transparent}html.scanner-active,html.scanner-active body,html.scanner-active ion-app,html.scanner-active ion-router-outlet,html.scanner-active ion-page,html.scanner-active ion-content,html.scanner-active ion-tabs,html.scanner-active ion-tab-bar{background:transparent!important;background-color:transparent!important;--background: transparent !important;--ion-background-color: transparent !important}.scan-frame{position:relative;width:280px;height:280px;margin:50% auto 0;transform:translateY(-50%);border-radius:16px;box-shadow:0 0 0 9999px #0000009e,0 0 24px rgba(var(--color-brand-primary-rgb),.35);animation:scanFrameBreathe 2.4s ease-in-out infinite;transition:transform .28s cubic-bezier(.34,1.56,.64,1)}@keyframes scanFrameBreathe{0%,to{box-shadow:0 0 0 9999px #0000009e,0 0 14px rgba(var(--color-brand-primary-rgb),.25)}50%{box-shadow:0 0 0 9999px #0000009e,0 0 28px rgba(var(--color-brand-primary-rgb),.55)}}.scan-corners{position:absolute;inset:0;pointer-events:none;z-index:2}.scan-corners .corner{position:absolute;width:32px;height:32px;border:3px solid var(--color-brand-primary);filter:drop-shadow(0 0 6px rgba(var(--color-brand-primary-rgb),.6));animation:cornerPulse 2s ease-in-out infinite}.scan-corners .corner.tl{top:-3px;left:-3px;border-right:none;border-bottom:none;border-top-left-radius:16px}.scan-corners .corner.tr{top:-3px;right:-3px;border-left:none;border-bottom:none;border-top-right-radius:16px}.scan-corners .corner.bl{bottom:-3px;left:-3px;border-right:none;border-top:none;border-bottom-left-radius:16px}.scan-corners .corner.br{bottom:-3px;right:-3px;border-left:none;border-top:none;border-bottom-right-radius:16px}@keyframes cornerPulse{0%,to{filter:drop-shadow(0 0 4px rgba(var(--color-brand-primary-rgb),.4))}50%{filter:drop-shadow(0 0 12px rgba(var(--color-brand-primary-rgb),.85))}}.scan-line{position:absolute;left:8%;right:8%;height:2px;top:0;background:linear-gradient(90deg,transparent 0%,rgba(var(--color-brand-primary-rgb),.4) 20%,var(--color-brand-primary) 50%,rgba(var(--color-brand-primary-rgb),.4) 80%,transparent 100%);filter:drop-shadow(0 0 8px rgba(var(--color-brand-primary-rgb),.85));animation:scanSweep 2.2s linear infinite;pointer-events:none;z-index:1}@keyframes scanSweep{0%{top:0%;opacity:0}10%{top:0%;opacity:1}90%{top:calc(100% - 2px);opacity:1}to{top:calc(100% - 2px);opacity:0}}.mobile-scanner-overlay{position:fixed;inset:0;z-index:var(--z-modal);pointer-events:none}.scan-instruction{position:absolute;bottom:100px;left:50%;transform:translate(-50%);color:#f8fafc;font-size:15px;font-weight:600;letter-spacing:.2px;text-align:center;background:#0f172ad1;border:1px solid rgba(var(--color-brand-primary-rgb),.35);padding:12px 24px;border-radius:12px;box-shadow:0 4px 16px #0006;animation:instructionBreathe 2.6s ease-in-out infinite;white-space:nowrap}@keyframes instructionBreathe{0%,to{border-color:rgba(var(--color-brand-primary-rgb),.35);box-shadow:0 4px 16px #0006}50%{border-color:rgba(var(--color-brand-primary-rgb),.7);box-shadow:0 4px 16px #0006,0 0 0 3px rgba(var(--color-brand-primary-rgb),.12)}}.scan-frame.found{animation:scanFrameBreathe 2.4s ease-in-out infinite,scanFrameFound .4s cubic-bezier(.34,1.56,.64,1)}@keyframes scanFrameFound{0%{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.06)}to{transform:translateY(-50%) scale(1)}}.scan-frame.found .corner{animation:cornerFound .4s ease-out forwards;border-color:#fff}@keyframes cornerFound{0%{filter:drop-shadow(0 0 4px rgba(var(--color-brand-primary-rgb),.4))}50%{filter:drop-shadow(0 0 28px rgba(var(--color-brand-primary-rgb),1))}to{filter:drop-shadow(0 0 12px rgba(var(--color-brand-primary-rgb),.85))}}.scan-frame.found .scan-line{animation:none;opacity:0}.scan-start-button{--background: var(--color-brand-primary);--background-hover: var(--color-brand-primary-hover);--background-activated: var(--color-brand-primary-pressed);--color: var(--color-on-brand);--border-radius: 14px;--padding-top: 16px;--padding-bottom: 16px;--box-shadow: 0 4px 16px rgba(var(--color-brand-primary-rgb), .4);font-weight:700;letter-spacing:.3px;margin:24px}.qr-scanner-web{width:100%;height:100%;border-radius:14px;overflow:hidden;position:relative;z-index:0}.qr-scanner-web video{width:100%;height:100%;object-fit:cover;border-radius:14px}@media (prefers-reduced-motion: reduce){.scan-frame,.scan-frame.found,.scan-corners .corner,.scan-line,.scan-instruction{animation:none!important}.scan-line{opacity:.7;top:50%}}.more-popover{--min-width: 180px;--height: 260px;--max-height: 800px;--offset-y: -10px;--border-radius: var(--radius-md);--background: var(--color-surface-2);--color: var(--color-text-primary);--box-shadow: var(--shadow-3);color:var(--color-text-primary)}.more-popover ion-content{--background: var(--color-surface-2);--color: var(--color-text-primary)}.more-popover ion-list{background:var(--color-surface-2);color:var(--color-text-primary);padding:var(--space-1)}.more-popover ion-item{--background: transparent;--color: var(--color-text-primary);--border-color: var(--color-border-subtle)}.more-popover ion-item:hover{--background: var(--color-row-bg-hover)}.more-popover ion-item ion-icon[slot=start]{color:var(--color-text-secondary)}.more-popover .menu-label{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:var(--z-toast, 99999);display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 10px) 16px 10px 16px;background:linear-gradient(135deg,var(--color-warning-bg, rgba(255, 193, 7, .18)),var(--color-warning-bg, rgba(255, 193, 7, .12)));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,193,7,.4);color:var(--color-text-primary);font-size:.85rem;font-weight:500;letter-spacing:.1px;box-shadow:0 4px 14px #0000001f;animation:offlineBannerSlideIn .24s cubic-bezier(.34,1.56,.64,1)}@keyframes offlineBannerSlideIn{0%{transform:translateY(-100%)}to{transform:translateY(0)}}[data-theme=light] .offline-banner{background:linear-gradient(135deg,#92400e1f,#92400e0f);border-bottom-color:#92400e4d;color:var(--color-text-primary)}.offline-banner-icon{font-size:18px;color:var(--color-warning, #FBBF24);flex-shrink:0}.offline-banner-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offline-banner-retry{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(var(--color-brand-primary-rgb),.35);background:rgba(var(--color-brand-primary-rgb),.12);color:var(--color-brand-primary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .16s ease,transform .16s ease;min-height:28px}.offline-banner-retry:hover{background:rgba(var(--color-brand-primary-rgb),.2)}.offline-banner-retry:active{transform:scale(.97)}.offline-banner-retry:disabled{opacity:.6;cursor:not-allowed}.offline-banner-spinner{--color: var(--color-brand-primary);width:18px;height:18px}@media (prefers-reduced-motion: reduce){.offline-banner{animation:none}}.game-container{min-height:100%;height:100%;display:flex;flex-direction:column;font-family:inherit;color:var(--color-text-primary);background:radial-gradient(120% 70% at 50% -10%,rgba(var(--color-brand-primary-rgb),.12),transparent 60%),radial-gradient(90% 60% at 100% 110%,rgba(96,165,250,.08),transparent 55%),var(--color-surface-canvas, var(--color-surface-1));padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-5),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-5),env(safe-area-inset-left));overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.game-card{background:var(--color-surface-2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-2xl);padding:var(--space-7, 40px) var(--space-6, 32px);max-width:520px;width:100%;box-shadow:var(--shadow-2);text-align:center;position:relative;margin:auto;box-sizing:border-box}.connection-status{position:absolute;top:var(--space-4);right:var(--space-4);display:flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--radius-full);font-size:var(--font-size-2xs, 11px);font-weight:var(--font-weight-bold);letter-spacing:.3px;background:#ffffff0d;color:var(--color-text-secondary)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--color-danger)}.connection-status.online .status-dot{background:var(--color-success);box-shadow:0 0 8px rgba(var(--color-brand-primary-rgb),.7)}.connection-status.offline .status-dot{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.game-title{font-size:var(--font-size-3xl, 30px);margin:0 0 var(--space-2) 0;color:var(--color-text-primary);font-weight:var(--font-weight-extrabold);line-height:1.15}.game-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base, 16px);line-height:1.5;margin:0 0 var(--space-2) 0}.offline-hint{color:var(--color-text-tertiary);font-size:var(--font-size-xs, 12px);font-style:italic;margin:0 0 var(--space-6) 0;line-height:1.4}.score-container{display:flex;justify-content:space-around;align-items:stretch;margin-bottom:var(--space-6);gap:var(--space-4)}.score-box{flex:1;padding:var(--space-5, 20px) var(--space-3);border-radius:var(--radius-xl)}.player-score{background:linear-gradient(135deg,var(--color-brand-primary-hover, #44EE9B) 0%,var(--color-brand-primary) 100%);color:var(--color-text-on-brand, #003319)}.computer-score{background:linear-gradient(135deg,#f87171 0%,var(--color-danger) 100%);color:#fff}.score-label{font-size:var(--font-size-xs, 12px);font-weight:var(--font-weight-bold);letter-spacing:.6px;opacity:.85;margin-bottom:4px}.score-value{font-size:44px;font-weight:var(--font-weight-extrabold);line-height:1;font-variant-numeric:tabular-nums}.vs-text{display:flex;align-items:center;font-size:var(--font-size-xl, 20px);color:var(--color-text-tertiary);font-weight:var(--font-weight-bold)}.game-over{padding:var(--space-7, 36px) var(--space-5);border-radius:var(--radius-xl);margin-bottom:var(--space-5)}.game-over.won{background:linear-gradient(135deg,var(--color-brand-primary-hover, #44EE9B) 0%,var(--color-brand-primary-pressed) 100%);color:var(--color-text-on-brand, #003319)}.game-over.lost{background:linear-gradient(135deg,#f87171 0%,var(--color-danger) 100%);color:#fff}.game-over-emoji{font-size:64px;margin-bottom:var(--space-2)}.game-over-title{font-size:var(--font-size-3xl, 30px);font-weight:var(--font-weight-extrabold);margin:0 0 var(--space-2) 0}.game-over-score{font-size:var(--font-size-md, 17px);opacity:.9;margin:0;font-variant-numeric:tabular-nums}.round-result{padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:var(--font-size-xl, 20px);font-weight:var(--font-weight-bold);animation:shake .5s}.round-result.win{background:rgba(var(--color-brand-primary-rgb),.15);color:var(--color-brand-primary);border:1px solid rgba(var(--color-brand-primary-rgb),.35)}.round-result.lose{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.35)}.round-result.draw{background:#ffffff0f;color:var(--color-text-secondary);border:1px solid rgba(255,255,255,.12)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.choices-display{display:flex;justify-content:space-around;margin-bottom:var(--space-6);gap:var(--space-4)}.choice-box{flex:1;padding:var(--space-4);background:var(--color-surface-3);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md)}.choice-emoji{font-size:56px;margin-bottom:var(--space-2)}.choice-label{font-size:var(--font-size-sm, 14px);color:var(--color-text-tertiary);text-transform:capitalize}.action-buttons{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.choice-button{padding:var(--space-4) var(--space-5);font-size:44px;border:1px solid rgba(var(--color-brand-primary-rgb),.4);border-radius:var(--radius-lg);background:var(--color-surface-3);color:var(--color-text-primary);cursor:pointer;transition:transform var(--motion-duration-fast, .15s) var(--motion-ease-out, ease-out),box-shadow var(--motion-duration-fast, .15s) ease,border-color var(--motion-duration-fast, .15s) ease;min-width:96px;-webkit-tap-highlight-color:transparent}.choice-button:hover:not(.disabled){transform:scale(1.05);border-color:var(--color-brand-primary);box-shadow:0 6px 20px rgba(var(--color-brand-primary-rgb),.35)}.choice-button.disabled{opacity:.5;cursor:not-allowed;transform:scale(.96)}.choice-button:active:not(.disabled){transform:scale(.97)}.reset-button{padding:13px var(--space-7, 36px);font-size:var(--font-size-md, 17px);border:none;border-radius:var(--radius-md);background:var(--color-brand-primary);color:var(--color-text-on-brand, #003319);cursor:pointer;font-weight:var(--font-weight-bold);box-shadow:0 4px 14px rgba(var(--color-brand-primary-rgb),.4);transition:transform var(--motion-duration-fast, .15s) var(--motion-ease-out, ease-out)}.reset-button:hover{transform:scale(1.04)}.reset-button:active{transform:scale(.97)}.round-counter{margin-top:var(--space-6);color:var(--color-text-tertiary);font-size:var(--font-size-sm, 14px)}@media (max-width: 640px){.game-card{padding:var(--space-6) var(--space-5);padding-top:56px}.game-title{font-size:var(--font-size-2xl, 24px);margin-bottom:4px}.game-subtitle{margin-bottom:var(--space-4)}.score-container{margin-bottom:var(--space-5);gap:var(--space-3)}.score-box{padding:var(--space-4) var(--space-2)}.score-value{font-size:32px}.game-over{padding:var(--space-6) var(--space-4)}.game-over-emoji{font-size:52px}.game-over-title{font-size:var(--font-size-2xl, 24px)}.choice-button{font-size:34px;padding:var(--space-3) var(--space-4);min-width:76px}.round-counter{margin-top:var(--space-4)}.connection-status{top:var(--space-3);right:var(--space-3)}}.cbk-root{min-height:100%;height:100%;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;padding:max(var(--space-5),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-5),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left));overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:manipulation;color:var(--color-text-primary);background:radial-gradient(120% 70% at 50% -10%,rgba(var(--color-brand-primary-rgb),.12),transparent 60%),radial-gradient(90% 60% at 100% 110%,rgba(251,191,36,.08),transparent 55%),var(--color-surface-canvas, var(--color-surface-1))}.cbk-card{position:relative;width:100%;max-width:460px;margin:auto;box-sizing:border-box;padding:var(--space-6) var(--space-5) var(--space-5);background:var(--color-surface-2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2);overflow:hidden}.cbk-conn{position:absolute;top:var(--space-4);right:var(--space-4);display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-2xs, 11px);font-weight:var(--font-weight-bold);letter-spacing:.3px;padding:5px 10px;border-radius:var(--radius-full);background:#ffffff0d;color:var(--color-text-secondary)}.cbk-conn .cbk-dot{width:7px;height:7px;border-radius:50%;background:var(--color-danger)}.cbk-conn.online .cbk-dot{background:var(--color-success);box-shadow:0 0 8px rgba(var(--color-brand-primary-rgb),.7)}.cbk-conn.offline .cbk-dot{animation:cbk-pulse 1.8s ease-in-out infinite}@keyframes cbk-pulse{0%,to{opacity:1}50%{opacity:.35}}.cbk-head{text-align:center;margin-bottom:var(--space-4);padding-right:70px;padding-left:70px}.cbk-title{margin:0 0 4px;font-size:var(--font-size-2xl, 24px);font-weight:var(--font-weight-extrabold);line-height:1.15;color:var(--color-text-primary)}.cbk-sub{margin:0;font-size:var(--font-size-sm, 14px);line-height:1.45;color:var(--color-text-secondary)}.cbk-bar{display:flex;align-items:center;justify-content:space-between;margin:var(--space-4) 2px var(--space-3)}.cbk-round{font-size:var(--font-size-xs, 12px);font-weight:var(--font-weight-bold);letter-spacing:.6px;text-transform:uppercase;color:var(--color-text-tertiary)}.cbk-score{font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-extrabold);color:var(--color-brand-primary);font-variant-numeric:tabular-nums}.cbk-arena{display:flex;gap:var(--space-4);align-items:stretch}.cbk-meter{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin:0;padding:0;border:none;background:transparent;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent;touch-action:none;user-select:none}.cbk-meter:disabled{cursor:default}.cbk-track{position:relative;width:100%;height:clamp(190px,40vh,290px);border-radius:var(--radius-xl);background:var(--color-surface-1);border:1px solid rgba(255,255,255,.07);box-shadow:inset 0 2px 10px #00000059;overflow:hidden}.cbk-meter:active .cbk-track{transform:scale(.98)}.cbk-track,.cbk-meter:active .cbk-track{transition:transform var(--motion-duration-fast, .15s) var(--motion-ease-out, ease-out)}.cbk-overflow{position:absolute;top:0;left:0;right:0;height:8%;background:repeating-linear-gradient(45deg,#ef44442e 0 7px,#ef44440d 7px 14px);border-bottom:1px solid rgba(239,68,68,.4);z-index:2}.cbk-fill{position:absolute;left:0;right:0;bottom:0;height:0%;z-index:1;background:linear-gradient(180deg,var(--color-brand-primary-hover, #44EE9B),var(--color-brand-primary));box-shadow:0 0 14px rgba(var(--color-brand-primary-rgb),.4);transition:background var(--motion-duration-base, .22s) ease,box-shadow var(--motion-duration-base, .22s) ease}.cbk-fill:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:#ffffff8c;filter:blur(2px);opacity:.7}.cbk-chai .cbk-fill{background:linear-gradient(180deg,#f6c56b,#c8862f);box-shadow:0 0 14px #fbbf2466}.cbk-fill.cbk-ready{box-shadow:0 0 22px rgba(var(--color-brand-primary-rgb),.85);animation:cbk-ready .5s ease-in-out infinite alternate}.cbk-chai .cbk-fill.cbk-ready{box-shadow:0 0 22px #fbbf24d9}@keyframes cbk-ready{0%{filter:brightness(1)}to{filter:brightness(1.25)}}.cbk-fill.cbk-overzone{background:linear-gradient(180deg,#fca5a5,var(--color-danger));box-shadow:0 0 18px #ef444499}.cbk-band{position:absolute;left:0;right:0;z-index:2;background:rgba(var(--color-brand-primary-rgb),.16);border-top:2px dashed rgba(var(--color-brand-primary-rgb),.9);border-bottom:2px dashed rgba(var(--color-brand-primary-rgb),.9);pointer-events:none}.cbk-mascot{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:3;font-size:30px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4));pointer-events:none}.cbk-meter.cbk-perfect .cbk-track{border-color:rgba(var(--color-brand-primary-rgb),.8);box-shadow:inset 0 0 0 2px rgba(var(--color-brand-primary-rgb),.5),0 0 18px rgba(var(--color-brand-primary-rgb),.35)}.cbk-meter.cbk-perfect .cbk-fill{background:linear-gradient(180deg,var(--color-brand-primary-hover, #44EE9B),var(--color-brand-primary))}.cbk-meter.cbk-miss .cbk-track{border-color:#ef4444cc;animation:cbk-shake .4s}.cbk-meter.cbk-miss .cbk-fill{background:linear-gradient(180deg,#fca5a5,var(--color-danger))!important}@keyframes cbk-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.cbk-meter-label{font-size:var(--font-size-sm, 14px);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.cbk-meter-action{font-size:var(--font-size-2xs, 11px);font-weight:var(--font-weight-bold);letter-spacing:.4px;text-transform:uppercase;color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.12);border:1px solid rgba(var(--color-brand-primary-rgb),.35);padding:4px 12px;border-radius:var(--radius-full)}.cbk-flash{min-height:26px;margin:var(--space-3) 0 var(--space-2);text-align:center;font-size:var(--font-size-sm, 14px);font-weight:var(--font-weight-bold);color:var(--color-brand-primary);opacity:0;transform:translateY(4px) scale(.96);transition:opacity var(--motion-duration-fast, .15s),transform var(--motion-duration-fast, .15s)}.cbk-flash.cbk-show{opacity:1;transform:translateY(0) scale(1);text-shadow:0 0 12px rgba(var(--color-brand-primary-rgb),.6)}.cbk-stats{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.cbk-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 8px;background:var(--color-surface-3);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md)}.cbk-stat-v{font-size:var(--font-size-xl, 20px);font-weight:var(--font-weight-extrabold);color:var(--color-brand-primary);line-height:1;font-variant-numeric:tabular-nums}.cbk-stat-l{font-size:var(--font-size-2xs, 11px);font-weight:var(--font-weight-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-tertiary)}.cbk-hint{margin:var(--space-4) 0 0;text-align:center;font-size:var(--font-size-xs, 12px);font-style:italic;line-height:1.4;color:var(--color-text-tertiary)}.cbk-over{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);text-align:center;background:var(--color-surface-2);background:color-mix(in srgb,var(--color-surface-2) 90%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;animation:cbk-fade var(--motion-duration-base, .22s) ease-out}@keyframes cbk-fade{0%{opacity:0}to{opacity:1}}.cbk-over-emoji{font-size:60px;line-height:1}.cbk-over-msg{font-size:var(--font-size-md, 17px);font-weight:var(--font-weight-bold);color:var(--color-text-primary);max-width:280px}.cbk-over-score{font-size:var(--font-size-sm, 14px);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.cbk-retry{margin-top:var(--space-2);padding:12px 28px;font-size:var(--font-size-base, 16px);font-weight:var(--font-weight-bold);font-family:inherit;color:var(--color-text-on-brand, var(--color-on-brand));background:var(--color-brand-primary);border:none;border-radius:var(--radius-md);cursor:pointer;touch-action:manipulation;box-shadow:0 4px 14px rgba(var(--color-brand-primary-rgb),.4);transition:transform var(--motion-duration-fast, .15s) var(--motion-ease-out, ease-out)}.cbk-retry:active{transform:scale(.96)}@media (max-width: 380px){.cbk-card{padding:var(--space-5) var(--space-4) var(--space-4)}.cbk-head{padding-left:var(--space-2);padding-right:var(--space-2);margin-top:var(--space-2)}.cbk-conn{top:var(--space-3);right:var(--space-3)}}ion-modal.offline-game-modal{--width: 100%;--height: 100%;--min-width: 100%;--min-height: 100%;--max-width: 100%;--max-height: 100%;--border-radius: 0;--box-shadow: none;--backdrop-opacity: 1;--background: var(--color-surface-canvas, var(--color-surface-1))}ion-modal.offline-game-modal::part(content){width:100%;height:100%;border-radius:0;background:var(--color-surface-canvas, var(--color-surface-1))}ion-modal.offline-game-modal::part(handle){display:none}.floating-chat-bubble{position:fixed;bottom:80px;right:16px;z-index:var(--z-toast);background:linear-gradient(135deg,var(--color-surface-1) 0%,var(--color-surface-3) 100%);border:1px solid var(--color-brand-primary);border-radius:16px;padding:12px 16px;box-shadow:0 4px 20px #19ef9a4d,0 2px 8px #00000080;max-width:280px;min-width:200px;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.bubble-dismiss{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:var(--radius-full);background:var(--color-danger);border:2px solid var(--color-surface-1);color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-size:14px;z-index:1}.bubble-dismiss:active{transform:scale(.9)}.bubble-dismiss ion-icon{font-size:12px}.bubble-content{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.bubble-icon{position:relative;width:44px;height:44px;background:linear-gradient(135deg,var(--color-brand-primary) 0%,var(--color-brand-primary-pressed) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bubble-icon ion-icon{font-size:22px;color:var(--color-text-primary)}.bubble-badge{position:absolute;top:-6px;right:-6px;background:var(--color-brand-primary);color:var(--color-surface-canvas);font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--color-surface-1)}.bubble-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.bubble-sender{font-size:12px;font-weight:600;color:var(--color-brand-primary)}.bubble-message{font-size:13px;color:var(--color-text-primary);line-height:1.3;word-break:break-word}.bubble-actions{display:flex;justify-content:flex-end;margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border-subtle)}.bubble-action-btn{padding:6px 16px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.bubble-action-btn.view{background:var(--color-brand-primary);color:var(--color-surface-canvas)}.bubble-action-btn.view:active{transform:scale(.95);background:var(--color-brand-primary-pressed)}.floating-chat-bubble:before{content:"";position:absolute;inset:0;border-radius:16px;border:2px solid var(--color-brand-primary);animation:pulse 2s infinite;pointer-events:none}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.spotlight-backdrop{position:absolute;inset:0;background:#000000d9;z-index:1}.spotlight-backdrop-light{position:absolute;inset:0;background:#000000b3;z-index:1}.spotlight-cutout{position:absolute;z-index:2;background:#ffffff26;border-radius:var(--radius-sm);box-shadow:0 0 0 9999px #000000d9,0 0 30px 10px rgba(var(--color-brand-primary-rgb),.5),inset 0 0 20px #ffffff1a;border:2px solid var(--color-brand-primary)}.spotlight-more-button{bottom:4px;right:4px;width:68px;height:52px;border-radius:8px}.spotlight-cutout:before{content:"More";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-brand-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);opacity:0}.spotlight-cutout:after{content:"";position:absolute;inset:-6px;border:2px solid rgba(var(--color-brand-primary-rgb),.6);border-radius:var(--radius-md);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.08)}}.spotlight-tooltip{position:absolute;z-index:3;background:linear-gradient(145deg,var(--color-surface-2),var(--color-surface-1));color:var(--color-text-primary);border-radius:var(--radius-lg);padding:var(--space-5);max-width:320px;width:calc(100% - 32px);box-shadow:var(--shadow-3);border:1px solid rgba(var(--color-brand-primary-rgb),.4);animation:fadeInUp .3s var(--motion-ease-out)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.spotlight-tooltip-more{bottom:80px;left:50%;transform:translate(-50%)}.spotlight-tooltip-more:after{content:"";position:absolute;bottom:-10px;right:30px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--color-surface-1)}.spotlight-tooltip-menu-info{top:50%;left:50%;transform:translate(-50%,-50%);max-width:340px}.spotlight-close{position:absolute;top:var(--space-2);right:var(--space-2);background:transparent;border:none;color:var(--color-text-tertiary);font-size:24px;cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.spotlight-close:hover,.spotlight-close:active{color:var(--color-text-primary)}.spotlight-content h3{margin:0 0 var(--space-3) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.spotlight-content p{margin:0 0 var(--space-2) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.spotlight-features-list{margin:var(--space-3) 0 0 0;padding-left:0;list-style:none}.spotlight-features-list li{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:5px 0 5px 22px;position:relative}.spotlight-features-list li:before{content:"✓";position:absolute;left:0;color:var(--color-brand-primary);font-weight:700}.menu-items-info{display:flex;flex-direction:column;gap:14px;margin-top:12px}.menu-item-info{display:flex;align-items:flex-start;gap:12px}.menu-item-icon{font-size:20px;flex-shrink:0;width:28px;text-align:center}.menu-item-info strong{display:block;font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:2px;font-weight:var(--font-weight-semibold)}.menu-item-info p{margin:0;font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:var(--line-height-snug)}.spotlight-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle)}.spotlight-actions ion-button{--border-radius: 8px;font-size:14px;text-transform:none}@media (max-width: 360px){.spotlight-tooltip{padding:16px;max-width:290px}.spotlight-content h3{font-size:16px}.spotlight-content p{font-size:13px}.spotlight-features-list li{font-size:12px;padding:4px 0 4px 20px}.menu-item-info strong{font-size:13px}.menu-item-info p{font-size:11px}.menu-item-icon{font-size:18px}}.cashback-modal{--border-radius: 16px 16px 0 0;--box-shadow: 0 -10px 40px rgba(0, 0, 0, .3);--background: linear-gradient(135deg, var(--color-surface-2) 0%, var(--color-surface-3) 50%, rgba(var(--color-brand-primary-rgb), .15) 100%)}.cashback-modal::part(backdrop){background:#0009}.cashback-modal::part(handle){background:#ffffff4d;width:40px;height:4px}.cashback-content{--background: transparent;padding:20px;position:relative}.cashback-close-button{position:absolute;top:10px;right:10px;z-index:10}.cashback-close-button ion-button{--color: var(--color-text-primary);--background: rgba(255, 255, 255, .1);--border-radius: 50%;width:36px;height:36px;font-size:20px}.cashback-header{text-align:center;padding:30px 20px 20px}.cashback-gift-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--color-brand-primary),#2E7D32);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;animation:pulse 2s infinite}.cashback-gift-icon ion-icon{font-size:40px;color:var(--color-text-primary)}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 rgba(var(--color-brand-primary-rgb),.4)}50%{transform:scale(1.05);box-shadow:0 0 20px 10px rgba(var(--color-brand-primary-rgb),.2)}}.cashback-title{color:var(--color-text-primary);font-size:24px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.cashback-subtitle{color:var(--color-text-secondary);font-size:14px;margin:0}.cashback-tiers{display:flex;flex-direction:column;gap:12px;padding:0 10px;margin-bottom:20px}.cashback-tier{background:#ffffff14;border-radius:12px;padding:14px 16px;border-left:4px solid;transition:transform .2s ease}.cashback-tier:active{transform:scale(.98)}.tier-1{border-left-color:#64b5f6}.tier-2{border-left-color:var(--ca-green-300)}.tier-3{border-left-color:#ffb74d}.tier-4{border-left-color:#f06292;background:#f0629226}.tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.tier-name{color:var(--color-text-secondary);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.tier-cashback{color:var(--color-brand-primary);font-size:16px;font-weight:700}.tier-4 .tier-cashback{color:#f06292}.tier-range{color:var(--color-text-primary);font-size:15px;font-weight:600;margin-bottom:4px}.tier-description{color:var(--color-text-tertiary);font-size:12px}.cashback-info{background:#ffffff0d;border-radius:12px;padding:16px;margin:0 10px 20px}.cashback-info .info-item{display:flex;align-items:center;gap:10px;color:var(--color-text-primary);font-size:13px;padding:8px 0}.cashback-info .info-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.08)}.cashback-info .info-icon{color:var(--color-brand-primary);font-size:18px;flex-shrink:0}.cashback-cta{padding:0 10px;margin-bottom:16px}.topup-cta-button{--background: linear-gradient(135deg, var(--color-brand-primary), #2E7D32);--background-activated: #1B5E20;--border-radius: 12px;--box-shadow: 0 4px 15px rgba(var(--color-brand-primary-rgb), .4);height:52px;font-size:16px;font-weight:600;text-transform:none}.cashback-footer{text-align:center;padding-bottom:20px}.cashback-footer p{color:var(--color-text-tertiary);font-size:11px;margin:0}.search-ux{display:contents}.search-ux .search-bar-wrap{position:absolute;width:85%;max-width:350px;top:10px;right:5px}.search-ux .search-bar-row{display:flex;align-items:center}.search-ux .search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:1001;display:flex;flex-direction:column;max-height:320px;background:var(--color-surface-2);border:1px solid var(--color-border-default);border-radius:14px;box-shadow:0 10px 28px #00000047;overflow:hidden;animation:search-drop .16s ease}.search-ux .search-dropdown-head{padding:10px 14px 6px;font-size:12px;font-weight:600;color:var(--color-text-secondary)}.search-ux .search-dropdown-list{overflow-y:auto;padding:0 6px 8px}.search-ux .search-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:0;padding:11px 10px;border-radius:10px;cursor:pointer;color:var(--color-text-primary)}.search-ux .search-row:active{background:var(--color-row-bg-hover)}.search-ux .search-row-ic{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:var(--color-surface-3, rgba(127, 127, 127, .12));color:var(--color-text-secondary);font-size:17px}.search-ux .search-row-tx{display:flex;flex-direction:column;min-width:0}.search-ux .search-row-t{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-ux .search-row-s{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-ux .search-confirm{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:1002;background:var(--color-surface-2);border:1px solid var(--color-border-default);border-radius:14px;box-shadow:0 10px 28px #0000004d;padding:14px;animation:search-drop .18s ease}.search-ux .search-confirm-name{font-weight:800;font-size:16px;color:var(--color-text-primary)}.search-ux .search-confirm-addr{font-size:12.5px;color:var(--color-text-secondary);margin:2px 0 10px}.search-ux .search-confirm-hint{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);margin-bottom:12px}.search-ux .search-confirm-hint ion-icon{color:#19ef9a}.search-ux .search-confirm-cta{display:flex;gap:10px}.search-ux .search-btn-primary,.search-ux .search-btn-ghost{border:0;border-radius:12px;font-weight:800;font-size:14.5px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px}.search-ux .search-btn-primary{flex:1;background:#19ef9a;color:#062b1d}.search-ux .search-btn-ghost{flex:0 0 46px;background:var(--color-surface-3, rgba(127, 127, 127, .12));color:var(--color-text-secondary);border:1px solid var(--color-border-default)}.search-ux .search-btn-primary ion-icon,.search-ux .search-btn-ghost ion-icon{font-size:18px}@keyframes search-drop{0%{transform:translateY(-6px);opacity:0}to{transform:translateY(0);opacity:1}}.notif-bell{position:relative;flex:0 0 auto;width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .18s ease,border-color .18s ease,transform .1s ease}.notif-bell:active{transform:scale(.92)}.notif-bell.notif-bell--idle{background:rgba(var(--color-surface-rgb),.4);border-color:var(--color-border-subtle);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.notif-bell.notif-bell--idle .notif-bell__icon{color:var(--color-text-secondary)}.notif-bell.notif-bell--unread{background:var(--color-surface-2);border-color:var(--color-border-default);box-shadow:0 4px 14px #0000002e}.notif-bell.notif-bell--unread .notif-bell__icon{color:var(--color-text-primary)}.notif-bell .notif-bell__icon{font-size:22px}.notif-bell .notif-bell__badge{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;box-sizing:border-box;border-radius:9px;background:var(--ca-red-500, #DC2626);color:#fff;font-size:11px;font-weight:700;line-height:14px;text-align:center;border:2px solid var(--color-surface-1);display:inline-flex;align-items:center;justify-content:center}.charging-session-card-home{margin:0;background:linear-gradient(135deg,rgba(var(--ion-color-dark-rgb),.95),rgba(var(--ion-color-dark-shade-rgb),.98));border-radius:20px;box-shadow:0 4px 20px #0006;border:1px solid var(--color-border-default);cursor:pointer;transition:all .3s ease;position:relative;overflow:visible}.charging-session-card-home:hover{transform:translateY(-2px);box-shadow:0 6px 24px #00000080;border-color:rgba(var(--ion-color-primary-rgb),.3)}.card-content-compact{padding:16px!important;display:flex;flex-direction:column;gap:12px}.status-indicator-compact{display:flex;align-items:center;gap:8px;margin-bottom:4px}.status-dot{width:10px;height:10px;border-radius:50%;position:relative}.status-dot.charging{background:var(--ion-color-success);box-shadow:0 0 12px #2dd36f99;animation:pulseGlow 2s ease-in-out infinite}.status-dot.preparing{background:var(--ion-color-warning);box-shadow:0 0 12px #ffc10799;animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.status-text{font-size:.9rem;font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.5px}.info-row-compact{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.stat-item-compact{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.stat-item-compact.cost-highlight{background:linear-gradient(135deg,rgba(var(--ion-color-success-rgb),.1),rgba(var(--ion-color-success-rgb),.05));border-radius:12px;padding:8px 12px;border:1px solid rgba(var(--ion-color-success-rgb),.2)}.stat-icon-compact{font-size:24px;color:var(--color-text-secondary);flex-shrink:0}.stat-content-compact{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-value-compact{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cost-value{color:var(--ion-color-success);font-size:1.2rem}.stat-label-compact{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.action-row-compact{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid rgba(var(--ion-color-light-rgb),.1)}.status-badge-compact{padding:6px 12px;border-radius:12px;font-size:.8rem;font-weight:700;letter-spacing:.3px}.tap-hint{font-size:.85rem;color:var(--color-text-secondary);font-weight:600;display:flex;align-items:center;gap:4px;transition:color .2s ease}.charging-session-card-home:hover .tap-hint{color:var(--ion-color-primary)}@media (max-width: 576px){.card-content-compact{padding:14px!important;gap:10px}.info-row-compact{gap:8px}.stat-value-compact{font-size:1rem}.cost-value{font-size:1.1rem}.stat-label-compact{font-size:.65rem}.tap-hint{font-size:.8rem}.status-badge-compact{font-size:.75rem;padding:5px 10px}}@media (min-width: 768px){.card-content-compact{padding:20px!important;gap:14px}.stat-value-compact{font-size:1.2rem}.cost-value{font-size:1.3rem}}.charging-session-card-home:focus-visible{outline:2px solid var(--ion-color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.charging-session-card-home,.status-dot{animation:none!important;transition:none!important}}.charging-session-card-home.loading{opacity:.6;pointer-events:none}.charging-session-card-home.loading .stat-value-compact{animation:shimmer 1.5s infinite}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}.charging-session-card-home .stat-value-compact{transition:color .6s ease-out,text-shadow .6s ease-out}.charging-session-card-home .stat-value-compact.value-flash{color:var(--color-brand-primary)!important;text-shadow:0 0 10px rgba(var(--color-brand-primary-rgb),.45);transition:color .2s ease-out,text-shadow .2s ease-out}.charging-session-card-home.is-charging{animation:cardBorderBreathe 3s ease-in-out infinite}@keyframes cardBorderBreathe{0%,to{border-color:var(--color-border-default);box-shadow:0 4px 20px #0006}50%{border-color:rgba(var(--color-brand-primary-rgb),.45);box-shadow:0 4px 24px rgba(var(--color-brand-primary-rgb),.3)}}[data-theme=light] .charging-session-card-home.is-charging{animation:cardBorderBreatheLight 3s ease-in-out infinite}@keyframes cardBorderBreatheLight{0%,to{border-color:var(--color-border-default);box-shadow:0 4px 14px #00000014}50%{border-color:rgba(var(--color-brand-primary-rgb),.65);box-shadow:0 4px 22px rgba(var(--color-brand-primary-rgb),.4)}}@media (prefers-reduced-motion: reduce){.charging-session-card-home.is-charging,.charging-session-card-home .stat-value-compact.value-flash{animation:none!important;transition:none!important}.charging-session-card-home .stat-value-compact.value-flash{color:inherit!important;text-shadow:none}}.modal-vehicle-options{--height: 50vh;--width: 90vw;--border-radius: 12px;backdrop-filter:blur(2px)}.modal-wrapper{display:flex;flex-direction:column;justify-content:space-between;height:100%}.avatar-circle{border:1px solid var(--ion-color-medium)}.vehicle-option-item{border:1px solid var(--ion-color-medium);margin:15px}.vehicle-option-footer{display:flex;justify-content:space-between;padding:10px;bottom:0;width:100%;margin-top:auto}.textHeader{font-size:20px;color:var(--color-text-primary);text-align:left;margin:20px}.custom-radio{--color-checked: var(--ion-color-success);--color: var(--color-text-primary);--border-radius: 50%;--border-width: 1px;--border-style: solid;width:20px;height:20px;--background: var(--ion-color-success)}.custom-radio::part(container){border-radius:50%;border:1px solid var(--ion-color-light);width:25px;height:25px}.custom-radio-selected::part(container){background-color:var(--ion-color-success)}.vehicle-avatar-wrapper{position:relative;display:inline-block}.vehicle-avatar-wrapper .avatar-circle{width:56px;height:56px}.vehicle-avatar-wrapper .avatar-circle img{object-fit:contain;padding:4px;background:#ffffff0d}.vehicle-type-badge-small{position:absolute;bottom:-4px;right:-4px;padding:2px 6px;border-radius:10px;font-size:.6rem;font-weight:700;color:var(--color-text-primary);text-transform:uppercase;box-shadow:0 1px 4px #0000004d;border:2px solid var(--ion-background-color, #1a1a2e)}.vehicle-type-label{font-size:.75rem;font-weight:600;margin-top:2px}.spotlight-overlay{position:fixed;inset:0;z-index:var(--z-spotlight);pointer-events:auto}.spotlight-svg{position:absolute;top:0;left:0;width:100%;height:100%}.spotlight-ring{position:absolute;border:3px solid var(--color-brand-primary);border-radius:12px;box-shadow:0 0 0 4px rgba(var(--color-brand-primary-rgb),.3),0 0 20px rgba(var(--color-brand-primary-rgb),.4);animation:pulse-ring 2s ease-in-out infinite;pointer-events:none}@keyframes pulse-ring{0%,to{box-shadow:0 0 0 4px rgba(var(--color-brand-primary-rgb),.3),0 0 20px rgba(var(--color-brand-primary-rgb),.4)}50%{box-shadow:0 0 0 8px rgba(var(--color-brand-primary-rgb),.2),0 0 30px rgba(var(--color-brand-primary-rgb),.5)}}.spotlight-tooltip{position:absolute;width:280px;background:linear-gradient(145deg,var(--color-surface-2),var(--color-surface-1));color:var(--color-text-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);border:1px solid var(--color-border-default);animation:tooltip-appear .3s var(--motion-ease-out)}@keyframes tooltip-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.spotlight-pointer{position:absolute;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid var(--color-surface-2)}.spotlight-content{padding:16px}.spotlight-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.spotlight-title{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1}.spotlight-close{background:none;border:none;color:var(--color-text-tertiary);font-size:20px;cursor:pointer;padding:0;margin:-4px -4px 0 8px;display:flex;align-items:center;justify-content:center;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.spotlight-close:hover{color:var(--color-text-primary)}.spotlight-description{margin:0 0 var(--space-4) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.spotlight-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.spotlight-progress{display:flex;gap:6px}.spotlight-progress .progress-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-border-strong);transition:all var(--motion-duration-base) var(--motion-ease-out)}.spotlight-progress .progress-dot.active{background:var(--color-brand-primary);transform:scale(1.2)}.spotlight-progress .progress-dot.completed{background:var(--color-brand-primary)}.spotlight-buttons{display:flex;gap:var(--space-2)}.spotlight-buttons .btn-skip{background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;padding:var(--space-2) var(--space-3);transition:color var(--motion-duration-fast) var(--motion-ease-out)}.spotlight-buttons .btn-skip:hover{color:var(--color-text-primary)}.spotlight-buttons .btn-next{display:flex;align-items:center;gap:var(--space-1);background:var(--color-brand-primary);border:none;color:var(--color-on-brand);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--motion-duration-fast) var(--motion-ease-out)}.spotlight-buttons .btn-next:hover{background:var(--color-brand-primary-hover);transform:translateY(-1px)}.spotlight-buttons .btn-next ion-icon{font-size:16px}@media (max-width: 360px){.spotlight-tooltip{width:260px}.spotlight-title{font-size:14px}.spotlight-description{font-size:13px}}.reservation-warning-alert .alert-wrapper{background:var(--color-surface-2)!important;border-radius:20px;border:2px solid var(--ion-color-warning)}.reservation-warning-alert .alert-head{background:var(--color-surface-2)!important;padding:24px 24px 12px}.reservation-warning-alert .alert-title{color:var(--ion-color-warning)!important;font-size:22px;font-weight:700}.reservation-warning-alert .alert-sub-title{color:var(--color-text-secondary)!important;font-size:14px;margin-top:4px}.reservation-warning-alert .alert-message{color:var(--color-text-primary)!important;font-size:15px;line-height:1.6;padding:0 24px 24px;white-space:pre-line}.reservation-warning-alert .alert-button-group{padding:0 16px 16px}.reservation-warning-alert .alert-button{background:var(--ion-color-warning)!important;color:var(--ion-color-warning-contrast)!important;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);min-height:48px}.reservation-warning-banner{display:flex;align-items:flex-start;gap:14px;background:linear-gradient(135deg,#ffc40926,#ff980026);border:1px solid rgba(255,196,9,.4);border-radius:16px;padding:16px;margin:12px 16px;animation:warningPulse 3s ease-in-out infinite}@keyframes warningPulse{0%,to{border-color:#ffc40966;box-shadow:0 0 #ffc40900}50%{border-color:#ffc409b3;box-shadow:0 0 20px #ffc40933}}.reservation-warning-banner.compact{padding:12px;margin:8px 12px}.warning-icon-container{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--ion-color-warning) 0%,#ff9800 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0;animation:iconBounce 2s ease-in-out infinite}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.reservation-warning-banner.compact .warning-icon-container{width:36px;height:36px}.warning-icon{font-size:24px;color:var(--ion-color-warning-contrast)}.reservation-warning-banner.compact .warning-icon{font-size:20px}.warning-content{flex:1;min-width:0}.warning-title{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--ion-color-warning)}.reservation-warning-banner.compact .warning-title{font-size:14px}.warning-text{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.reservation-warning-banner.compact .warning-text{font-size:12px;line-height:1.4}.warning-dismiss{background:var(--color-row-bg-hover);border:none;width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--motion-duration-fast) var(--motion-ease-out)}.warning-dismiss:hover{background:var(--color-row-bg-press)}.warning-dismiss ion-icon{font-size:18px;color:var(--color-text-secondary)}.session-stopped-alert .alert-wrapper{background:var(--color-surface-2)!important;border-radius:20px;border:2px solid var(--ion-color-danger)}.session-stopped-alert .alert-head{background:var(--color-surface-2)!important;padding:24px 24px 12px}.session-stopped-alert .alert-title{color:var(--ion-color-danger)!important;font-size:22px;font-weight:700}.session-stopped-alert .alert-sub-title{color:var(--color-text-secondary)!important;font-size:14px;margin-top:4px}.session-stopped-alert .alert-message{color:var(--color-text-primary)!important;font-size:15px;line-height:1.6;padding:0 24px 24px}.session-stopped-alert .alert-button{color:var(--ion-color-danger)!important;font-weight:600}.other-session-stopped-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#19ef9a1a,#19ef9a33);border:1px solid rgba(25,239,154,.4);border-radius:12px;padding:14px 16px;margin:12px 16px}.stopped-icon-container{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--ion-color-success) 0%,#10c97a 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stopped-icon{font-size:20px;color:var(--color-on-brand)}.stopped-content{flex:1}.stopped-text{margin:0;font-size:var(--font-size-xs);color:var(--color-text-primary);line-height:var(--line-height-snug)}.reservation-warning-inline{display:flex;align-items:center;gap:6px;background:#ffc40926;border-radius:8px;padding:6px 10px;margin-top:8px}.reservation-warning-inline ion-icon{font-size:16px;color:var(--ion-color-warning)}.reservation-warning-inline span{font-size:11px;color:var(--ion-color-warning);font-weight:500}.search-charger-page{height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface-canvas);color:var(--color-text-primary);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.search-charger-page .sc-topbar{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top) + 10px) 12px 10px}.search-charger-page .sc-back,.search-charger-page .sc-filter{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius-md, 12px);background:var(--color-surface-2);border:1px solid var(--color-border-default);color:var(--color-text-primary);font-size:19px;cursor:pointer}.search-charger-page .sc-back{border-radius:50%}.search-charger-page .sc-searchsum{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;background:var(--color-surface-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md, 12px);color:var(--color-text-primary);cursor:pointer}.search-charger-page .sc-searchsum-pin{flex:0 0 auto;font-size:16px;color:var(--color-brand-primary)}.search-charger-page .sc-searchsum-q{flex:1;min-width:0;font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.search-charger-page .sc-searchsum-x{flex:0 0 auto;font-size:14px;color:var(--color-text-secondary)}.search-charger-page .sc-map{flex:0 0 auto;position:relative;overflow:hidden}.search-charger-page .sc-map-canvas{position:absolute;inset:0}.search-charger-page .sc-expand{position:absolute;left:12px;bottom:12px;z-index:4;padding:8px 12px;border-radius:20px;border:1px solid var(--color-border-default);background:#0a0f1cc7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f1f5f9;font-size:12px;font-weight:600;cursor:pointer}.search-charger-page .sc-recenter{position:absolute;right:12px;bottom:12px;z-index:4;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--color-border-default);background:#0a0f1cc7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#19ef9a;font-size:18px;cursor:pointer}.search-charger-page .sc-mk{cursor:pointer}.search-charger-page .sc-mk-body{display:grid;place-items:center;width:30px;height:30px;border-radius:50% 50% 50% 2px;transform:rotate(45deg);box-shadow:0 3px 8px #00000080;transition:transform .15s ease,box-shadow .15s ease}.search-charger-page .sc-mk-body em{transform:rotate(-45deg);font-style:normal;font-weight:800;font-size:12px}.search-charger-page .sc-mk-ok .sc-mk-body{background:linear-gradient(150deg,#24ffae,#0fb877);color:#06281b}.search-charger-page .sc-mk-busy .sc-mk-body{background:linear-gradient(150deg,#ffd24d,#e89c12);color:#3a2600}.search-charger-page .sc-mk.sc-active{z-index:6}.search-charger-page .sc-mk.sc-active .sc-mk-body{transform:rotate(45deg) scale(1.3);box-shadow:0 0 0 4px #19ef9a4d,0 6px 14px #0009}.search-charger-page .sc-mk-busy.sc-active .sc-mk-body{box-shadow:0 0 0 4px #fbbf244d,0 6px 14px #0009}.search-charger-page .sc-puck{position:relative;width:16px;height:16px}.search-charger-page .sc-puck-dot{position:absolute;inset:0;border-radius:50%;background:#19ef9a;border:3px solid #0a0f1c;box-shadow:0 0 0 2px #19ef9a99}.search-charger-page .sc-puck-ring{position:absolute;left:50%;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:50%;background:#19ef9a66;animation:sc-pulse 2.2s ease-out infinite}@keyframes sc-pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.6}to{transform:translate(-50%,-50%) scale(4);opacity:0}}.search-charger-page .sc-divider{flex:0 0 auto;height:22px;display:grid;place-items:center;background:var(--color-surface-canvas);cursor:ns-resize;touch-action:none;z-index:7}.search-charger-page .sc-grip{width:42px;height:5px;border-radius:3px;background:var(--color-border-default);transition:background .15s ease}.search-charger-page .sc-divider:active .sc-grip{background:#19ef9a}.search-charger-page .sc-results{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 12px 18px}.search-charger-page .sc-rhead{position:sticky;top:0;z-index:2;display:flex;align-items:center;padding:8px 2px 10px;background:var(--color-surface-canvas);font-size:12.5px;color:var(--color-text-secondary)}.search-charger-page .sc-rhead strong{color:var(--color-text-primary);font-size:13px}.search-charger-page .sc-sort{margin-left:auto;display:inline-flex;align-items:center;gap:3px;background:transparent;border:0;color:var(--color-brand-primary);font-weight:600;font-size:12.5px;cursor:pointer}.search-charger-page .sc-empty{padding:28px 12px;text-align:center;color:var(--color-text-secondary);font-size:13.5px}.search-charger-page .sc-card{margin-bottom:12px;padding:13px 14px;background:var(--color-surface-2);border:1px solid var(--color-border-default);border-radius:var(--radius-lg, 16px);box-shadow:0 4px 16px #00000042;cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.search-charger-page .sc-card:active{transform:scale(.992)}.search-charger-page .sc-card-active{border-color:var(--color-brand-primary);transform:translateY(-1px);box-shadow:0 0 0 2px var(--color-brand-primary),0 10px 26px #19ef9a29}.search-charger-page .sc-top{display:flex;align-items:flex-start;gap:10px}.search-charger-page .sc-top-tx{flex:1;min-width:0;display:flex;flex-direction:column}.search-charger-page .sc-name{font-weight:800;font-size:15px;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-charger-page .sc-addr{margin-top:2px;font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-charger-page .sc-rate{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--color-text-primary);background:var(--color-surface-3);padding:4px 9px;border-radius:999px}.search-charger-page .sc-rate ion-icon{color:var(--color-warning);font-size:11px}.search-charger-page .sc-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:11px}.search-charger-page .sc-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-size:11px;font-weight:700}.search-charger-page .sc-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.search-charger-page .sc-pok{background:var(--color-success-bg);color:var(--color-success)}.search-charger-page .sc-pbusy{background:var(--color-warning-bg);color:var(--color-warning)}.search-charger-page .sc-free{font-size:11.5px;font-weight:700;color:var(--color-text-primary)}.search-charger-page .sc-free.sc-z{color:var(--color-text-secondary)}.search-charger-page .sc-de{margin-left:auto;font-size:11.5px;color:var(--color-text-secondary);white-space:nowrap}.search-charger-page .sc-de b{color:var(--color-text-primary);font-weight:700}.search-charger-page .sc-bottom{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:11px}.search-charger-page .sc-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:8px;font-size:11px;font-weight:700;color:var(--color-text-primary);background:var(--color-surface-3);border:1px solid var(--color-border-default)}.search-charger-page .sc-chip b{color:var(--color-brand-primary);font-size:10px}.search-charger-page .sc-tag{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;border-radius:8px;font-size:10px;font-weight:800;letter-spacing:.3px;text-transform:uppercase}.search-charger-page .sc-tag ion-icon{font-size:11px}.search-charger-page .sc-fast{color:var(--color-brand-primary);background:#19ef9a1f;border:1px solid rgba(25,239,154,.3)}.search-charger-page .sc-slow{color:var(--color-text-secondary);background:var(--color-surface-3);border:1px solid var(--color-border-default)}.search-charger-page .sc-pricechip{margin-left:auto;display:inline-flex;align-items:baseline;gap:1px;padding:4px 9px;border-radius:8px;font-size:13px;font-weight:800;color:var(--color-brand-primary);background:#19ef9a1a;border:1px solid rgba(25,239,154,.3)}.search-charger-page .sc-pricechip span{font-size:10px;font-weight:600;opacity:.85}.search-charger-page .sc-actions{display:flex;justify-content:flex-end;margin-top:12px}.search-charger-page .sc-view{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;border:0;border-radius:var(--radius-md, 12px);background:var(--color-brand-primary);color:#06251a;font-size:13px;font-weight:800;cursor:pointer}.search-charger-page .sc-view ion-icon{font-size:15px}.search-charger-page .sc-view:active{filter:brightness(.93)}.session-limits-modal::part(backdrop){background:#0009}.session-limits-modal::part(content){display:flex;align-items:center;justify-content:center;--width: auto;--height: auto;--min-width: 320px;--max-width: 94%;--border-radius: 20px;--box-shadow: none;background:transparent}.session-limits-modal .modal-box{background:var(--color-surface-2);border:1px solid var(--color-border-default);border-radius:20px;padding:18px 16px;width:100%;max-width:400px;max-height:86vh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 12px 40px #00000059}.session-limits-modal .ls-titlebar{display:flex;align-items:center;justify-content:space-between;gap:12px}.session-limits-modal .ls-title{margin:0;font-size:1.1rem;font-weight:700;color:var(--color-text-primary)}.session-limits-modal .ls-close{flex:0 0 auto;width:30px;height:30px;border:1px solid var(--color-border-subtle);background:var(--color-surface-3);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-secondary);font-size:16px;-webkit-tap-highlight-color:transparent}.session-limits-modal .ls-subtitle{margin:6px 0 14px;font-size:.78rem;line-height:1.45;color:var(--color-text-tertiary)}.session-limits-modal .ls-error{background:#ef44441f;border:1px solid var(--ca-red-400, #EF4444);color:var(--ca-red-400, #EF4444);padding:10px 12px;border-radius:10px;font-size:.8rem;margin-bottom:12px;text-align:center}.session-limits-modal .ls-section{background:var(--color-surface-1);border:1px solid var(--color-border-subtle);border-radius:14px;padding:12px;margin-bottom:10px}.session-limits-modal .ls-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.session-limits-modal .ls-icon{font-size:18px;flex:0 0 auto}.session-limits-modal .ls-icon--time{color:var(--color-info, #3B82F6)}.session-limits-modal .ls-icon--energy{color:var(--color-brand-primary)}.session-limits-modal .ls-icon--price{color:#f5a524}.session-limits-modal .ls-label{font-size:.9rem;font-weight:600;color:var(--color-text-primary)}.session-limits-modal .ls-balance{margin-left:auto;font-size:.7rem;color:var(--color-text-tertiary);white-space:nowrap}.session-limits-modal .ls-input-row{display:flex;align-items:center;gap:10px}.session-limits-modal .ls-prefix{font-size:1rem;font-weight:600;color:var(--color-text-secondary)}.session-limits-modal .ls-suffix{font-size:.78rem;color:var(--color-text-tertiary);white-space:nowrap}.session-limits-modal .ls-input{flex:1;min-width:0;min-height:44px;border:1px solid var(--color-border-default);border-radius:10px;--padding-start: 12px;--padding-end: 12px;--background: var(--color-surface-2);--color: var(--color-text-primary);--placeholder-color: var(--color-text-disabled);font-size:.95rem;transition:border-color .15s ease}.session-limits-modal .ls-input:focus-within{border-color:var(--color-brand-primary)}.session-limits-modal .ls-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.session-limits-modal .ls-chip{border:1px solid var(--color-border-default);background:transparent;color:var(--color-text-secondary);border-radius:999px;padding:5px 12px;font-size:.76rem;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all .15s ease}.session-limits-modal .ls-chip:active{transform:scale(.95)}.session-limits-modal .ls-chip.ls-chip--on{background:rgba(var(--color-brand-primary-rgb, 25, 239, 154),.14);border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.session-limits-modal .ls-warn-row{display:flex;align-items:center;gap:7px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--color-border-subtle)}.session-limits-modal .ls-warn-icon{font-size:15px;color:#f5a524;flex:0 0 auto}.session-limits-modal .ls-warn-label{font-size:.78rem;color:var(--color-text-secondary)}.session-limits-modal .ls-warn-input{width:64px;min-height:34px;flex:0 0 auto;border:1px solid var(--color-border-default);border-radius:8px;--padding-start: 8px;--padding-end: 8px;--background: var(--color-surface-2);--color: var(--color-text-primary);--placeholder-color: var(--color-text-disabled);font-size:.85rem;text-align:center}.session-limits-modal .ls-warn-input:focus-within{border-color:var(--color-brand-primary)}.session-limits-modal .ls-dontask{display:flex;align-items:center;gap:10px;margin:4px 2px 12px;font-size:.8rem;color:var(--color-text-tertiary);cursor:pointer}.session-limits-modal .ls-dontask ion-checkbox{--size: 18px;flex:0 0 auto;--checkbox-background: var(--color-surface-3);--checkbox-background-checked: var(--color-brand-primary);--border-color: var(--color-border-strong);--border-color-checked: var(--color-brand-primary);--checkmark-color: #06281A}.session-limits-modal .ls-save{--background: var(--color-brand-primary);--background-activated: var(--color-brand-primary-pressed, var(--color-brand-primary));--background-hover: var(--color-brand-primary-pressed, var(--color-brand-primary));--border-radius: 12px;--box-shadow: 0 4px 14px rgba(var(--color-brand-primary-rgb, 25, 239, 154), .25);--color: #06281A;height:48px;margin:0;font-weight:700;font-size:.95rem;text-transform:none}.session-limits-modal .ls-save:disabled{--background: var(--color-surface-3);--color: var(--color-text-disabled);--box-shadow: none}.session-limits-modal .ls-skip{display:block;width:100%;background:none;border:none;color:var(--color-text-tertiary);font-size:.82rem;padding:12px 0 4px;cursor:pointer}.session-limits-modal .modal-box::-webkit-scrollbar{width:4px}.session-limits-modal .modal-box::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:2px}.session-limits-card{margin:12px 0;border-radius:16px;--background: rgba(255, 255, 255, .08);border:1px solid rgba(255,255,255,.1);transition:border-color .3s ease}.session-limits-card.status-warning{border-color:#ffc10766}.session-limits-card.status-hit{border-color:#cf080f66}.session-limits-card ion-card-content{padding:16px}.session-limits-card .limits-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.session-limits-card .limits-title-section{display:flex;flex-direction:column;gap:6px}.session-limits-card .limits-title{font-weight:700;font-size:16px;color:var(--color-text-primary)}.session-limits-card .overall-status-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 8px;border-radius:6px;width:fit-content}.session-limits-card .overall-status-badge ion-icon{font-size:12px}.session-limits-card .overall-status-badge.status-active{background:#19ef9a26;color:var(--color-brand-primary)}.session-limits-card .overall-status-badge.status-warning{background:#ffc10726;color:var(--color-warning)}.session-limits-card .overall-status-badge.status-hit{background:#cf080f26;color:#ff6b6b}.session-limits-card .limits-actions{display:flex;gap:0}.session-limits-card .limits-actions ion-button{--padding-start: 6px;--padding-end: 6px;height:32px}.session-limits-card .limits-actions ion-icon{font-size:18px}.session-limits-card .limits-summary{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.session-limits-card .summary-text{font-size:12px;color:var(--color-text-tertiary)}.session-limits-card .limits-content{display:flex;flex-direction:column;gap:14px}.session-limits-card .limit-row{background:#ffffff0a;border-radius:12px;padding:14px;border:1px solid rgba(255,255,255,.06);transition:border-color .3s ease,background-color .3s ease}.session-limits-card .limit-row.status-warning{border-color:#ffc10740;background:#ffc1070d}.session-limits-card .limit-row.status-hit{border-color:#cf080f40;background:#cf080f0d}.session-limits-card .limit-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.session-limits-card .limit-info{display:flex;align-items:center;gap:8px}.session-limits-card .limit-icon{font-size:18px}.session-limits-card .limit-icon.time{color:var(--color-info)}.session-limits-card .limit-icon.energy{color:var(--color-brand-primary)}.session-limits-card .limit-icon.price{color:var(--color-warning)}.session-limits-card .limit-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.session-limits-card .status-indicator{font-size:13px;font-weight:700;padding:3px 8px;border-radius:6px}.session-limits-card .status-indicator.status-active{background:#19ef9a26;color:var(--color-brand-primary)}.session-limits-card .status-indicator.status-warning{background:#ffc10726;color:var(--color-warning)}.session-limits-card .status-indicator.status-hit{background:#cf080f26;color:#ff6b6b}.session-limits-card .limit-values{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}.session-limits-card .current-value,.session-limits-card .limit-value{display:flex;align-items:baseline;gap:4px}.session-limits-card .current-value .value{font-size:20px;font-weight:700;color:var(--color-text-primary)}.session-limits-card .current-value .unit{font-size:11px;color:var(--color-text-tertiary)}.session-limits-card .separator{font-size:16px;color:var(--color-text-disabled);margin:0 2px}.session-limits-card .limit-value .value{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.session-limits-card .limit-value .unit{font-size:10px;color:var(--color-text-disabled)}.session-limits-card .progress-bar-container{height:8px;background:#ffffff1f;border-radius:4px;overflow:visible;position:relative;margin-bottom:10px}.session-limits-card .progress-bar{height:100%;border-radius:4px;transition:width .5s ease-out,background-color .3s ease;box-shadow:0 0 8px #19ef9a4d}.session-limits-card .limit-row.status-warning .progress-bar{box-shadow:0 0 8px #ffc1074d}.session-limits-card .limit-row.status-hit .progress-bar{box-shadow:0 0 8px #cf080f4d}.session-limits-card .warning-marker{position:absolute;top:-2px;width:2px;height:12px;background:#ffc107cc;border-radius:1px;transform:translate(-50%)}.session-limits-card .warning-marker:after{content:"";position:absolute;top:-4px;left:50%;transform:translate(-50%);width:6px;height:6px;background:#ffc107;border-radius:50%}.session-limits-card .limit-footer-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}.session-limits-card .remaining-text{font-size:12px;color:var(--color-text-tertiary)}.session-limits-card .limit-row.status-hit .remaining-text{color:#ff6b6b;font-weight:600}.session-limits-card .warning-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:var(--color-warning);background:#ffc10726;padding:3px 8px;border-radius:4px}.session-limits-card .warning-badge ion-icon{font-size:11px}.session-limits-card .limits-footer{display:flex;align-items:flex-start;gap:8px;border-top:1px solid rgba(255,255,255,.08);background:#19ef9a0d;margin:16px -16px -16px;padding:12px 16px;border-radius:0 0 16px 16px}.session-limits-card .limits-footer .info-icon{font-size:16px;color:var(--color-brand-primary);flex-shrink:0;margin-top:1px}.session-limits-card .limits-footer span{font-size:12px;color:var(--color-text-tertiary);line-height:1.4}.ca-moment{position:fixed;inset:0;z-index:10000;pointer-events:none;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 55%,#080e1cc7,#050912e0);animation:ca-moment-fade var(--ca-moment-dur, 1.8s) ease forwards}@keyframes ca-moment-fade{0%{opacity:0}8%{opacity:1}82%{opacity:1}to{opacity:0}}.ca-moment .ca-moment__boltwrap{position:relative;width:110px;height:110px}.ca-moment .ca-moment__circ{position:absolute;inset:0;border-radius:50%;border:3px solid var(--color-brand-primary, #19EF9A);background:#19ef9a14;display:flex;align-items:center;justify-content:center}.ca-moment .ca-moment__bolt{width:46px;height:46px;fill:var(--color-brand-primary, #19EF9A)}.ca-moment.ca-moment--start .ca-moment__circ{box-shadow:0 0 48px 8px #19ef9a8c;animation:ca-moment-popin .5s cubic-bezier(.2,1.5,.4,1)}.ca-moment .ca-moment__ring{position:absolute;inset:0;border-radius:50%;border:2px solid var(--color-brand-primary, #19EF9A);opacity:0;animation:ca-moment-ring 1.1s ease-out forwards}.ca-moment .ca-moment__ring:nth-child(2){animation-delay:.18s}.ca-moment .ca-moment__ring:nth-child(3){animation-delay:.36s}@keyframes ca-moment-ring{0%{transform:scale(.6);opacity:.8}to{transform:scale(2.6);opacity:0}}@keyframes ca-moment-popin{0%{transform:scale(.7)}to{transform:scale(1)}}.ca-moment.ca-moment--stopped .ca-moment__circ,.ca-moment.ca-moment--stopped-forced .ca-moment__circ{border-color:#5b6b85;background:#5b6b851a;transition:all .7s ease}.ca-moment.ca-moment--stopped .ca-moment__bolt{fill:#5b6b85;opacity:.45;transition:all .7s ease}.ca-moment.ca-moment--stopped-forced .ca-moment__circ{border-color:var(--ca-amber, #F5A524)}.ca-moment.ca-moment--stopped-forced .ca-moment__bolt{fill:#f5a524;opacity:.6}.ca-moment .ca-moment__ringin{position:absolute;inset:0;border-radius:50%;border:2px solid #8A98AC;opacity:0;animation:ca-moment-ringin .8s ease-in forwards}@keyframes ca-moment-ringin{0%{transform:scale(2.2);opacity:.5}to{transform:scale(.8);opacity:0}}.ca-moment .ca-moment__battery{position:relative;width:170px}.ca-moment .ca-moment__batbody{height:70px;border:3px solid #44587E;border-radius:14px;overflow:hidden;position:relative}.ca-moment .ca-moment__batcap{position:absolute;right:-10px;top:50%;transform:translateY(-50%);width:7px;height:28px;background:#44587e;border-radius:0 3px 3px 0}.ca-moment .ca-moment__batfill{position:absolute;left:0;top:0;bottom:0;width:28%;background:linear-gradient(90deg,#0FA86C,var(--color-brand-primary, #19EF9A));animation:ca-moment-fill 1s cubic-bezier(.2,.7,.3,1) .1s forwards}@keyframes ca-moment-fill{to{width:100%}}.ca-moment .ca-moment__check{position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%) scale(0);animation:ca-moment-checkpop .35s cubic-bezier(.2,1.6,.4,1) .85s forwards}.ca-moment .ca-moment__check circle{fill:var(--color-brand-primary, #19EF9A)}.ca-moment .ca-moment__check path{stroke:#06281a;stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48;animation:ca-moment-checkdraw .3s ease 1.1s forwards}@keyframes ca-moment-checkpop{to{transform:translate(-50%,-50%) scale(1)}}@keyframes ca-moment-checkdraw{to{stroke-dashoffset:0}}.ca-limit-banner{position:fixed;left:14px;right:14px;top:calc(env(safe-area-inset-top) + 64px);z-index:9500;background:#f5a52429;border:1px solid #F5A524;color:#ffd27a;border-radius:12px;padding:10px 14px;font-size:.82rem;font-weight:600;text-align:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:ca-limit-slidein .45s cubic-bezier(.2,.9,.3,1.2)}@keyframes ca-limit-slidein{0%{transform:translateY(-24px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.ca-moment,.ca-moment *{animation-duration:.01ms!important;animation-delay:0s!important}.ca-limit-banner{animation:none}}.rating-modal{--border-radius: 16px;--box-shadow: 0 -10px 40px rgba(0, 0, 0, .3);--background: linear-gradient(135deg, var(--color-surface-2) 0%, var(--color-surface-3) 50%, rgba(var(--color-brand-primary-rgb), .15) 100%);--height: auto;--max-height: 90%;--width: 92%;--max-width: 400px}.rating-modal::part(backdrop){background:#0009}.rating-content{--background: transparent;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));position:relative}.rating-close-button{position:absolute;top:10px;right:10px;z-index:10}.rating-close-button ion-button{--color: var(--color-text-primary);--background: rgba(255, 255, 255, .1);--border-radius: 50%;width:36px;height:36px;font-size:20px}.rating-header{text-align:center;padding:20px 20px 12px}.rating-heart-icon{width:60px;height:60px;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;animation:heartbeat 1.5s infinite}.rating-heart-icon ion-icon{font-size:30px;color:var(--color-text-primary)}@keyframes heartbeat{0%,to{transform:scale(1);box-shadow:0 0 #ff6b6b66}50%{transform:scale(1.08);box-shadow:0 0 20px 10px #ff6b6b33}}.rating-title{color:var(--color-text-primary);font-size:22px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.rating-subtitle{color:var(--color-text-secondary);font-size:14px;margin:0;line-height:1.4}.rating-stars{display:flex;justify-content:center;gap:12px;padding:12px 0 16px}.rating-star{font-size:36px;color:var(--color-text-disabled);cursor:pointer;transition:all .2s ease}.rating-star.filled{color:var(--color-warning);transform:scale(1.1)}.rating-star:active{transform:scale(.95)}.rating-actions{padding:0 10px 20px;display:flex;flex-direction:column;gap:12px}.rate-now-button{--background: linear-gradient(135deg, var(--color-brand-primary), #2E7D32);--background-activated: #1B5E20;--border-radius: 12px;--box-shadow: 0 4px 15px rgba(var(--color-brand-primary-rgb), .4);height:50px;font-size:16px;font-weight:600;text-transform:none}.remind-later-button{--border-color: var(--color-text-disabled);--color: var(--color-text-secondary);--border-radius: 12px;height:46px;font-size:14px;font-weight:500;text-transform:none}.remind-later-button:hover{--border-color: var(--color-text-tertiary)}.ca-theme-toggle{--background: var(--color-surface-3);border-radius:var(--radius-md);padding:var(--space-1);gap:var(--space-1);min-height:44px}.ca-theme-toggle .ca-theme-toggle__btn{--background: transparent;--background-checked: var(--color-brand-primary-subtle);--background-hover: var(--color-row-bg-hover);--color: var(--color-text-secondary);--color-checked: var(--color-brand-primary);--color-hover: var(--color-text-primary);--indicator-color: transparent;--indicator-box-shadow: none;--border-radius: var(--radius-sm);--padding-start: var(--space-2);--padding-end: var(--space-2);--padding-top: var(--space-1);--padding-bottom: var(--space-1);min-height:36px;text-transform:none;letter-spacing:0;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.ca-theme-toggle__inner{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ca-theme-toggle__inner ion-icon{font-size:18px}.ca-theme-toggle__inner ion-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin:0}.language-toggle-select{--color: var(--color-text-primary);--placeholder-color: var(--color-text-tertiary);font-weight:600;min-width:auto;max-width:140px;padding-inline-start:12px;padding-inline-end:0}.language-toggle-select::part(text){color:var(--color-text-primary)}.language-toggle-select::part(icon){color:var(--color-brand-primary);opacity:1}ion-popover.language-popover{--background: var(--color-surface-2);--color: var(--color-text-primary);--backdrop-opacity: .4}ion-popover.language-popover::part(content){background:var(--color-surface-2);border:1px solid var(--color-border-default);border-radius:14px;box-shadow:0 8px 28px #00000059}ion-popover.language-popover ion-list{background:transparent;padding:4px}ion-popover.language-popover ion-radio-group{background:transparent}ion-popover.language-popover ion-item{--background: transparent;--background-hover: var(--color-row-bg-hover);--background-activated: rgba(var(--color-brand-primary-rgb), .18);--background-focused: var(--color-row-bg-hover);--color: var(--color-text-primary);--color-hover: var(--color-text-primary);--color-activated: var(--color-text-primary);--border-color: transparent;--inner-border-width: 0;--min-height: 44px;--padding-start: 14px;--inner-padding-end: 14px;border-radius:10px;font-weight:500;letter-spacing:.1px;margin:2px 0}ion-popover.language-popover ion-item.item-radio-checked,ion-popover.language-popover ion-item.ion-activated.item-radio-checked,ion-popover.language-popover ion-item.item-radio-checked.ion-focused{--background: rgba(var(--color-brand-primary-rgb), .16);--color: var(--color-brand-primary);font-weight:700}ion-popover.language-popover ion-radio{--color: var(--color-text-tertiary);--color-checked: var(--color-brand-primary)}.transactions-wrapper .tx-list{padding:0 4px}.transactions-wrapper .tx-day{color:var(--color-text-tertiary);font-size:11.5px;font-weight:600;letter-spacing:.2px;padding:18px 4px 6px}.transactions-wrapper .tx-group:first-of-type .tx-day{padding-top:8px}.transactions-wrapper .tx-rows{display:flex;flex-direction:column}.transactions-wrapper .tx-row{display:grid;grid-template-columns:22px 1fr auto 14px;gap:10px;align-items:center;padding:12px 4px;background:transparent;border:0;border-top:1px solid var(--color-border-subtle);width:100%;text-align:left;font-family:inherit;color:inherit;cursor:default}.transactions-wrapper .tx-rows>.tx-row:first-child{border-top:0}.transactions-wrapper .tx-row.is-clickable{cursor:pointer}.transactions-wrapper .tx-row.is-clickable:active{background:var(--color-row-bg-press, rgba(255,255,255,.03))}.transactions-wrapper .tx-row__glyph{font-size:16px;color:var(--color-text-tertiary);justify-self:center}.transactions-wrapper .tx-row__glyph--credit{color:var(--ion-color-success)}.transactions-wrapper .tx-row__glyph--debit{color:var(--ion-color-danger)}.transactions-wrapper .tx-row__body{min-width:0;display:flex;flex-direction:column;gap:2px}.transactions-wrapper .tx-row__title-line{display:flex;align-items:center;gap:6px;min-width:0}.transactions-wrapper .tx-row__title{color:var(--color-text-primary);font-size:14px;font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transactions-wrapper .tx-row__sub{color:var(--color-text-tertiary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transactions-wrapper .tx-row__gold-dot{width:6px;height:6px;border-radius:50%;background:#f4c952;box-shadow:0 0 0 2px #f4c9522e;flex-shrink:0}.transactions-wrapper .tx-row__amount{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.transactions-wrapper .tx-row__amount--credit{color:var(--ion-color-success)}.transactions-wrapper .tx-row__amount--debit{color:var(--ion-color-danger)}.transactions-wrapper .tx-row__chev{color:var(--color-text-tertiary);font-size:14px;display:flex;justify-content:flex-end;align-items:center;min-width:14px}.transactions-wrapper .tx-row__chev ion-icon{font-size:14px}.transactions-wrapper .tx-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;min-height:240px;gap:8px}.transactions-wrapper .tx-state--inline{min-height:0;padding:16px 24px}.transactions-wrapper .tx-state__icon{font-size:64px;color:var(--color-text-secondary);opacity:.3;margin-bottom:8px}.transactions-wrapper .tx-state h3{color:var(--color-text-primary);font-size:1.05rem;font-weight:600;margin:0}.transactions-wrapper .tx-state p{color:var(--color-text-secondary);font-size:.9rem;margin:0;max-width:280px}.transactions-wrapper .tx-state ion-spinner{width:36px;height:36px;color:var(--ion-color-primary)}@media (max-width: 360px){.transactions-wrapper .tx-row{grid-template-columns:20px 1fr auto 12px;gap:8px}.transactions-wrapper .tx-row__title{font-size:13.5px}.transactions-wrapper .tx-row__sub{font-size:11.5px}}.transactions-wrapper .tx-row.is-clickable:focus-visible{outline:2px solid var(--ion-color-primary);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion: reduce){.transactions-wrapper .tx-row{transition:none}}.ca-card{display:block;color:var(--color-text-primary);transition:transform var(--motion-duration-base) var(--motion-ease-out),box-shadow var(--motion-duration-base) var(--motion-ease-out)}.ca-card--surface-1{background:var(--color-surface-1)}.ca-card--surface-2{background:var(--color-surface-2)}.ca-card--surface-3{background:var(--color-surface-3)}.ca-card--surface-4{background:var(--color-surface-4)}.ca-card--padding-none{padding:0}.ca-card--padding-sm{padding:var(--space-3)}.ca-card--padding-md{padding:var(--space-4)}.ca-card--padding-lg{padding:var(--space-6)}.ca-card--radius-sm{border-radius:var(--radius-sm)}.ca-card--radius-md{border-radius:var(--radius-md)}.ca-card--radius-lg{border-radius:var(--radius-lg)}.ca-card--radius-xl{border-radius:var(--radius-xl)}.ca-card--bordered{border:1px solid var(--color-border-subtle)}.ca-card--elevated{box-shadow:var(--shadow-2)}.ca-card--elevated.ca-card--clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-3)}.ca-card--clickable{cursor:pointer}.ca-card--clickable:active{transform:scale(.99)}.ca-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8) var(--space-5);color:var(--color-text-secondary);gap:var(--space-3)}.ca-empty--sm{padding:var(--space-5) var(--space-4)}.ca-empty--lg{padding:var(--space-12) var(--space-6)}.ca-empty__icon-wrap{width:72px;height:72px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background:var(--color-brand-primary-subtle);border:1px solid rgba(var(--color-brand-primary-rgb),.18);margin-bottom:var(--space-2)}.ca-empty--sm .ca-empty__icon-wrap{width:56px;height:56px}.ca-empty--lg .ca-empty__icon-wrap{width:96px;height:96px}.ca-empty__icon{font-size:32px;color:var(--color-brand-primary)}.ca-empty--sm .ca-empty__icon{font-size:24px}.ca-empty--lg .ca-empty__icon{font-size:44px}.ca-empty__headline{margin:0;color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.ca-empty--sm .ca-empty__headline{font-size:var(--font-size-base)}.ca-empty--lg .ca-empty__headline{font-size:var(--font-size-2xl)}.ca-empty__body{margin:0;max-width:320px;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.ca-empty__cta{margin-top:var(--space-3)}.ca-skeleton{display:inline-block;background:linear-gradient(90deg,var(--color-surface-2) 0%,var(--color-surface-3) 50%,var(--color-surface-2) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:ca-skeleton-shimmer 1.6s ease-in-out infinite}@keyframes ca-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ca-skeleton--text{height:.875rem;width:100%;border-radius:var(--radius-xs)}.ca-skeleton--title{height:1.25rem;width:60%;border-radius:var(--radius-sm)}.ca-skeleton--circle{width:44px;height:44px;border-radius:var(--radius-full);flex-shrink:0}.ca-skeleton-list{display:flex;flex-direction:column;gap:var(--space-3)}.ca-skeleton-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg)}.ca-skeleton-row__lines{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.ca-skeleton-card-stack{display:flex;flex-direction:column;gap:var(--space-4)}.ca-skeleton-card{background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.reservation-card{background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:16px;margin:0 0 12px;transition:all .3s ease;cursor:pointer}.reservation-card:hover,.reservation-card:active{transform:translateY(-2px);box-shadow:0 4px 16px rgba(var(--color-brand-primary-rgb),.2);border-color:rgba(var(--color-brand-primary-rgb),.4)}.reservation-card.status-active{border-left:4px solid var(--color-brand-primary)}.reservation-card.status-booked{border-left:4px solid var(--color-info)}.reservation-card.status-cancelled{opacity:.7;border-left:4px solid var(--color-danger)}.reservation-card.status-finished{opacity:.8;border-left:4px solid var(--color-text-tertiary)}.reservation-card-content{padding:16px}.reservation-card .reservation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;background:transparent;border:none}.reservation-title-row{display:flex;align-items:center;gap:10px;flex:1}.reservation-icon{font-size:22px;color:var(--color-success)}.reservation-name{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0;line-height:1.3}.reservation-card .status-badge{font-size:10px;font-weight:600;padding:5px 10px;border-radius:8px;text-transform:uppercase;letter-spacing:.5px}.reservation-details{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.detail-row{display:flex;align-items:center;gap:10px}.detail-icon{font-size:18px;color:var(--color-text-tertiary);flex-shrink:0}.detail-text{font-size:14px;color:var(--color-text-primary);line-height:1.4}.reservation-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--color-border-subtle)}.recurring-badge{display:flex;align-items:center;gap:6px;background:rgba(var(--ion-color-info-rgb, 56, 128, 255),.15);padding:5px 12px;border-radius:8px;font-size:11px;font-weight:600;color:var(--color-info)}.recurring-badge ion-icon{font-size:14px}.arrow-icon{font-size:22px;color:var(--color-text-disabled)}@media (max-width: 360px){.reservation-card-content{padding:14px}.reservation-name{font-size:15px}.detail-text{font-size:13px}}.reservation-calendar{padding:16px;background:linear-gradient(180deg,rgba(var(--color-brand-primary-rgb),.05) 0%,transparent 100%)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-header ion-button{--color: var(--color-text-primary);--background: var(--color-surface-3);--border-radius: 10px;margin:0;width:40px;height:40px}.calendar-title{display:flex;align-items:center;gap:8px}.calendar-title h2{font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0}.today-btn{--color: var(--color-brand-primary);font-size:13px;font-weight:600;text-transform:none}.weekday-headers{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.weekday-header{text-align:center;font-size:12px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;padding:8px 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:16px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:12px;background:var(--color-surface-2);border:1px solid var(--color-border-subtle);cursor:pointer;transition:all .2s ease;position:relative;min-height:44px}.calendar-day:hover{background:var(--color-surface-3);border-color:var(--color-border-default)}.calendar-day.other-month{opacity:.4}.calendar-day.today{background:rgba(var(--color-brand-primary-rgb),.15);border:2px solid var(--color-brand-primary)}.calendar-day.selected{background:var(--color-brand-primary);border:none}.calendar-day.selected .day-number{color:var(--color-text-on-brand)}.calendar-day.has-events{background:var(--color-surface-3);border-color:rgba(var(--color-brand-primary-rgb),.25)}.calendar-day.has-events.selected{background:var(--color-brand-primary)}.day-number{font-size:14px;font-weight:600;color:var(--color-text-primary)}.calendar-day.today:not(.selected) .day-number{color:var(--color-brand-primary)}.event-dots{display:flex;gap:3px;justify-content:center;flex-wrap:wrap;max-width:100%}.event-dots .dot,.calendar-legend .dot{width:6px;height:6px;border-radius:50%}.dot.scheduled{background:var(--color-info)}.dot.ready{background:var(--color-brand-primary);animation:pulse 1.5s infinite}.dot.charging{background:var(--color-warning);animation:pulse 1s infinite}.dot.completed{background:var(--color-text-tertiary)}.dot.cancelled{background:var(--color-danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.calendar-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;padding:12px;background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:12px;margin-bottom:20px}.calendar-legend .legend-item{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}.calendar-legend .dot{width:10px;height:10px}.selected-date-section{background:var(--color-surface-2);border-radius:16px;padding:16px;border:1px solid var(--color-border-subtle)}.selected-date-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border-default)}.selected-date-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.selected-date-header ion-badge{font-size:10px}.events-list{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto}.events-list::-webkit-scrollbar{width:4px}.events-list::-webkit-scrollbar-track{background:rgba(var(--ion-color-light-rgb),.05)}.events-list::-webkit-scrollbar-thumb{background:rgba(var(--ion-color-light-rgb),.2);border-radius:2px}.no-events{text-align:center;padding:32px 16px;color:var(--color-text-tertiary)}.no-events p{margin:0;font-size:14px}.event-card{background:var(--color-surface-3);border-radius:12px;padding:14px;border-left:4px solid var(--color-info);border-top:1px solid var(--color-border-subtle);border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;transition:all .2s ease}.event-card:hover{background:var(--color-surface-4);transform:translate(4px)}.event-card.status-primary{border-left-color:var(--color-info)}.event-card.status-success{border-left-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.1)}.event-card.status-warning{border-left-color:var(--color-warning);background:#ffc40914}.event-card.status-medium{border-left-color:var(--color-text-tertiary);opacity:.8}.event-card.status-danger{border-left-color:var(--color-danger);opacity:.6}.event-time-strip{display:flex;align-items:center;gap:10px;margin-bottom:10px}.event-status-icon{font-size:18px}.event-card.status-primary .event-status-icon{color:var(--color-info)}.event-card.status-success .event-status-icon{color:var(--color-brand-primary)}.event-card.status-medium .event-status-icon{color:var(--color-text-tertiary)}.event-card.status-danger .event-status-icon{color:var(--color-danger)}.event-time{font-size:15px;font-weight:700;color:var(--color-text-primary);flex:1}.event-status-badge{font-size:10px;padding:4px 8px;text-transform:uppercase;font-weight:600}.event-details{display:flex;flex-direction:column;gap:6px}.event-title,.event-location{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-primary)}.event-title ion-icon,.event-location ion-icon{font-size:16px;color:var(--color-text-tertiary)}.event-title span{font-weight:600}.event-location span{color:var(--color-text-secondary)}.event-session-info{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:8px;font-size:12px;font-weight:600}.event-session-info.active{background:#ffc40926;color:var(--color-warning)}.event-session-info.completed{background:rgba(var(--ion-color-light-rgb),.08);color:var(--color-text-secondary)}.event-session-info .view-icon{margin-left:auto;font-size:16px;opacity:.6}.event-session-info .live-dot{width:8px;height:8px;background:var(--color-warning);border-radius:50%;animation:pulse 1s infinite}.event-live-indicator{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border-default);font-size:12px;font-weight:600;color:var(--color-warning)}.live-dot{width:8px;height:8px;background:var(--color-warning);border-radius:50%;animation:pulse 1s infinite}@media (max-width: 360px){.reservation-calendar{padding:12px}.calendar-title h2{font-size:18px}.calendar-day{min-height:38px;border-radius:8px}.day-number{font-size:12px}.event-dots .dot{width:5px;height:5px}.calendar-legend{gap:10px;padding:10px}.calendar-legend .legend-item{font-size:11px}.selected-date-section,.event-card{padding:12px}.event-time{font-size:14px}}.occurrence-calendar{padding:16px;background:var(--color-surface-2);border-radius:16px;border:1px solid var(--color-border-subtle)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border-default)}.calendar-header ion-button{--color: var(--color-text-primary);--background: var(--color-surface-3);--border-radius: 8px;margin:0}.calendar-header ion-button[disabled]{opacity:.3}.month-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.calendar-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:14px;background:var(--color-surface-3);border-radius:12px;margin-bottom:16px;border:1px solid var(--color-border-subtle)}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--color-text-primary)}.legend-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 6px currentColor}.legend-dot.scheduled{background:var(--color-info);box-shadow:0 0 6px #3880ff80}.legend-dot.ready{background:var(--color-brand-primary);box-shadow:0 0 6px rgba(var(--color-brand-primary-rgb),.5)}.legend-dot.completed{background:var(--color-text-tertiary);box-shadow:0 0 6px #92949c4d}.legend-dot.cancelled{background:var(--color-danger);box-shadow:0 0 6px #eb445a80}.legend-dot.charging{background:var(--color-warning);box-shadow:0 0 6px #ffc40980;animation:legend-pulse 1.5s infinite}@keyframes legend-pulse{0%,to{opacity:1}50%{opacity:.6}}.occurrences-container{max-height:400px;overflow-y:auto;padding-right:4px}.occurrences-container::-webkit-scrollbar{width:4px}.occurrences-container::-webkit-scrollbar-track{background:rgba(var(--ion-color-light-rgb),.05);border-radius:2px}.occurrences-container::-webkit-scrollbar-thumb{background:rgba(var(--ion-color-light-rgb),.2);border-radius:2px}.no-occurrences{text-align:center;padding:32px 16px;color:var(--color-text-tertiary)}.no-occurrences p{margin:0 0 12px;font-size:14px}.no-occurrences ion-button{--color: var(--color-brand-primary)}.date-group{display:flex;gap:12px;margin-bottom:12px}.date-header{display:flex;flex-direction:column;align-items:center;min-width:54px;padding:10px 8px;background:var(--color-surface-3);border-radius:12px;border:1px solid var(--color-border-default)}.date-day{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.date-number{font-size:22px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.today-badge{font-size:9px;padding:2px 6px;margin-top:4px;--background: var(--color-brand-primary);--color: var(--color-text-on-brand)}.date-occurrences{flex:1;display:flex;flex-direction:column;gap:8px}.occurrence-calendar .occurrence-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--color-surface-3);border-radius:12px;border-left:4px solid var(--color-info);cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border-subtle);border-left-width:4px}.occurrence-calendar .occurrence-item:hover,.occurrence-calendar .occurrence-item:active{background:var(--color-surface-4);transform:translate(2px)}.occurrence-calendar .occurrence-item.status-primary{border-left-color:var(--color-info)}.occurrence-calendar .occurrence-item.status-success{border-left-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.12)}.occurrence-calendar .occurrence-item.status-medium{border-left-color:var(--color-text-tertiary);opacity:.7}.occurrence-calendar .occurrence-item.status-danger{border-left-color:var(--color-danger);opacity:.6;background:#eb445a14}.occurrence-calendar .occurrence-item.status-warning{border-left-color:var(--color-warning);background:#ffc4091f;animation:charging-pulse 2s infinite}@keyframes charging-pulse{0%,to{background:#ffc4091f}50%{background:#ffc40933}}.occurrence-calendar .occurrence-time{display:flex;align-items:center;gap:10px}.occurrence-calendar .occurrence-time .status-icon{font-size:20px}.occurrence-calendar .occurrence-item.status-primary .status-icon{color:var(--color-info)}.occurrence-calendar .occurrence-item.status-success .status-icon{color:var(--color-brand-primary)}.occurrence-calendar .occurrence-item.status-medium .status-icon{color:var(--color-text-tertiary)}.occurrence-calendar .occurrence-item.status-danger .status-icon{color:var(--color-danger)}.occurrence-calendar .occurrence-item.status-warning .status-icon{color:var(--color-warning)}.occurrence-calendar .occurrence-time span{font-size:15px;font-weight:600;color:var(--color-text-primary)}.occurrence-actions{display:flex;align-items:center;gap:10px}.occurrence-actions .status-badge{font-size:10px;padding:5px 10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;border-radius:6px}.occurrence-actions .more-icon{font-size:22px;color:var(--color-text-tertiary)}.session-summary{display:flex;align-items:center;gap:6px;padding:6px 10px;margin:8px 0;background:rgba(var(--ion-color-light-rgb),.08);border-radius:8px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}.session-summary ion-icon{font-size:14px;color:var(--color-text-tertiary)}.session-live{display:flex;align-items:center;gap:8px;padding:6px 10px;margin:8px 0;background:#ffc40926;border-radius:8px;font-size:12px;font-weight:600;color:var(--color-warning)}.session-live .pulse-dot{width:8px;height:8px;background:var(--color-warning);border-radius:50%;animation:session-pulse 1.2s infinite}@keyframes session-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.calendar-summary{display:flex;justify-content:space-around;padding:18px;margin-top:16px;background:var(--color-surface-3);border-radius:14px;border:1px solid var(--color-border-subtle)}.summary-item{display:flex;flex-direction:column;align-items:center;gap:6px}.summary-value{font-size:26px;font-weight:700;color:var(--color-text-primary)}.summary-label{font-size:12px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}ion-action-sheet.occurrence-action-sheet{--background: var(--color-surface-1);--button-background: var(--color-surface-3);--button-color: var(--color-text-primary);--color: var(--color-text-primary)}ion-action-sheet.occurrence-action-sheet .action-sheet-title{color:var(--color-text-secondary)}@media (max-width: 360px){.occurrence-calendar{padding:12px}.calendar-legend{gap:10px;padding:12px}.legend-item{font-size:11px}.date-header{min-width:48px;padding:8px 6px}.date-number{font-size:18px}.occurrence-calendar .occurrence-item{padding:12px 14px}.occurrence-calendar .occurrence-time span{font-size:14px}.summary-value{font-size:22px}.summary-label{font-size:11px}}.time-slot-picker{padding:16px}.date-navigation{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:12px;background:var(--color-surface-2);border-radius:14px;border:1px solid var(--color-border-subtle)}.date-navigation ion-button{--color: var(--color-text-primary);--background: var(--color-surface-3);--border-radius: 8px;margin:0}.date-navigation ion-button[disabled]{opacity:.3}.date-display{display:flex;flex-direction:column;align-items:center;gap:6px}.date-label{font-size:16px;font-weight:600;color:var(--color-text-primary)}.time-slot-picker .today-badge{font-size:11px;background:var(--color-brand-primary);color:var(--color-text-on-brand);padding:3px 10px;border-radius:10px;font-weight:600}.duration-selector{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:14px;background:var(--color-surface-2);border-radius:12px;border:1px solid var(--color-border-subtle)}.duration-label{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.duration-options{display:flex;gap:8px;flex:1}.duration-btn{flex:1;padding:10px 14px;border:2px solid var(--color-border-default);border-radius:10px;background:var(--color-surface-3);color:var(--color-text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.duration-btn:hover{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.1)}.duration-btn.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-text-on-brand);box-shadow:0 4px 12px rgba(var(--color-brand-primary-rgb),.4)}.time-slots-container{max-height:320px;overflow-y:auto;margin-bottom:16px;padding:4px}.time-slots-container::-webkit-scrollbar{width:4px}.time-slots-container::-webkit-scrollbar-track{background:rgba(var(--ion-color-light-rgb),.05);border-radius:2px}.time-slots-container::-webkit-scrollbar-thumb{background:rgba(var(--ion-color-light-rgb),.2);border-radius:2px}.time-slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 8px;border-radius:10px;background:rgba(var(--color-brand-primary-rgb),.12);border:2px solid rgba(var(--color-brand-primary-rgb),.3);cursor:pointer;transition:all .2s ease;position:relative;min-height:50px}.time-slot:hover:not(.booked):not(.past){background:rgba(var(--color-brand-primary-rgb),.25);border-color:var(--color-brand-primary);transform:scale(1.02)}.time-slot.booked{background:rgba(var(--ion-color-light-rgb),.08);border-color:rgba(var(--ion-color-light-rgb),.15);cursor:not-allowed;opacity:.7}.time-slot.past{background:rgba(var(--ion-color-light-rgb),.04);border-color:rgba(var(--ion-color-light-rgb),.08);cursor:not-allowed;opacity:.5}.time-slot.selected{background:var(--color-brand-primary);border-color:var(--color-brand-primary);box-shadow:0 4px 12px rgba(var(--color-brand-primary-rgb),.4)}.time-slot.conflict{border-color:#ffc40999;background:#ffc4091a}.slot-time{font-size:12px;font-weight:600;color:var(--color-text-primary)}.time-slot.booked .slot-time,.time-slot.past .slot-time{color:var(--color-text-disabled)}.time-slot.selected .slot-time{color:var(--color-text-on-brand)}.slot-status-icon{position:absolute;top:4px;right:4px;font-size:14px}.slot-status-icon.booked{color:var(--color-danger)}.slot-status-icon.selected{color:var(--color-text-on-brand)}.slots-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--color-text-secondary)}.slots-loading p{margin-top:12px;font-size:14px}.slots-legend{display:flex;justify-content:center;gap:20px;margin-bottom:16px;padding:14px;background:var(--color-surface-2);border-radius:12px;border:1px solid var(--color-border-subtle)}.slots-legend .legend-item{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}.legend-color{width:18px;height:18px;border-radius:6px}.legend-color.available{background:rgba(var(--color-brand-primary-rgb),.25);border:2px solid var(--color-brand-primary)}.legend-color.booked{background:rgba(var(--ion-color-light-rgb),.15);border:2px solid var(--color-text-tertiary)}.legend-color.selected{background:var(--color-brand-primary);border:2px solid var(--color-brand-primary)}.selected-time-display{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;background:rgba(var(--color-brand-primary-rgb),.12);border:2px solid rgba(var(--color-brand-primary-rgb),.3);border-radius:14px}.selected-time-label{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.selected-time-value{font-size:16px;font-weight:700;color:var(--color-brand-primary)}@media (max-width: 360px){.time-slots-grid{grid-template-columns:repeat(3,1fr)}.duration-btn{padding:8px 10px;font-size:12px}.duration-selector{flex-direction:column;align-items:flex-start;gap:10px}.duration-options{width:100%}.slots-legend{gap:12px;flex-wrap:wrap}.slots-legend .legend-item{font-size:11px}}.recurring-options{padding:20px;background:var(--color-surface-2);border-radius:16px;border:1px solid var(--color-border-subtle)}.recurring-toggle{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px}.toggle-label{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:var(--color-text-primary)}.toggle-label ion-icon{font-size:24px;color:var(--color-brand-primary)}.recurring-settings{padding-top:20px;border-top:1px solid var(--color-border-default);display:flex;flex-direction:column;gap:24px}.setting-row{display:flex;flex-direction:column;gap:10px}.setting-label{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.8px}.frequency-select{--background: var(--color-surface-3);--border-radius: 12px;--padding-start: 16px;--padding-end: 16px;--color: var(--color-text-primary);font-size:15px;font-weight:500;border:1px solid var(--color-border-default);border-radius:12px;min-height:48px;width:100%;max-width:100%}.frequency-select::part(container){display:flex;justify-content:space-between;align-items:center;width:100%}.frequency-select::part(icon){color:var(--color-text-tertiary);margin-left:auto;position:absolute;right:12px}.frequency-select::part(text){color:var(--color-text-primary);flex:1}.interval-input{display:flex;align-items:center;gap:12px}.interval-number{width:90px;--background: var(--color-surface-3);--border-radius: 12px;--padding-start: 16px;--padding-end: 16px;--color: var(--color-text-primary);text-align:center;font-size:16px;font-weight:600;border:1px solid var(--color-border-default);border-radius:12px;min-height:48px}.interval-unit{font-size:15px;font-weight:500;color:var(--color-text-secondary)}.days-selector{display:flex;flex-wrap:wrap;gap:8px}.day-btn{padding:12px 16px;border:2px solid var(--color-border-default);border-radius:12px;background:var(--color-surface-3);color:var(--color-text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.day-btn:hover{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.1)}.day-btn.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-text-on-brand);box-shadow:0 4px 12px rgba(var(--color-brand-primary-rgb),.4)}.day-select{width:140px;--background: var(--color-surface-3);--border-radius: 12px;--padding-start: 16px;--padding-end: 40px;--color: var(--color-text-primary);font-size:15px;font-weight:500;border:1px solid var(--color-border-default);border-radius:12px;min-height:48px;position:relative}.day-select::part(container){display:flex;justify-content:space-between;align-items:center}.day-select::part(icon){color:var(--color-text-tertiary);position:absolute;right:12px}.day-select::part(text){color:var(--color-text-primary)}.end-type-selector{display:flex;gap:10px}.end-type-btn{flex:1;padding:14px 16px;border:2px solid var(--color-border-default);border-radius:12px;background:var(--color-surface-3);color:var(--color-text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.end-type-btn:hover{border-color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb),.1)}.end-type-btn.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-text-on-brand);box-shadow:0 4px 12px rgba(var(--color-brand-primary-rgb),.4)}.count-input{display:flex;align-items:center;gap:12px}.count-number{width:90px;--background: var(--color-surface-3);--border-radius: 12px;--padding-start: 16px;--padding-end: 16px;--color: var(--color-text-primary);text-align:center;font-size:16px;font-weight:600;border:1px solid var(--color-border-default);border-radius:12px;min-height:48px}.count-label{font-size:15px;font-weight:500;color:var(--color-text-secondary)}.date-picker{--background: var(--color-surface-3);--border-radius: 16px;margin:0;padding:12px;border:1px solid var(--color-border-default);border-radius:16px}.date-picker::part(calendar-day){color:var(--color-text-primary);font-weight:500}.date-picker::part(calendar-day today){color:var(--color-brand-primary);font-weight:700}.date-picker::part(calendar-day active){background:var(--color-brand-primary);color:var(--color-text-on-brand)}.date-picker::part(calendar-day disabled){color:var(--color-text-disabled)}.date-picker::part(month-year-button){color:var(--color-text-primary);font-weight:600}.date-picker::part(wheel-item){color:var(--color-text-primary)}.date-picker::part(wheel-item active){color:var(--color-brand-primary)}ion-select-popover{--background: var(--color-surface-1)}ion-select-popover ion-item{--background: var(--color-surface-1);--color: var(--color-text-primary)}ion-select-popover ion-radio{--color: var(--color-text-tertiary);--color-checked: var(--color-brand-primary)}@media (max-width: 360px){.recurring-options{padding:16px}.day-btn{padding:10px 12px;font-size:12px}.end-type-btn{padding:12px 10px;font-size:12px}.interval-number,.count-number{width:80px}}
