*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--navy:#1a1347;--navy-2:#2d2670;--navy-deep:#0f0a2e;--blue:#0099d6;--blue-2:#2db8e8;--blue-pale:#e5f4fb;--yellow:#fced00;--yellow-soft:#fff8b5;--ww-red:#e3232a;--burgundy:#8d191c;--bg:#dce4f5;--bg-soft:#e8ecf6;--card:#fff;--border:#ececee;--border-soft:#f2f2f4;--text:#1a1a2e;--text-2:#4a4a5e;--text-card:#6b6b7a;--muted:#8a8a95;--subtle:#b5b5be;--container-shadow:0 1px 2px #1a13470a, 0 8px 24px #1a134714;--green:#1faa59;--green-bg:#dfffec;--green-pale:#e8f8ee;--red:#e3232a;--red-bg:#ffe5e5;--orange:#ff8c42;--orange-bg:#fff1e5;--mint:#c5f0e3;--peach:#ffe5d5;--lavender:#e8e2ff;--line-green:#06c755;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:24px;--ease-native:cubic-bezier(.2, .8, .2, 1);--ease-press:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.14s;--dur-page:.24s;--dur-spring:.42s;--bottom-nav-h:68px}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;scrollbar-width:none;overscroll-behavior:none;touch-action:manipulation;-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;height:100%;min-height:100dvh;font-family:Kanit,Noto Sans Thai,system-ui,-apple-system,sans-serif;line-height:1.45}button,a,.list-item,.tab-item,.pill{touch-action:manipulation}button:active:not(:disabled){filter:brightness(1.06);transition:transform var(--dur-fast) var(--ease-press), filter var(--dur-fast) var(--ease-press);transform:scale(.97)}.list-item:active{filter:brightness(1.04);transition:transform var(--dur-fast) var(--ease-press), filter var(--dur-fast) var(--ease-press);transform:scale(.97)}.tab-bar button:active,.tab-bar .tab-item:active,.tab-bar .tab-fab-item:active,.tab-bar .tab-fab:active,.qa-item:active,.qa-item:active .qa-circle{filter:none!important;transform:none!important}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}html::-webkit-scrollbar{width:0;display:none}body::-webkit-scrollbar{width:0;display:none}*{scrollbar-width:none}::-webkit-scrollbar{width:0;height:0;display:none}#root{height:100%;min-height:100dvh}.app-container{width:100%;height:100%;min-height:100dvh}.phone{background:linear-gradient(165deg,#c8d9f8 0%,#dce4f5 28%,#e4e0f6 62%,#d8dcf0 100%);width:100%;height:100%;min-height:100dvh;position:relative;overflow:hidden}.app-bg-mesh{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.app-bg-blob{filter:blur(90px);border-radius:50%;position:absolute}.app-bg-blob--a{opacity:.82;background:#66a1ff;width:260px;height:260px;top:-90px;left:-40px}.app-bg-blob--b{opacity:.78;background:#9774f7;width:250px;height:250px;top:-80px;right:-48px}.app-bg-blob--c{opacity:.38;background:#7ba8f5;width:300px;height:300px;bottom:8%;left:18%}.app-bg-grain{opacity:.03;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.screen{-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-y:contain;scroll-behavior:smooth;backface-visibility:hidden;z-index:1;background:0 0;flex-direction:column;display:none;position:absolute;inset:0;overflow:hidden auto;transform:translateZ(0)}.screen::-webkit-scrollbar{width:0;display:none}.content::-webkit-scrollbar{width:0;display:none}.content-center::-webkit-scrollbar{width:0;display:none}.content-full::-webkit-scrollbar{width:0;display:none}.content,.content-center,.content-full{scrollbar-width:none}.screen.active{animation:nativeScreenIn var(--dur-page) var(--ease-native) both;will-change:transform, opacity;display:flex}.screen.active .app-bar,.screen.active .home-header,.screen.active .content,.screen.active .content-center,.screen.active .qr-content{animation:nativeContentIn .28s var(--ease-native) both}@keyframes nativeScreenIn{0%{opacity:.001;transform:translateY(10px)scale(.995)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes nativeContentIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}.page-loader{opacity:0;animation:.25s .2s forwards pageLoaderIn}@keyframes pageLoaderIn{to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}::view-transition-old(root){animation-duration:var(--dur-page)}::view-transition-new(root){animation-duration:var(--dur-page)}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}::view-transition-group(tabbar){animation:none}::view-transition-image-pair(tabbar){animation:none}::view-transition-old(tabbar){mix-blend-mode:normal;animation:none}::view-transition-new(tabbar){mix-blend-mode:normal;animation:none}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.status-bar{height:44px;color:var(--text);background:0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px 0;font-size:15px;font-weight:600;display:flex}.status-bar.dark{color:#fff}.status-bar .indicators{align-items:center;gap:6px;font-size:13px;display:flex}.app-bar{z-index:30;background:0 0;flex-shrink:0;align-items:center;gap:12px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.app-bar:before{content:"";z-index:-1;pointer-events:none;-webkit-backdrop-filter:saturate(180%)blur(22px);position:absolute;inset:0 0 -18px;-webkit-mask-image:linear-gradient(#000 0% 58%,#00000073 78%,#0000 100%);mask-image:linear-gradient(#000 0% 58%,#00000073 78%,#0000 100%)}.app-bar .back-btn{cursor:pointer;width:40px;height:40px;color:var(--text);background:#ffffffd1;border:none;border-radius:50%;justify-content:center;align-items:center;font-family:inherit;font-size:18px;display:flex;transform:translateZ(0);box-shadow:0 1px 4px #0000000a}.app-bar .title{flex:1;font-size:17px;font-weight:600}.app-bar .icon-btn{cursor:pointer;background:#ffffffd1;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-family:inherit;font-size:18px;display:flex;transform:translateZ(0);box-shadow:0 1px 4px #0000000a}.app-bar .icon-btn.active,.search-action.active,.refresh-action:active{background:var(--blue-pale);color:var(--navy)}.ptr-indicator{z-index:20;pointer-events:none;will-change:transform;background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:4px;left:50%;box-shadow:0 4px 14px #1a134724}.ptr-spinner{border:2.5px solid #1a134726;border-top-color:var(--navy);border-radius:50%;width:20px;height:20px;display:block}.ptr-indicator.is-refreshing .ptr-spinner{animation:.7s linear infinite spin}.content{padding:8px 20px calc(var(--bottom-nav-h) + 20px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;flex:1 0 auto;overflow:visible}.content-full{padding:0 0 calc(var(--bottom-nav-h) + 12px + env(safe-area-inset-bottom,0px))}.content.store-detail-content{padding-top:0;overflow:visible}.store-detail-hero{height:220px;padding-top:env(safe-area-inset-top,0px);background:linear-gradient(135deg, var(--navy) 0%, var(--blue) 100%);flex-shrink:0;position:relative}.store-detail-hero-back{top:calc(12px + env(safe-area-inset-top,0px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex;position:absolute;left:20px}.store-detail-hero-info{color:#fff;position:absolute;bottom:48px;left:20px;right:20px}.store-detail-stats{z-index:1;margin-top:-32px;position:relative;box-shadow:0 8px 24px #1a13471a}.store-detail-stats-row{align-items:flex-start;gap:8px;display:flex}.store-detail-stats-row .sic-stat+.sic-stat{border-left:1px solid var(--border-soft);padding-left:12px}.content-center{padding:24px 24px calc(var(--bottom-nav-h) + 20px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;flex-direction:column;flex:1 0 auto;display:flex;overflow:visible}.tab-bar{height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));padding:6px 8px env(safe-area-inset-bottom,0px);z-index:50;border-top:1px solid var(--border-soft);-webkit-backdrop-filter:saturate(1.2)blur(14px);backdrop-filter:saturate(1.2)blur(14px);view-transition-name:tabbar;background:#fff;justify-content:space-around;align-items:flex-start;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateZ(0);box-shadow:0 -1px 14px #1a13470f}.tab-item{cursor:pointer;color:var(--muted);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;min-height:48px;padding:4px 6px 12px;font-family:inherit;display:flex;position:relative}.tab-item.active{color:var(--navy);transform:translateY(-1px)}.tab-item:after{content:"";width:6px;height:6px;transition:transform var(--dur-fast) var(--ease-spring), background var(--dur-fast) ease, box-shadow var(--dur-fast) ease;background:0 0;border-radius:999px;position:absolute;bottom:4px;transform:scaleX(0)}.tab-item.active:after{background:var(--blue);transform:scaleX(1);box-shadow:0 0 0 4px #0099d638}.tab-item .icon{font-size:22px;line-height:1}.tab-item .tab-icon{flex-shrink:0;width:24px;height:24px}.tab-item .label{letter-spacing:.2px;font-size:11px;font-weight:600}.tab-fab-item{cursor:pointer;min-height:48px;color:var(--muted);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;padding:0 0 12px;font-family:inherit;display:flex}.tab-fab-item .label{letter-spacing:.2px;font-size:11px;font-weight:600;line-height:1}.tab-fab{background:linear-gradient(135deg, var(--navy) 0%, var(--blue) 100%);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;margin-top:-22px;font-size:24px;display:flex;transform:translateZ(0);box-shadow:0 8px 20px #1a13474d}.btn{border-radius:var(--r-lg);cursor:pointer;transition:transform var(--dur-fast) var(--ease-press), background var(--dur-fast) ease, box-shadow var(--dur-fast) ease, opacity var(--dur-fast) ease;border:none;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:16px 24px;font-family:inherit;font-size:16px;font-weight:600;display:inline-flex;transform:translateZ(0)}.btn-primary{background:var(--navy);color:#fff}.btn-primary:active{background:var(--navy-2);filter:brightness(1.08);transform:scale(.97)}.btn-blue{background:var(--blue);color:#fff}.btn-outlined{color:var(--navy);border:1.5px solid var(--navy);background:#fff}.btn-ghost{color:var(--navy);background:0 0}.btn-line{background:var(--line-green);color:#fff}.btn-yellow{background:var(--yellow);color:var(--navy);font-weight:700}.card{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;padding:20px}.card-flat{border-radius:var(--r-lg);border:1px solid var(--border-soft);box-shadow:var(--container-shadow);background:#fff;padding:20px}.card-lg{border-radius:var(--r-xl);padding:24px}.container-shadow{box-shadow:var(--container-shadow)}.card,.card-flat,.store-card,.store-info-card,.machine-card,.mode-card,.credit-display,.pay-method-card,.txn-row,.list-item,.list-container,.qa-item,.topup-method-header,.topup-amount-input,.send-steps,.vend-sheet,.search-panel{color:var(--text-card)}.input-group{margin-bottom:20px}.input-label{color:var(--muted);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.input-field{border:1.5px solid var(--border);border-radius:var(--r-md);width:100%;color:var(--text-card);background:#fff;padding:16px 18px;font-family:inherit;font-size:16px;transition:border .15s}.input-field:focus{border-color:var(--navy);outline:none}.input-field::placeholder{color:var(--subtle)}.input-with-icon{position:relative}.input-with-icon .input-field{padding-left:50px}.input-with-icon .input-icon{color:var(--muted);font-size:18px;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.otp-row{justify-content:center;gap:12px;margin:32px 0 16px;display:flex}.otp-cell{text-align:center;border:none;border-bottom:2px solid var(--border);width:44px;color:var(--text-card);background:0 0;padding:8px 0;font-family:inherit;font-size:28px;font-weight:600}.otp-cell.filled{border-bottom-color:var(--blue);color:var(--text-card)}.otp-cell:focus{border-bottom-color:var(--blue);outline:none}.avatar{background:linear-gradient(135deg, var(--blue) 0%, var(--blue-2) 100%);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:600;display:flex}.avatar-sm{width:36px;height:36px;font-size:15px}.avatar-lg{width:96px;height:96px;font-size:36px}.ww-logo{background-color:var(--navy);background-image:var(--asset-logo);background-position:50%;background-size:cover;border-radius:50%;width:120px;height:120px;box-shadow:0 12px 32px #1a134740}.ww-logo-sm{background-color:var(--navy);background-image:var(--asset-logo);background-position:50%;background-size:cover;border-radius:50%;width:40px;height:40px}.ww-logo-md{background-color:var(--navy);background-image:var(--asset-logo);background-position:50%;background-size:cover;border-radius:50%;width:64px;height:64px}.badge{border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-green{background:var(--green-bg);color:var(--green)}.badge-orange{background:var(--orange-bg);color:var(--orange)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-blue{background:var(--blue-pale);color:var(--blue)}.badge-navy{color:var(--navy);background:#1a134714}.badge-gray{color:var(--muted);background:#f2f2f4}.badge-dot:before{content:"●";font-size:11px}.hero-card{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 60%, var(--blue) 130%);color:#fff;border-radius:var(--r-2xl);margin:16px 0;padding:24px;position:relative;overflow:hidden;box-shadow:0 8px 24px #1a13472e}.hero-card:after{content:"";background:#ffffff0f;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-60px;right:-60px}.hero-card:before{content:"";background:#ffffff0a;border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:20px}.hero-label{opacity:.85;z-index:1;font-size:14px;font-weight:400;position:relative}.hero-value{z-index:1;letter-spacing:-.5px;margin-top:6px;font-size:36px;font-weight:700;line-height:1.1;position:relative}.hero-value .unit{opacity:.9;font-size:16px;font-weight:400}.hero-sub{opacity:.85;z-index:1;margin-top:12px;font-size:13px;position:relative}.hero-actions{z-index:1;gap:10px;margin-top:16px;display:flex;position:relative}.hero-action{border-radius:var(--r-md);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff2e;border:none;flex:1;padding:10px;font-family:inherit;font-size:14px;font-weight:500}.promo-banner{background:linear-gradient(135deg, var(--yellow) 0%, var(--yellow-soft) 100%);color:var(--navy);border-radius:var(--r-lg);border:1px solid #0000000a;align-items:center;gap:14px;margin-bottom:16px;padding:16px 18px;display:flex;box-shadow:0 2px 12px #fced0040}.promo-banner .emoji{flex-shrink:0;font-size:32px}.promo-banner .title{font-size:15px;font-weight:700}.promo-banner .desc{opacity:.85;margin-top:2px;font-size:13px}.quick-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:8px 0 16px;display:grid}.quick-item{cursor:pointer;flex-direction:column;align-items:center;gap:6px;display:flex}.quick-icon{border-radius:var(--r-lg);width:56px;height:56px;box-shadow:var(--container-shadow);background:#fff;justify-content:center;align-items:center;font-size:24px;display:flex}.quick-icon.navy{background:var(--navy);color:#fff}.quick-icon.blue{background:var(--blue-pale);color:var(--blue)}.quick-icon.yellow{background:var(--yellow-soft);color:#b8a800}.quick-icon.mint{background:var(--mint);color:#0e8055}.quick-icon.peach{background:var(--peach);color:#b85b23}.quick-icon.lavender{background:var(--lavender);color:#5b47c9}.quick-label{color:var(--text-2);text-align:center;font-size:12px;font-weight:500}.section-title{justify-content:space-between;align-items:center;margin:20px 0 12px;display:flex}.section-title .label{color:var(--text-card);font-size:16px;font-weight:600}.section-title .link{color:var(--blue);cursor:pointer;font-size:13px;font-weight:500}.store-card{border-radius:var(--r-lg);cursor:pointer;box-shadow:var(--container-shadow);background:#fff;align-items:flex-start;gap:12px;margin-bottom:10px;padding:14px;display:flex}.store-thumb{border-radius:var(--r-md);background:linear-gradient(135deg, var(--navy) 0%, var(--blue) 100%);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;display:flex}.store-thumb.peach{background:linear-gradient(135deg,#f96 0%,#ffd9c5 100%)}.store-thumb.mint{background:linear-gradient(135deg, #14b8a6 0%, var(--mint) 100%)}.store-info{flex:1;min-width:0}.store-name{color:var(--text-card);font-size:16px;font-weight:600}.store-addr{color:var(--muted);margin-top:2px;font-size:13px}.store-meta{align-items:center;gap:10px;margin-top:6px;font-size:12px;display:flex}.store-meta .distance{color:var(--muted);font-weight:400}.store-meta .available{color:var(--green);font-weight:600}.store-meta .time{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.store-map-btn{border:1px solid var(--blue-pale);background:var(--blue-pale);color:#327fe4;cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;margin-left:auto;padding:5px 10px;font-family:inherit;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.store-map-btn:active{filter:brightness(.97);transform:scale(.96)}.store-map-btn svg{flex-shrink:0}.search-panel{border:1px solid var(--border-soft);min-height:48px;color:var(--muted);box-shadow:var(--container-shadow);animation:nativeContentIn .18s var(--ease-native) both;background:#fff;border-radius:999px;align-items:center;gap:10px;margin:0 0 14px;padding:0 12px;display:flex}.search-panel input{min-width:0;font:inherit;color:var(--text-card);background:0 0;border:none;outline:none;flex:1;font-size:15px}.search-panel input::placeholder{color:var(--subtle)}.search-panel button{background:var(--bg-soft);width:30px;height:30px;color:var(--muted);cursor:pointer;border:none;border-radius:50%;font-family:inherit;font-size:20px;line-height:1}.map-canvas{z-index:2;background:#e8eaed;flex-shrink:0;height:240px;min-height:240px;position:relative;overflow:hidden}.find-store-screen>.app-bar{z-index:30;flex-shrink:0;position:sticky;top:0}.find-store-search-layer{z-index:60;pointer-events:none;position:absolute;inset:0}.find-store-search-backdrop{cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:saturate(160%)blur(14px);animation:findStoreBackdropIn .18s var(--ease-native) both;background:#0f0a2e47;border:none;margin:0;padding:0;position:absolute;inset:0}.find-store-search-float{z-index:1;pointer-events:auto;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 12px;animation:.28s cubic-bezier(.22,1.4,.36,1) both findStoreSearchIn;position:absolute;top:0;left:0;right:0}.find-store-search-float .search-panel{margin:0;box-shadow:0 1px 2px #0f0a2e14,0 12px 28px #0f0a2e29}.find-store-suggest{-webkit-overflow-scrolling:touch;border:1px solid var(--border-soft);background:#fffffff5;border-radius:18px;max-height:min(52vh,360px);margin:10px 0 0;padding:6px;list-style:none;animation:.22s cubic-bezier(.22,1.4,.36,1) both findStoreSearchIn;overflow-y:auto;box-shadow:0 1px 2px #0f0a2e0f,0 14px 32px #0f0a2e24}.find-store-suggest--empty{text-align:center;color:var(--muted);padding:18px 16px;font-size:14px}.find-store-suggest-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:14px;align-items:center;gap:12px;padding:10px;font-family:inherit;display:flex}.find-store-suggest-item:active{background:var(--blue-pale)}.find-store-suggest-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.find-store-suggest-name{color:var(--text-card);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.find-store-suggest-addr{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.find-store-suggest-dist{color:var(--muted);flex-shrink:0;font-size:12px;font-weight:600}@keyframes findStoreBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes findStoreSearchIn{0%{opacity:0;transform:translateY(-12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.find-store-map{z-index:1;flex-shrink:0;margin-top:-56px;position:relative}.find-store-map .map-canvas{z-index:1;height:296px;min-height:296px}.map-canvas--google{background:#e8eaed}.map-canvas--google:before,.map-canvas--google:after{display:none}.map-canvas:before{content:"";opacity:.9;background:linear-gradient(90deg,#0000 0 18%,#fff 18% 21%,#0000 21% 100%),linear-gradient(#0000 0 38%,#fff 38% 41%,#0000 41% 100%),linear-gradient(135deg,#0000 0 55%,#f3f4f6 55% 60%,#0000 60% 100%),linear-gradient(45deg,#0000 0 70%,#f3f4f6 70% 73%,#0000 73% 100%);position:absolute;inset:0}.map-canvas:after{content:"";background:radial-gradient(circle at 22% 28%,#dce0e499 0%,#0000 8%),radial-gradient(circle at 78% 22%,#dce0e499 0%,#0000 10%),radial-gradient(circle at 65% 75%,#dce0e499 0%,#0000 9%),radial-gradient(circle at 15% 82%,#dce0e499 0%,#0000 7%);position:absolute;inset:0}.map-pin{background:var(--navy);z-index:2;cursor:pointer;border-radius:50% 50% 50% 0;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:absolute;transform:rotate(-45deg);box-shadow:0 6px 16px #1a134759}.map-pin span{display:none}.map-pin img.pin-logo{object-fit:cover;background:#fff;border-radius:50%;width:26px;height:26px;display:block;transform:rotate(45deg)}.map-pin.user-loc{background:var(--blue);z-index:3;border:4px solid #fff;border-radius:50%;width:18px;height:18px;transform:none;box-shadow:0 0 0 8px #0099d640}.map-pin.user-loc img{display:none}.store-icon-tile{background:linear-gradient(140deg, var(--navy) 0%, #327fe4 125%);border-radius:11px;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;width:42px;height:42px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #1a13471f}.store-icon-tile svg{color:#fff;z-index:1;width:21px;height:21px;position:relative}.store-icon-tile--photo{background:var(--border-soft);box-shadow:none}.store-icon-tile--logo{box-shadow:none;background:#2a2460;padding:0}.store-thumb-logo{object-fit:cover;filter:brightness(1.08);width:100%;height:100%;display:block}.store-thumb-skeleton{border-radius:inherit;z-index:1;position:absolute;inset:0}.store-thumb-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .2s;display:block}.store-icon-tile--photo.is-ready .store-thumb-img{opacity:1}.map-pin img.pin-logo{object-fit:cover;border-radius:50%;width:24px;height:24px;transform:rotate(45deg)}.icon-24h{vertical-align:-2px;width:14px;height:14px;display:inline-block}.map-overlay{color:var(--navy);background:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:600;position:absolute;top:14px;right:14px;box-shadow:0 2px 8px #0000001a}.machine-card{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:flex-start;gap:10px;margin-bottom:10px;padding:12px;display:flex;position:relative;overflow:hidden}.machine-card:before{content:"";background:var(--muted);width:4px;position:absolute;top:0;bottom:0;left:0}.machine-card--washer:before{background:#3b82f6}.machine-card--dryer:before{background:#f97316}.machine-card--vending:before{background:#10b981}.machine-card.offline:before{background:var(--muted)}.machine-card.offline{opacity:.6}.machine-card--washer .machine-icon{color:#3b82f6;background:#eff6ff}.machine-card--dryer .machine-icon{color:#f97316;background:#fff7ed}.machine-card--vending .machine-icon{color:#10b981;background:#ecfdf5}@keyframes machinePulseWasher{0%,to{box-shadow:var(--container-shadow), 0 0 0 0 #3b82f600}50%{box-shadow:var(--container-shadow), 0 0 0 6px #3b82f647}}@keyframes machinePulseDryer{0%,to{box-shadow:var(--container-shadow), 0 0 0 0 #f9731600}50%{box-shadow:var(--container-shadow), 0 0 0 6px #f9731647}}@keyframes machinePulseVending{0%,to{box-shadow:var(--container-shadow), 0 0 0 0 #10b98100}50%{box-shadow:var(--container-shadow), 0 0 0 6px #10b98147}}.machine-card--washer.running{animation:2s ease-in-out infinite machinePulseWasher}.machine-card--dryer.running{animation:2s ease-in-out infinite machinePulseDryer}.machine-card--vending.running{animation:2s ease-in-out infinite machinePulseVending}.machine-card--readonly{cursor:default;pointer-events:none}.machine-card--readonly:active{filter:none!important;transform:none!important}.mode-card.is-locked{opacity:.45;pointer-events:none;cursor:default}.mode-card.is-disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.mode-grid--locked .mode-card{cursor:default}.mode-card.is-running-active{pointer-events:none}.machine-status-panel{border-radius:var(--r-lg);box-shadow:var(--container-shadow);text-align:center;color:var(--text-card);background:#fff;margin-top:16px;padding:18px 16px}.machine-status-panel.is-running{background:#fff7ed;border:1px solid #f9731640}.machine-status-panel.is-offline{border:1px solid var(--border);background:#f5f5f7}.msp-label{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:600}.msp-title{color:var(--text-card);font-size:18px;font-weight:700}.machine-status-panel.is-running .msp-title{color:#c2410c}.msp-countdown{color:#ea580c;margin-top:10px;font-size:16px;font-weight:600}.msp-countdown b{font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.msp-countdown-sub{color:var(--muted);margin-top:2px;font-size:12px;font-weight:500;display:block}.msp-hint{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.4}.machine-no{border-radius:var(--r-md);background:var(--bg);width:56px;height:56px;color:var(--text-card);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.machine-no .lbl{color:var(--muted);margin-top:-2px;font-size:10px;font-weight:500}.mode-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.mode-card{border:2px solid var(--border);border-radius:var(--r-md);text-align:center;cursor:pointer;box-shadow:var(--container-shadow);transition:background .32s ease, border-color .32s ease, box-shadow .32s ease, transform var(--dur-fast) var(--ease-press), filter var(--dur-fast) var(--ease-press);background:#fff;padding:14px 8px;position:relative}.mode-card.selected{border-color:var(--navy);background:var(--blue-pale);box-shadow:var(--container-shadow), 0 0 0 4px #1a13470f}.mode-grid--dryer .mode-card.selected{box-shadow:var(--container-shadow), 0 0 0 4px #f973161f;background:#fff7ed;border-color:#f97316}.mode-grid--washer .mode-card.selected{box-shadow:var(--container-shadow), 0 0 0 4px #3b82f61f;background:#eff6ff;border-color:#3b82f6}.mode-grid--washer .mode-card--normal,.mode-grid--washer .mode-card--warm,.mode-grid--washer .mode-card--hot{border-color:var(--border);background:#fff}.mode-grid--washer .mode-card--normal.selected{box-shadow:var(--container-shadow), 0 0 0 4px #2563eb3d;background:#dbeafe;border-color:#2563eb}.mode-grid--washer .mode-card--warm.selected{box-shadow:var(--container-shadow), 0 0 0 4px #ea580c3d;background:#ffedd5;border-color:#ea580c}.mode-grid--washer .mode-card--hot.selected{box-shadow:var(--container-shadow), 0 0 0 4px #dc26263d;background:#fee2e2;border-color:#dc2626}.mode-card .mode-icon{display:none}.mode-card .mode-name{color:var(--text-card);margin-top:0;font-size:17px;font-weight:700;line-height:1.25}.mode-grid--dryer .mode-card .mode-name,.mode-grid--dryer .mode-card.selected .mode-name{color:#f97316}.mode-grid--washer .mode-card .mode-name,.mode-grid--washer .mode-card.selected .mode-name{color:#3b82f6}.mode-grid--washer .mode-card--normal .mode-name,.mode-grid--washer .mode-card--warm .mode-name,.mode-grid--washer .mode-card--hot .mode-name{color:var(--text-card)}.mode-grid--washer .mode-card:not(.selected) .mode-name,.mode-grid--washer .mode-card:not(.selected) .mode-detail,.mode-grid--washer .mode-card:not(.selected) .mode-price,.mode-grid--washer .mode-card:not(.selected) .mode-price span{color:var(--muted)}.mode-grid--washer .mode-card--normal.selected .mode-name{color:#2563eb}.mode-grid--washer .mode-card--warm.selected .mode-name{color:#ea580c}.mode-grid--washer .mode-card--hot.selected .mode-name{color:#dc2626}.mode-card .mode-detail{color:var(--text-card);margin-top:2px;font-size:13px;font-weight:500;line-height:1.3}.mode-card.selected .mode-detail{color:var(--text-card)}.mode-card .mode-price{color:var(--text-card);margin-top:8px;font-size:17px;font-weight:700}.mode-card .mode-price span{color:var(--muted);margin-left:2px;font-size:11px;font-weight:500}.credit-display{border-radius:var(--r-md);box-shadow:var(--container-shadow);background:#fff;justify-content:space-between;align-items:center;margin-top:12px;padding:14px 16px;display:flex}.cd-left,.cd-right{flex-direction:column;display:flex}.cd-right{align-items:flex-end}.cd-label{color:var(--muted);font-size:12px}.cd-value{color:var(--text-card);margin-top:2px;font-size:18px;font-weight:700}.cd-value>span:not(.cd-unit){opacity:.7;font-size:13px}.cd-value-2{color:var(--green);flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:4px;margin-top:2px;font-size:18px;font-weight:700;display:flex}.cd-value-2>span:not(.cd-unit):not(.cd-was):not(.cd-arrow){opacity:.7;font-size:13px}.cd-value-2.insufficient{color:var(--red);margin-top:2px;font-size:15px;font-weight:700}.cd-unit{opacity:.75;margin-left:2px;font-size:12px;font-weight:500}.cd-value-2>.cd-was{color:var(--muted);font-size:14px;font-weight:500}.cd-value-2>.cd-was>span{opacity:.7;font-size:11px}.cd-value-2>.cd-arrow{color:var(--muted);font-size:14px;font-weight:500}.confirm-pay-cta{margin-top:16px}.confirm-pay-cta .btn{border-radius:999px;width:100%;padding:16px;font-size:16px;font-weight:600}.btn,button,[role=button],.store-card,.machine-card,.mode-card,.pay-method-card,.txn-row,.list-item,.stat-card,.hcard,.vend-row,.pill,.qa-pill,.back-btn,.icon-btn,.header-action,.sic-nav,.topup-promo-card,.promo-banner,.promo-banner-lg,.active-txn-banner,.quick-item,.hero-action,.store-map-btn,.balance-eye,.otp-resend,.section-title .link,.coupon-pick,.pressable{-webkit-tap-highlight-color:transparent;position:relative}.store-card:active,.machine-card:active,.mode-card:active,.pay-method-card:active,.txn-row:active,.stat-card:active,.hcard:active,.vend-row:active,.pill:active,.qa-pill:active,.back-btn:active,.icon-btn:active,.header-action:active,.sic-nav:active,.topup-promo-card:active,.promo-banner:active,.promo-banner-lg:active,.active-txn-banner:not(.active-txn-banner--static):active,.quick-item:active,.hero-action:active,.store-map-btn:active,.balance-eye:active,.coupon-pick:active,.pressable:active:not(:disabled){filter:brightness(1.05);transform:scale(.97)}.press-ripple-host{border-radius:inherit;pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.press-ripple{pointer-events:none;background:#ffffff6b;border-radius:50%;animation:.52s ease-out forwards pressRippleOut;position:absolute;transform:translate(-50%,-50%)scale(0)}.press-ripple--dark{background:#1a13471f}@keyframes pressRippleOut{to{opacity:0;transform:translate(-50%,-50%)scale(1)}}.btn-primary:active:not(:disabled){filter:brightness(1.1)}.topup-balance{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 60%, var(--blue) 130%);color:#fff;border-radius:var(--r-xl);margin-bottom:24px;padding:22px;position:relative;overflow:hidden;box-shadow:0 8px 24px #1a13472e}.topup-balance:after{content:"";background:#ffffff0f;border-radius:50%;width:160px;height:160px;position:absolute;top:-40px;right:-40px}.topup-balance .tb-label{opacity:.85;font-size:13px}.topup-balance .tb-amount{z-index:1;margin-top:6px;font-size:36px;font-weight:700;line-height:1.1;position:relative}.topup-balance .tb-amount .unit{opacity:.9;font-size:16px;font-weight:500}.pay-method-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.pay-method-card{border:1.5px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:center;box-shadow:var(--container-shadow);background:#fff;padding:12px 10px;transition:all .15s}.pay-method-card:active{background:var(--bg-soft);transform:scale(.98)}.pay-method-icon{border-radius:var(--r-sm);justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 8px;font-size:22px;display:flex;overflow:hidden}.pay-method-icon img{object-fit:contain;width:100%;height:100%;display:block}.pay-method-icon.promptpay{color:#1976d2;background:#e3f2fd}.pay-method-icon.truemoney{color:#f57c00;background:#fff3e0}.pay-method-name{color:var(--text-card);font-size:15px;font-weight:600}.pay-method-desc{color:var(--muted);margin-top:2px;font-size:11px}.topup-method-header{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:12px;margin-bottom:20px;padding:14px 16px;display:flex}.topup-method-header .pay-method-icon{width:44px;height:44px;margin:0;font-size:22px}.topup-method-header .pay-method-icon img{object-fit:contain;width:100%;height:100%}.topup-method-header .tmh-info{flex:1}.topup-method-header .tmh-name{font-size:15px;font-weight:600}.topup-method-header .tmh-desc{color:var(--muted);margin-top:2px;font-size:12px}.topup-amount-input{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;margin-bottom:20px;padding:22px 20px}.topup-amount-input .tai-label{color:var(--text-card);margin-bottom:10px;font-size:14px;font-weight:500}.topup-amount-input input{width:100%;color:var(--text-card);border:none;border-bottom:2px solid var(--border);text-align:center;background:0 0;outline:none;padding:8px 0;font-family:inherit;font-size:40px;font-weight:700}.topup-amount-input input::placeholder{color:var(--subtle);font-weight:500}.topup-amount-input .tai-hint{color:var(--muted);text-align:center;margin-top:8px;font-size:12px}.quick-amounts{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;display:grid}.quick-amounts.is-arming .qa-pill{pointer-events:none}.qa-pill{border:1.5px solid var(--border);color:var(--text-card);cursor:pointer;background:#fff;border-radius:999px;padding:10px 6px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.qa-pill:hover,.qa-pill.selected{border-color:var(--navy);background:var(--blue-pale);color:var(--navy)}.qa-pill{position:relative}.qa-pill .qa-badge{background:var(--yellow);color:var(--navy);letter-spacing:.2px;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.2;position:absolute;top:-8px;right:-2px;box-shadow:0 2px 6px #fced0080}.qa-pill .qa-bonus{color:#b85b23;margin-top:1px;font-size:10px;font-weight:600;line-height:1;display:block}.qa-pill.selected .qa-bonus{color:#b85b23}.topup-amount-screen .content{min-height:auto;padding-top:clamp(4px,1vh,10px);padding-bottom:calc(8px + var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1 0 auto;justify-content:flex-start;gap:clamp(8px,1.5vh,14px);display:flex}.topup-amount-screen .topup-branch-banner{margin:0;padding:8px 12px}.topup-amount-screen .topup-method-header{margin-bottom:0;padding:clamp(8px,1.4vh,12px) 14px}.topup-amount-screen .topup-method-header .pay-method-icon{width:36px!important;height:36px!important}.topup-amount-screen .topup-method-header .pay-method-icon img{object-fit:contain;width:100%!important;height:100%!important}.topup-amount-screen .topup-amount-input{margin-bottom:0;padding:clamp(10px,1.8vh,16px) 16px}.topup-amount-screen .topup-amount-input .tai-label{margin-bottom:4px;font-size:13px}.topup-amount-screen .topup-amount-input input{padding:clamp(2px,.6vh,6px) 0;font-size:clamp(28px,5.2vh,36px)}.topup-amount-screen .topup-amount-input .tai-hint{margin-top:clamp(2px,.6vh,6px);font-size:11px}.topup-amount-screen .section-title{margin:0 0 clamp(4px,.8vh,8px)}.topup-amount-screen .quick-amounts{gap:clamp(5px,1vh,8px);margin-bottom:0}.topup-amount-screen .qa-pill{padding:clamp(7px,1.2vh,10px) 4px;font-size:13px}.topup-amount-screen .topup-amount-footer{flex-shrink:0;margin-top:clamp(2px,.8vh,6px);padding:0}.topup-amount-screen .topup-amount-footer .btn{padding:clamp(12px,1.8vh,16px)}.topup-promo-card{background:linear-gradient(135deg, #fff7cc 0%, var(--yellow) 100%);border-radius:var(--r-lg);cursor:pointer;border:1px solid #fced0099;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;display:flex;box-shadow:0 4px 14px #b8a80026}.topup-promo-card .tpc-icon{width:38px;height:38px;color:var(--navy);background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.topup-promo-card .tpc-content{flex:1;min-width:0}.topup-promo-card .tpc-title{color:var(--navy);align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.topup-promo-card .tpc-title:before{content:"โปรพิเศษ";background:var(--navy);color:var(--yellow);letter-spacing:.3px;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700}.topup-promo-card .tpc-desc{color:#5c4f00;margin-top:3px;font-size:13px;line-height:1.4}.topup-promo-card .tpc-desc b{color:var(--navy);font-weight:700}.topup-promo-card .tpc-arrow{color:var(--navy);opacity:.6;font-size:18px;font-weight:700}.store-info-card{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:12px;margin:4px 0 16px;padding:14px 16px;display:flex}.sic-stat{flex:1;min-width:0}.sic-label{color:var(--muted);margin-bottom:2px;font-size:12px}.sic-value{color:var(--text-card);font-size:18px;font-weight:700;line-height:1.1}.sic-value .sic-unit{color:var(--muted);font-size:12px;font-weight:500}.sic-divider{background:var(--border-soft);flex-shrink:0;width:1px;height:32px}.sic-nav{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.sic-nav:active{background:var(--navy-2)}.sic-nav svg{width:14px;height:14px}.machine-icon{border-radius:var(--r-md);background:var(--blue-pale);width:44px;height:44px;color:var(--navy);flex-shrink:0;justify-content:center;align-items:center;display:flex}.machine-icon svg{width:24px;height:24px}.machine-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.machine-type{color:var(--text-card);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.machine-meta{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.machine-no-label{color:var(--muted);letter-spacing:0;flex-shrink:0;font-size:12px;font-weight:400}.machine-capacity{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;line-height:1.25;overflow:hidden}.machine-status-row{align-items:center;margin-top:4px;display:flex}.machine-status-row .badge{flex-shrink:0}.machine-list-screen .content{padding-top:0}.machine-list-screen .section-title{margin:10px 0 8px}.machine-list-screen .section-title:first-of-type{margin-top:2px}.machine-list-empty{border-radius:var(--r-lg);background:var(--card);box-shadow:var(--container-shadow);text-align:center;margin-top:18px;padding:30px 22px}.machine-list-empty__icon{background:var(--blue-pale);width:58px;height:58px;color:var(--blue);border-radius:18px;margin:0 auto 14px;padding:13px}.machine-list-empty__icon svg{width:100%;height:100%}.machine-list-empty__title{color:var(--text-card);font-size:16px;font-weight:700;line-height:1.4}.machine-list-empty__description{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.55}.machine-meta .badge{flex-shrink:0;margin-left:auto}.machine-spec{color:var(--muted);margin-top:2px;font-size:13px}.machine-price{color:var(--text-card);margin-top:4px;font-size:15px;font-weight:700}.home-header{z-index:30;background:0 0;flex-shrink:0;align-items:center;gap:10px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.home-header:before{content:"";z-index:-1;pointer-events:none;-webkit-backdrop-filter:saturate(180%)blur(22px);position:absolute;inset:0 0 -18px;-webkit-mask-image:linear-gradient(#000 0% 58%,#00000073 78%,#0000 100%);mask-image:linear-gradient(#000 0% 58%,#00000073 78%,#0000 100%)}.user-avatar-wrap{background:var(--blue-pale);border-radius:50%;flex-shrink:0;width:40px;height:40px;padding:2px;box-shadow:0 1px 3px #1a13470f}.user-avatar{background:var(--navy);border-radius:50%;width:100%;height:100%;overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%}.greeting{flex:1;min-width:0}.greeting--inline{flex-wrap:nowrap;align-items:baseline;gap:6px;display:flex;overflow:hidden}.greeting--inline .greet-line{color:var(--text-2);flex-shrink:0;font-size:13px;font-weight:500}.greeting--inline .user-name{color:var(--text-card);text-overflow:ellipsis;white-space:nowrap;margin-top:0;font-size:15px;font-weight:600;overflow:hidden}.greet-line{color:var(--muted);font-size:12px;font-weight:400}.user-name{color:var(--text-card);margin-top:1px;font-size:16px;font-weight:600}.header-action{border:1px solid var(--border-soft);cursor:pointer;width:40px;height:40px;color:var(--text-card);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;display:flex}.header-action svg{width:18px;height:18px}.header-action:active{background:var(--bg-soft)}.lang-action{width:auto;min-width:58px;color:var(--navy);gap:6px;padding:0 10px;font-size:12px;font-weight:700}.lang-action span{letter-spacing:.2px;line-height:1}@keyframes atbEnter{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes atbIconPulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:0;transform:scale(1.55)}}@keyframes atbDigitIn{0%{transform:translateY(-118%)}to{transform:translateY(0)}}@keyframes atbDigitOut{0%{transform:translateY(0)}to{transform:translateY(118%)}}.active-txn-banner{--atb-accent:#ea580c;--atb-accent-soft:#ea580c24;--atb-title:#9a3412;--atb-muted:#c2410c;--atb-bg-1:#fff7ed;--atb-bg-2:#ffedd5;--atb-border:#fb923c;--atb-shadow:#ea580c29;background:radial-gradient(120% 80% at 0% 0%, #ffffff8c 0%, transparent 55%), linear-gradient(135deg, var(--atb-bg-1) 0%, var(--atb-bg-2) 100%);border:1px solid #ffffffa6;border-left:4px solid var(--atb-accent);box-shadow:0 6px 18px var(--atb-shadow);cursor:pointer;animation:atbEnter .42s var(--ease-native,cubic-bezier(.22, 1, .36, 1)) both;border-radius:16px;align-items:center;gap:12px;margin:0 0 10px;padding:13px 14px;display:flex}.active-txn-banner--washer{--atb-accent:#2563eb;--atb-accent-soft:#2563eb24;--atb-title:#1e3a8a;--atb-muted:#1d4ed8;--atb-bg-1:#eff6ff;--atb-bg-2:#dbeafe;--atb-border:#60a5fa;--atb-shadow:#2563eb24}.active-txn-banner--dryer{--atb-accent:#ea580c;--atb-accent-soft:#ea580c24;--atb-title:#9a3412;--atb-muted:#c2410c;--atb-bg-1:#fff7ed;--atb-bg-2:#ffedd5;--atb-border:#fb923c;--atb-shadow:#ea580c29}.active-txn-banner:active{box-shadow:0 2px 8px var(--atb-shadow);transform:scale(.99)}.active-txn-banner.active-txn-banner--static{cursor:default;pointer-events:none}.active-txn-banner.active-txn-banner--static:active{box-shadow:0 6px 18px var(--atb-shadow);transform:none}.active-txn-banner .atb-icon{background:var(--atb-accent-soft);width:40px;height:40px;color:var(--atb-accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.active-txn-banner .atb-icon-ring{border-radius:inherit;border:1.5px solid var(--atb-accent);pointer-events:none;animation:2.2s ease-out infinite atbIconPulse;position:absolute;inset:0}.active-txn-banner .atb-content{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.active-txn-banner .atb-main{flex:1;min-width:0}.active-txn-banner .atb-title{color:var(--atb-title);letter-spacing:-.01em;font-size:14px;font-weight:700;line-height:1.3}.active-txn-banner .atb-status{font-weight:600}.active-txn-banner .atb-sub{color:var(--atb-muted);opacity:.9;margin-top:3px;font-size:12px;font-weight:500}.active-txn-banner .atb-dot{color:#1d4ed866;font-weight:700}.active-txn-banner--dryer .atb-dot{color:#c2410c73}.active-txn-banner .atb-countdown{text-align:right;flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;display:flex}.active-txn-banner .atb-time-row{align-items:baseline;gap:4px;display:inline-flex}.active-txn-banner .atb-time{color:var(--atb-title);font-variant-numeric:tabular-nums;letter-spacing:.02em;align-items:center;font-size:22px;font-weight:800;line-height:1;display:inline-flex}.active-txn-banner .atb-digit{text-align:center;vertical-align:top;width:.62em;height:1.1em;display:inline-block;position:relative;overflow:hidden}.active-txn-banner .atb-digit--sep{width:.32em;overflow:visible}.active-txn-banner .atb-digit-in,.active-txn-banner .atb-digit-out{text-align:center;width:100%;height:100%;line-height:1.1em;display:block}.active-txn-banner .atb-digit-in{animation:atbDigitIn var(--dur-spring) var(--ease-spring) both}.active-txn-banner .atb-digit-out{animation:.28s cubic-bezier(.4,0,1,1) both atbDigitOut;position:absolute;inset:0}.active-txn-banner .atb-unit{color:var(--atb-muted);opacity:.9;font-size:11px;font-weight:600}.active-txn-banner .atb-arrow{color:var(--atb-accent);font-size:22px;font-weight:700}@media (prefers-reduced-motion:reduce){.active-txn-banner,.active-txn-banner .atb-icon-ring,.active-txn-banner .atb-digit-in,.active-txn-banner .atb-digit-out{animation:none}}.active-txn-banner.complete{background:linear-gradient(135deg,#ddf3ef 0%,#b5e8dd 100%);border-left-color:#1faa59;box-shadow:0 4px 14px #1faa592e}.active-txn-banner.complete .atb-icon{color:#06865c;background:#1faa5938}.active-txn-banner.complete .atb-title{color:#06865c}.active-txn-banner.complete .atb-sub{color:#0e8055}.active-txn-banner.complete .atb-arrow{color:#1faa59}.active-txn-banner.queued{background:linear-gradient(135deg,#fff8e0 0%,#ffec9c 100%);border-left-color:#f0b400;box-shadow:0 4px 14px #f0b4002e}.active-txn-banner.queued .atb-icon{color:#b07a00;background:#f0b40033}.active-txn-banner.queued .atb-title{color:#8b6000}.active-txn-banner.queued .atb-sub{color:#6b4a00}.active-txn-banner.queued .atb-arrow{color:#f0b400}.active-txn-banner.failed{background:linear-gradient(135deg,#ffe4e4 0%,#ffc4c4 100%);border-left-color:#c42b2b;box-shadow:0 4px 14px #c42b2b2e}.active-txn-banner.failed .atb-icon{color:#c42b2b;background:#c42b2b33}.active-txn-banner.failed .atb-title{color:#c42b2b}.active-txn-banner.failed .atb-sub{color:#8b2020}.active-txn-banner.failed .atb-arrow{color:#c42b2b}.stat-cards-row{grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 16px;display:grid}.stat-card{border-radius:var(--r-lg);color:#fff;cursor:pointer;box-shadow:var(--container-shadow);flex-direction:column;padding:16px;display:flex;position:relative;overflow:hidden}.stat-card.credit{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 60%, var(--blue) 130%)}.stat-card.coupon{background:linear-gradient(135deg, var(--blue) 0%, var(--blue-2) 100%)}.stat-blob{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.stat-icon-wrap{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1;background:#ffffff2e;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:12px;display:flex;position:relative}.stat-icon-wrap svg{width:18px;height:18px}.stat-card-head{z-index:1;align-items:center;gap:8px;display:flex;position:relative}.stat-card-head .stat-icon-wrap{margin-bottom:0}.stat-card-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.stat-label{opacity:.85;z-index:1;font-size:12px;font-weight:400;position:relative}.stat-value{z-index:1;margin-top:4px;font-size:22px;font-weight:700;line-height:1.1;position:relative}.stat-value .stat-unit{opacity:.85;font-size:14px;font-weight:500}.promo-banner-lg{background:linear-gradient(135deg, var(--yellow) 0%, #ffe058 100%);border-radius:var(--r-lg);cursor:pointer;border:1px solid #1a13470f;align-items:center;gap:12px;margin-bottom:20px;padding:16px 18px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #fced0040}.promo-banner-lg:after{content:"";background:#ffffff4d;border-radius:50%;width:100px;height:100px;position:absolute;top:-30px;right:-20px}.promo-text{z-index:1;flex:1;position:relative}.promo-badge{background:var(--navy);color:#fff;letter-spacing:.4px;text-transform:uppercase;border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-block}.promo-title{color:var(--navy);margin-bottom:8px;font-size:15px;font-weight:700;line-height:1.3}.promo-cta{color:var(--navy);opacity:.85;font-size:12px;font-weight:600}.promo-illust{z-index:1;filter:drop-shadow(0 4px 8px #0000001a);flex-shrink:0;font-size:56px;position:relative}.promo-carousel{width:100%;margin-bottom:20px}.promo-carousel-viewport{touch-action:pan-y;width:100%;transition:transform var(--dur-spring) var(--ease-spring), filter .15s ease;transform-origin:50%;padding:0 2px 8px;overflow:hidden}.promo-carousel-viewport:active{filter:brightness(1.03);transition-duration:var(--dur-fast);transform:scale(.985)}.promo-carousel-track{--promo-banner-gap:12px;gap:var(--promo-banner-gap);width:100%;transition:transform var(--dur-spring) var(--ease-spring);will-change:transform;display:flex}.promo-carousel-viewport.is-dragging .promo-carousel-track,.promo-carousel-track.is-snapping{transition:none}.promo-carousel-slide{appearance:none;border-radius:var(--r-lg);color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:0 0 100%;margin:0;padding:0;display:block;overflow:hidden;box-shadow:0 4px 14px #1a13471f}.promo-carousel-slide:active{filter:none!important;transform:none!important}.promo-banner-image{width:100%;display:block;position:relative;overflow:hidden}.promo-banner-skeleton{pointer-events:none;position:absolute;inset:0}.promo-banner-image img{object-fit:cover;z-index:1;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;min-height:100%;transition:opacity .16s;display:block;position:relative}.promo-banner-image.is-loaded img{opacity:1}.promo-carousel-dots{justify-content:center;align-items:center;gap:6px;padding-top:8px;display:flex}.promo-carousel-dot{appearance:none;width:6px;height:6px;transition:width var(--dur-spring) var(--ease-spring), background .18s ease;background:#1a134738;border:0;border-radius:999px;padding:0}.promo-carousel-dot.is-active{background:var(--navy);width:18px}.balance-card{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 55%, var(--blue) 130%);color:#fff;border-radius:var(--r-xl);cursor:pointer;min-height:180px;margin:8px 0 20px;padding:22px 24px 24px;position:relative;overflow:hidden;box-shadow:0 10px 28px #1a134733}.balance-blob{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.balance-mark{background-image:var(--asset-logo);background-position:50%;background-size:cover;background-color:var(--navy);opacity:.95;border-radius:50%;width:28px;height:28px;position:absolute;top:22px;right:22px}.balance-content{z-index:2;position:relative}.balance-label{opacity:.85;font-size:14px;font-weight:400}.balance-amount-row{align-items:center;gap:12px;margin-top:8px;display:flex}.balance-amount{letter-spacing:-.5px;font-size:36px;font-weight:700;line-height:1.1}.balance-amount .cents{opacity:.9;font-size:22px;font-weight:600}.balance-eye{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.balance-eye svg{width:16px;height:16px}.balance-trend{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border-radius:999px;align-items:center;gap:8px;margin-top:16px;padding:8px 14px;font-size:13px;display:inline-flex}.trend-pill{align-items:center;gap:4px;font-weight:600;display:inline-flex}.trend-dot{opacity:.5;font-size:6px}.trend-pct{font-weight:600}.trend-period{background:#ffffff38;border-radius:999px;margin-left:6px;padding:3px 10px;font-size:12px}.qa-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px;display:grid}.qa-grid--hidden{display:none!important}.qa-item{cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:4px 0;display:flex}.qa-circle{border:1.5px solid var(--border);width:52px;height:52px;color:var(--text-card);box-shadow:var(--container-shadow);background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.qa-circle svg{width:22px;height:22px}.qa-item:active .qa-circle{background:var(--bg-soft);transform:none}.qa-label{color:var(--text-2);text-align:center;font-size:12px;font-weight:500}.home-screen .content{padding-top:8px}.home-screen .active-txn-banner{margin-top:0;margin-bottom:10px}.home-screen .active-txn-stack{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.home-screen .active-txn-stack .active-txn-banner{margin-bottom:0}.home-screen .hcards-row{margin-top:0}.home-screen .section-title{margin:12px 0 8px}.home-screen .stat-cards-row{margin:6px 0 12px}.home-screen .stat-card{justify-content:center;padding:13px}.home-screen .stat-card-head{gap:13px}.home-screen .stat-icon-wrap{width:36px;height:36px;margin-bottom:0}.home-screen .stat-icon-wrap svg{width:19px;height:19px}.home-screen .stat-value{margin-top:2px;font-size:20px}.home-screen .promo-banner-lg,.home-screen .promo-carousel{margin-bottom:12px}.home-screen .promo-banner-lg{padding:12px 16px}.home-screen .promo-title{margin-bottom:4px;font-size:14px}.home-screen .promo-illust{font-size:42px}.home-screen .qa-grid{margin-bottom:10px}.home-screen .qa-item{gap:6px;padding:2px 0}.home-screen .qa-circle{width:46px;height:46px}.home-screen .qa-circle svg{width:20px;height:20px}.home-promotions{margin:8px 0 14px}.home-promotions-track{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-auto-columns:minmax(272px,86%);grid-auto-flow:column;gap:12px;margin:0 -20px;padding:3px 20px 10px;scroll-padding-inline:20px;display:grid;overflow-x:auto}.home-promotions-track::-webkit-scrollbar{display:none}.home-promotions-track.is-single{grid-auto-columns:100%;margin-inline:0;padding-inline:0}.home-promotion-card{--home-promo-accent:#e3232a;--home-promo-ink:#70171b;--home-promo-bg-a:#fff8f2;--home-promo-bg-b:#ffe4df;appearance:none;border:1px solid color-mix(in srgb, var(--home-promo-accent) 18%, white);background:radial-gradient(circle at 92% 4%, #ffffffe6 0 13%, transparent 14%), linear-gradient(145deg, var(--home-promo-bg-a), var(--home-promo-bg-b));min-width:0;min-height:0;color:var(--home-promo-ink);box-shadow:0 8px 24px color-mix(in srgb, var(--home-promo-accent) 13%, transparent);scroll-snap-align:start;text-align:left;animation:staggerIn .3s var(--ease-native) backwards;border-radius:20px;flex-direction:column;padding:10px 17px;font-family:inherit;display:flex;position:relative;overflow:hidden}.home-promotion-card--topup_bonus{--home-promo-accent:#b49300;--home-promo-ink:#5d4b00;--home-promo-bg-a:#fffdf0;--home-promo-bg-b:#fff1a8}.home-promotion-card--usage_reward{--home-promo-accent:#087eba;--home-promo-ink:#124c77;--home-promo-bg-a:#f3fbff;--home-promo-bg-b:#d8f1ff}.home-promotion-card--qr_coupon{--home-promo-accent:#12884e;--home-promo-ink:#145c3a;--home-promo-bg-a:#f2fff8;--home-promo-bg-b:#d4f5e2}.home-promotion-card:active{filter:brightness(1.01);transform:scale(.985)}.home-promotion-orb{border:20px solid color-mix(in srgb, var(--home-promo-accent) 9%, transparent);pointer-events:none;border-radius:50%;width:124px;height:124px;position:absolute;bottom:-40px;right:-24px}.home-promotion-topline{z-index:1;align-items:center;gap:9px;display:flex;position:relative}.home-promotion-icon{border:1px solid color-mix(in srgb, var(--home-promo-accent) 18%, white);background:color-mix(in srgb, var(--home-promo-accent) 15%, white);width:40px;height:40px;color:var(--home-promo-accent);box-shadow:0 4px 10px color-mix(in srgb, var(--home-promo-accent) 13%, transparent);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.home-promotion-icon svg{width:23px;height:23px}.home-promotion-badge{background:color-mix(in srgb, var(--home-promo-accent) 12%, white);color:var(--home-promo-accent);letter-spacing:.04em;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;line-height:1.2}.home-promotion-metric{color:var(--home-promo-accent);white-space:nowrap;margin-left:auto;font-size:18px;font-weight:800;line-height:1}.home-promotion-name{z-index:1;color:var(--home-promo-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:15px;font-weight:700;line-height:1.35;display:-webkit-box;position:relative;overflow:hidden}.home-promotion-detail{z-index:1;color:var(--home-promo-ink);opacity:.86;flex-direction:column;gap:2px;margin-top:4px;font-size:13px;font-weight:500;line-height:1.35;display:flex;position:relative}.home-promotion-condition{grid-template-columns:6px minmax(0,1fr);align-items:start;gap:7px;display:grid}.home-promotion-condition-dot{background:var(--home-promo-accent);width:5px;height:5px;box-shadow:0 0 0 3px color-mix(in srgb, var(--home-promo-accent) 10%, transparent);border-radius:50%;margin-top:6px}.home-promotion-foot{z-index:1;color:var(--home-promo-ink);text-align:right;opacity:.72;justify-content:flex-end;align-items:center;gap:8px;margin-top:auto;padding-top:3px;font-size:12px;font-weight:500;line-height:1.3;display:flex;position:relative}.home-promotion-skeleton{scroll-snap-align:start;width:100%}@media (width<=360px){.home-promotions-track:not(.is-single){grid-auto-columns:90%}}@media (prefers-reduced-motion:reduce){.home-promotion-card{animation:none}}.hcards-row{scrollbar-width:none;gap:12px;margin:0 -20px 0 0;padding:4px 20px 8px 0;display:flex;overflow-x:auto}.hcards-row::-webkit-scrollbar{display:none}.hcard{border-radius:var(--r-lg);color:#fff;cursor:pointer;width:140px;height:150px;box-shadow:var(--container-shadow);flex-direction:column;flex-shrink:0;padding:14px;display:flex;position:relative;overflow:hidden}.hcard.add-slot{border:1.5px dashed var(--border);color:var(--muted);width:70px;box-shadow:var(--container-shadow);background:#fff;justify-content:center;align-items:center}.hcard.add-slot .add-plus{background:var(--bg);border:1.5px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:12px;display:flex}.hcard.add-slot .add-plus svg{width:18px;height:18px}.hcard.add-slot .add-text{text-align:center;writing-mode:horizontal-tb;font-size:12px;font-weight:600;line-height:1.3}.hcard.green{background:linear-gradient(135deg,#1faa59 0%,#4ad198 100%)}.hcard.orange{background:linear-gradient(135deg,#f93 0%,#ffc176 100%)}.hcard.navy{background:linear-gradient(135deg, var(--navy) 0%, var(--blue) 100%)}.hcard:before{content:"";background:#ffffff1a;border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:-30px}.hcard:after{content:"";background:#ffffff14;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-30px;left:-20px}.hcard-top{z-index:1;justify-content:space-between;align-items:flex-start;margin-bottom:auto;display:flex;position:relative}.hcard-eyebrow{opacity:.7;margin-bottom:3px;font-size:11px;font-weight:500}.hcard-title{opacity:.98;font-size:17px;font-weight:700;line-height:1.25}.hcard-mark{opacity:.95;width:20px;height:20px}.hcard-amount{z-index:1;margin-top:12px;font-size:30px;font-weight:700;line-height:1;position:relative}.hcard-amount .unit{opacity:.85;font-size:15px;font-weight:600}.hcard-amount-label{opacity:.85;z-index:1;margin-top:2px;font-size:11px;position:relative}.hcard-avail{z-index:1;margin-top:10px;position:relative}.hcard-avail-rows{flex-direction:column;gap:4px;display:flex}.hcard-avail-row{align-items:baseline;gap:6px;display:flex}.hcard-avail-name{opacity:.9;font-size:12px}.hcard-avail-value{font-size:19px;font-weight:700;line-height:1}.hcard-avail-value .unit{opacity:.85;margin-left:1px;font-size:12px;font-weight:600}.hcard-meta{z-index:1;justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex;position:relative}.hcard-chip{background:#ffffff40;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.home-screen .hcards-row--home{grid-template-columns:1fr;gap:12px;margin:0;padding:0 0 8px;display:grid;overflow:visible}.home-screen .hcards-row .hcard--home-branch{width:auto;height:auto;min-height:132px}.home-screen .hcard--home-branch .hcard-top{gap:12px}.home-screen .hcard--home-branch .hcard-heading{flex:1;min-width:0}.home-screen .hcard-change-store{appearance:none;z-index:2;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;background:#ffffff29;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;display:inline-flex;position:absolute;bottom:14px;right:14px;box-shadow:inset 0 1px #ffffff2e}.home-screen .hcard-change-store svg{flex:none;width:20px;height:20px}.home-screen .hcards-row .hcard--home-branch-empty{justify-content:center;align-items:center;display:flex}.home-screen .hcard--home-branch .hcard-title{-webkit-line-clamp:2;line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.home-screen .stat-value{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=360px){.content{padding-left:14px;padding-right:14px}.home-screen .hcards-row{gap:8px}.home-screen .hcards-row .hcard--home-branch{min-height:118px;padding:11px}.home-screen .hcard-change-store{padding:7px 9px;font-size:13px;bottom:11px;right:11px}.home-screen .hcard-change-store svg{width:18px;height:18px}.home-screen .hcard-eyebrow{font-size:10px}.home-screen .hcard-title{font-size:15px}.home-screen .hcard-avail-name{font-size:11px}.home-screen .hcard-avail-value{font-size:16px}.home-screen .hcard-avail{margin-top:6px}.home-screen .stat-cards-row{gap:8px}.home-screen .stat-card{padding:11px}.home-screen .stat-card-head{gap:11px}.home-screen .stat-value{font-size:17px}.home-screen .stat-label{font-size:11px}.home-screen .stat-icon-wrap{width:32px;height:32px;margin-bottom:0}.home-screen .greeting--inline .greet-line{font-size:11px}.home-screen .greeting--inline .user-name{font-size:14px}.tab-item .label{font-size:10px}.tab-item .icon{font-size:20px}}html.text-scale-compact .home-screen .hcards-row .hcard--home-branch{min-height:0;padding:10px}html.text-scale-compact .home-screen .hcard-change-store{bottom:10px;right:10px}html.text-scale-compact .home-screen .hcard-title{font-size:15px}html.text-scale-compact .home-screen .hcard-avail-value{font-size:16px}html.text-scale-compact .home-screen .hcard-avail-name{font-size:11px}html.text-scale-compact .home-screen .stat-card{padding:10px}html.text-scale-compact .home-screen .stat-card-head{gap:10px}html.text-scale-compact .home-screen .stat-value{font-size:17px}html.text-scale-compact .home-screen .stat-label{font-size:11px}html.text-scale-compact .tab-item .label{font-size:10px}html.text-scale-compact .btn,html.text-scale-compact .list-item{font-size:14px}html.text-scale-compact .mode-card .mode-price{font-size:15px}.screen.welcome-screen{background:var(--navy);color:#fff}.splash-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:48px;display:flex}.splash-logo{background-image:var(--asset-logo);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:50%;width:180px;height:180px}.splash-dots{gap:8px;display:flex}.splash-dots span{background:#fff6;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite splashPulse}.splash-dots span:nth-child(2){animation-delay:.2s}.splash-dots span:nth-child(3){animation-delay:.4s}@keyframes splashPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;background:#fff;transform:scale(1.1)}}.screen.phone-screen{background:0 0}.phone-bg-gradient{display:none}.screen.phone-screen .status-bar,.screen.phone-screen .content,.screen.phone-screen .content-center{z-index:2;position:relative}.pay-success-screen .pay-success-body{padding-top:clamp(4px,1.2vh,16px);padding-bottom:calc(clamp(8px, 1.5vh, 16px) + var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));min-height:calc(100dvh - var(--bottom-nav-h) - env(safe-area-inset-bottom,0px));justify-content:safe center;gap:clamp(10px,2vh,20px)}.pay-success-hero{text-align:center;flex-direction:column;flex-shrink:0;align-items:center;display:flex}.pay-success-check{width:clamp(96px,18vh,148px);height:clamp(96px,18vh,148px);margin:0 auto;display:block}.pay-success-title{color:#40c4aa;margin-top:clamp(-10px,-1.2vh,-4px);font-size:clamp(18px,2.6vh,22px);font-weight:700}.pay-success-lead{color:var(--text-2);max-width:28em;margin-top:clamp(4px,.8vh,10px);font-size:clamp(13px,1.8vh,15px);line-height:1.45}.pay-success-card{box-shadow:var(--container-shadow);flex-shrink:0;margin:0;padding:clamp(12px,1.8vh,18px) clamp(14px,2vw,20px)}.pay-success-txn{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pay-success-txn-id{text-align:right;word-break:break-all;max-width:62%;font-size:12px;font-weight:600}.pay-success-divider{margin:clamp(8px,1.2vh,14px) 0}.pay-success-machine{align-items:center;gap:12px;display:flex}.pay-success-machine .vend-thumb{flex-shrink:0}.pay-success-machine-icon{width:clamp(40px,6vh,48px);height:clamp(40px,6vh,48px)}.pay-success-machine-name{font-size:clamp(14px,2vh,15px);font-weight:600}.pay-success-row{color:var(--text-2);justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;font-weight:500;display:flex}.pay-success-debit{color:var(--red);font-size:clamp(15px,2vh,16px);font-weight:700}.pay-success-balance{color:var(--text-card);margin-top:clamp(4px,.8vh,8px);font-weight:600}.pay-success-balance-val{color:var(--text-card);font-size:clamp(17px,2.4vh,20px);font-weight:700}.pay-success-balance-val span{color:var(--muted);font-size:.65em;font-weight:500}.pay-success-footer{flex-shrink:0;width:100%;margin-top:0;padding-top:0}.pay-success-footer .btn{min-height:clamp(44px,6.5vh,52px);padding:clamp(12px,1.8vh,16px)}.framed-icon{width:64px;height:64px;color:var(--navy);justify-content:center;align-items:center;margin-top:8px;display:flex;position:relative}.fi-corner{border:2.5px solid var(--navy);width:14px;height:14px;position:absolute}.fi-corner.tl{border-bottom:none;border-right:none;border-radius:6px 0 0;top:0;left:0}.fi-corner.tr{border-bottom:none;border-left:none;border-radius:0 6px 0 0;top:0;right:0}.fi-corner.bl{border-top:none;border-right:none;border-radius:0 0 0 6px;bottom:0;left:0}.fi-corner.br{border-top:none;border-left:none;border-radius:0 0 6px;bottom:0;right:0}.phone-input-group{margin-top:8px}.phone-input-label{color:var(--text-card);margin-bottom:10px;font-size:15px;font-weight:600;display:block}.phone-input-row{border:1.5px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:12px;padding:14px 16px;display:flex}.phone-prefix{color:var(--text-card);border-right:1px solid var(--border);cursor:pointer;align-items:center;gap:6px;padding-right:12px;font-size:16px;font-weight:500;display:flex}.phone-prefix .flag{font-size:20px}.phone-input{color:var(--text-card);letter-spacing:.5px;background:0 0;border:none;flex:1;min-width:0;padding:0;font-family:inherit;font-size:17px;font-weight:500}.phone-input:focus{outline:none}.phone-input::placeholder{color:var(--subtle);font-weight:400}.otp-boxes{justify-content:center;gap:8px;margin:32px 0 8px;display:flex}.otp-box{text-align:center;border:1.5px solid var(--border);width:44px;height:56px;color:var(--text-card);box-shadow:var(--container-shadow);background:#fff;border-radius:14px;font-family:inherit;font-size:22px;font-weight:600;transition:all .15s}.otp-box:focus,.otp-box.active{border-color:var(--navy);border-width:2px;outline:none;box-shadow:0 0 0 4px #1a134714}.otp-box::placeholder{color:var(--subtle);font-weight:400}.otp-screen .h1,.otp-screen p,.otp-screen strong,.otp-screen .otp-box,.phone-register-screen .h1,.phone-register-screen p,.phone-register-screen .phone-input-label,.phone-register-screen .phone-prefix,.phone-register-screen .phone-input{color:var(--navy)}.phone-register-screen .info-banner[style*=--red],.phone-register-screen .info-banner[style*=--red] *{color:var(--red)!important}.pin-footer{z-index:2;padding:0 20px 24px;position:relative}.pin-field-group{margin-top:14px}.pin-boxes{gap:6px;margin-top:8px;margin-bottom:4px}.pin-boxes .otp-box{border-radius:12px;width:clamp(40px,14vw,48px);height:46px;font-size:18px}.pin-error{color:var(--red);margin-top:14px;margin-bottom:0}.pin-settings-screen .app-bar{z-index:3}.pin-settings-content{padding-top:4px;padding-bottom:calc(18px + var(--bottom-nav-h) + env(safe-area-inset-bottom,0px))}.pin-settings-hero{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:14px;padding:14px 16px;display:flex}.pin-settings-icon{border-radius:var(--r-md);background:var(--blue-pale);width:48px;height:48px;color:var(--blue);flex-shrink:0;justify-content:center;align-items:center;display:flex}.pin-settings-title{color:var(--text-card);font-size:18px;font-weight:700;line-height:1.2}.pin-settings-sub{color:var(--muted);margin-top:4px;font-size:13px}.pin-form-card{box-shadow:var(--container-shadow);padding:14px}.pin-form-card .pin-field-group:first-child{margin-top:0}.pin-form-card .otp-boxes{justify-content:space-between}.pin-note-list{box-shadow:var(--container-shadow);margin-top:14px}.pin-note-list .list-item:active{background:#fff}.pin-footer-account{background:0 0;margin-top:14px;padding:0}.otp-resend{appearance:none;color:var(--navy);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:8px 16px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.otp-resend:disabled{cursor:default;opacity:.55}.otp-resend:active{opacity:.7}.screen.camera-screen{color:#fff;background:#0a0a0f}.screen.camera-screen.active{flex-direction:column}.camera-screen .status-bar{color:#fff}.camera-bar{flex-shrink:0;align-items:center;gap:14px;height:64px;padding:0 20px;display:flex}.camera-bar .close{cursor:pointer;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.camera-bar .title{flex:1}.camera-bar .title h1{font-size:16px;font-weight:600}.camera-bar .title .sub{opacity:.7;margin-top:2px;font-size:12px}.camera-view{background:linear-gradient(#1a1a25 0%,#0a0a0f 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.camera-frame{width:250px;height:250px;position:relative}.cf-corner{border:3px solid var(--blue);width:36px;height:36px;position:absolute}.cf-corner.tl{border-bottom:none;border-right:none;border-radius:12px 0 0;top:0;left:0}.cf-corner.tr{border-bottom:none;border-left:none;border-radius:0 12px 0 0;top:0;right:0}.cf-corner.bl{border-top:none;border-right:none;border-radius:0 0 0 12px;bottom:0;left:0}.cf-corner.br{border-top:none;border-left:none;border-radius:0 0 12px;bottom:0;right:0}.camera-hint{text-align:center;opacity:.85;font-size:14px;position:absolute;bottom:80px;left:24px;right:24px}.camera-actions{text-align:center;flex-shrink:0;padding:24px 20px 32px}.qr-display{border-radius:var(--r-xl);background:#fff;width:240px;height:240px;margin:16px auto;padding:16px;position:relative;box-shadow:0 8px 24px #1a134714}.qr-pattern{background-color:#fff;background-image:radial-gradient(circle at 14% 14%,#000 18%,#0000 19%),radial-gradient(circle at 86% 14%,#000 18%,#0000 19%),radial-gradient(circle at 14% 86%,#000 18%,#0000 19%);background-repeat:no-repeat;background-size:60px 60px;width:100%;height:100%;position:relative}.qr-pattern:after{content:"";opacity:.8;mix-blend-mode:multiply;background-image:linear-gradient(90deg,#0000 50%,#000 50% 52%,#0000 52% 56%,#000 56% 58%,#0000 58% 62%,#000 62% 65%,#0000 65% 70%,#000 70% 74%,#0000 74%),linear-gradient(#0000 26%,#000 26% 30%,#0000 30% 35%,#000 35% 38%,#0000 38% 42%,#000 42% 44%,#0000 44% 48%,#000 48% 50%,#0000 50%);background-size:9px 9px;position:absolute;inset:6px}.qr-logo-badge{color:var(--navy);border-radius:var(--r-sm);background:#fff;padding:8px 12px;font-size:12px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0000001a}.success-icon{background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 20px;font-size:48px;animation:.5s cubic-bezier(.34,1.56,.64,1) scaleIn;display:flex;box-shadow:0 16px 32px #1faa594d}.success-icon.illustration{background:var(--blue-pale);color:var(--blue)}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.sending-loader{justify-content:center;align-items:center;width:110px;height:110px;display:flex;position:relative}.sending-arc{width:100%;height:100%;animation:1.4s linear infinite rotate;position:absolute;inset:0}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sending-logo{background-image:var(--asset-logo);background-color:#fff;background-position:50%;background-size:cover;border-radius:50%;width:60px;height:60px;box-shadow:0 4px 14px #1a134726}.send-steps{border-radius:var(--r-lg);width:100%;box-shadow:var(--container-shadow);background:#fff;padding:16px}.send-step{text-align:left;align-items:center;gap:14px;display:flex}.ss-icon{background:var(--bg-soft);border:1.5px solid var(--border);width:32px;height:32px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ss-icon svg{width:16px;height:16px}.send-step.done .ss-icon{background:var(--green);border-color:var(--green);color:#fff}.send-step.active .ss-icon{background:var(--blue-pale);border-color:var(--blue)}.ss-spinner{border:2px solid var(--blue);border-top-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ss-title{color:var(--text-card);font-size:15px;font-weight:600}.send-step:not(.done):not(.active) .ss-title{color:var(--muted)}.ss-sub{color:var(--muted);margin-top:2px;font-size:12px}.send-line{background:var(--border);width:2px;height:18px;margin-top:2px;margin-bottom:2px;margin-left:15px}.txn-row{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:14px;margin-bottom:8px;padding:14px 16px;display:flex}.txn-icon{background:var(--blue-pale);width:44px;height:44px;color:var(--blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.txn-icon.orange{background:var(--orange-bg);color:var(--orange)}.txn-icon.purple{background:var(--lavender);color:#5b47c9}.txn-icon.green{background:var(--green-pale);color:var(--green)}.txn-info{flex:1;min-width:0}.txn-title{font-size:15px;font-weight:600}.txn-coupon-badge{vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-left:6px;padding:2px 8px;font-size:11px;font-weight:600;overflow:hidden}.txn-sub{color:var(--muted);margin-top:2px;font-size:12px}.txn-right{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.txn-amount{color:var(--text-card);font-size:18px;font-weight:700;line-height:1.15}.txn-amount.in{color:var(--green)}.txn-time{color:var(--muted);margin-top:3px;font-size:11px}.txn-date{color:var(--subtle);text-align:right;margin-top:2px;font-size:12px}.pill-row{scrollbar-width:none;gap:8px;padding:4px 0 12px;display:flex;overflow-x:auto}.pill-row::-webkit-scrollbar{display:none}.pill{border:1px solid var(--border);color:var(--text-2);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:500}.pill.active{background:var(--navy);color:#fff;border-color:var(--navy)}.info-banner{background:var(--blue-pale);border-radius:var(--r-md);color:var(--text-card);gap:8px;margin:14px 0;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.info-banner.warn{background:var(--yellow-soft);color:#6e5500}.app-toast{left:20px;right:20px;top:calc(12px + env(safe-area-inset-top,0px));z-index:80;color:#fff;text-align:center;opacity:0;pointer-events:auto;background:#1a1347eb;border-radius:14px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.4;transition:opacity .14s,transform .38s cubic-bezier(.22,1.7,.36,1);position:absolute;bottom:auto;transform:translateY(-130%)scale(.92);box-shadow:0 1px 2px #0f0a2e1f,0 8px 20px #0f0a2e2e}.app-toast.success{background:#16a34a;box-shadow:0 1px 2px #065f4624,0 8px 22px #16a34a47}.app-toast.is-in{opacity:1;transform:translateY(0)scale(1)}.app-toast.is-out{opacity:0;transition:opacity .16s ease, transform .2s var(--ease-press);transform:translateY(-90%)scale(.96)}.list-item{cursor:pointer;background:#fff;align-items:center;gap:14px;padding:14px 18px;display:flex}.list-item:not(:last-child){border-bottom:1px solid var(--border-soft)}.list-item .icon{border-radius:var(--r-md);background:var(--blue-pale);width:40px;height:40px;color:var(--navy);flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.list-item .info{flex:1;min-width:0}.list-item .info .ti{color:var(--text-card);font-size:15px;font-weight:500}.list-item .info .sub{color:var(--muted);margin-top:2px;font-size:12px}.list-item .arrow{color:var(--subtle);font-size:18px}.list-container{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;overflow:hidden}.profile-content{padding-top:0}.profile-content>.section-title{margin:12px 0 8px}.profile-content .list-item{padding-top:10px;padding-bottom:10px}.profile-overview-card{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fffffff5;border:1px solid #1a134714;overflow:hidden}.profile-identity{align-items:center;gap:12px;min-width:0;padding:12px 16px;display:flex}.profile-identity-icon{background:var(--blue-pale);width:42px;height:42px;color:var(--blue);border-radius:12px;flex:0 0 42px;place-items:center;display:grid}.profile-identity-copy{min-width:0}.profile-overview-label{color:#7a8091;font-size:12px;font-weight:500;line-height:1.35}.profile-phone{color:var(--text-card);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:19px;font-weight:700;line-height:1.35;overflow:hidden}.profile-register-link{border:0;border-top:1px solid var(--border-soft);width:100%;color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:#f8faff;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:12px;font-weight:600;display:flex}.profile-register-link span{font-size:18px;line-height:1}.profile-branch{border-top:1px solid var(--border-soft);min-width:0;min-height:32px;box-shadow:inset 3px 0 0 var(--blue);background:#f2f8fc;align-items:center;gap:5px;padding:6px 12px 6px 14px;display:flex}.profile-branch-label{color:var(--muted);flex:none;font-size:13px;font-weight:400;line-height:1.5}.profile-branch-name{min-width:0;color:var(--text-card);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:1.5;overflow:hidden}.profile-overview-stats{border-top:1px solid var(--border-soft);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.profile-overview-stat{align-items:center;gap:10px;min-width:0;padding:10px 16px;display:flex}.profile-overview-stat+.profile-overview-stat{border-left:1px solid var(--border-soft)}.profile-stat-icon{border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.profile-stat-icon--credit{color:#16834a;background:#e8f7ee}.profile-stat-icon--coupon{color:#806700;background:#fff4c2}.profile-stat-value{color:var(--text-card);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:18px;font-weight:750;line-height:1.3;overflow:hidden}.profile-stat-value--credit{align-items:baseline;min-width:0;display:flex}.profile-stat-decimal{font-size:12px;font-weight:700}.profile-stat-unit{color:#7a8091;margin-left:1px;font-size:12px;font-weight:600}.profile-stat-value--coupon{color:var(--text-card)}.profile-language-current{color:#7a8091;font-size:13px;font-weight:600}.profile-language-backdrop{top:0;left:0;right:0;bottom:calc(var(--bottom-nav-h,0px) + env(safe-area-inset-bottom,0px));z-index:100;-webkit-backdrop-filter:blur(2px)saturate(140%);background:#0f0a2e6b;border:0;animation:.18s both fadeIn;position:fixed}.profile-language-backdrop:active{filter:none!important;transform:none!important}.profile-language-backdrop.is-closing{pointer-events:none;animation:.42s both fade-out}.profile-language-sheet{z-index:101;animation:profileLanguageIn .48s var(--ease-spring) both;background:#fff;border-radius:24px;padding:18px;position:fixed;top:50%;left:24px;right:24px;transform:translateY(-50%);box-shadow:0 18px 48px #0f0a2e38}.profile-language-sheet.is-closing{animation:profileLanguageOut .42s var(--ease-spring) both;pointer-events:none}@keyframes profileLanguageIn{0%{opacity:.35;border-radius:14px;transform:translateY(-46%)scale(.88)}to{opacity:1;border-radius:24px;transform:translateY(-50%)scale(1)}}@keyframes profileLanguageOut{0%{opacity:1;border-radius:24px;transform:translateY(-50%)scale(1)}to{opacity:0;border-radius:14px;transform:translateY(-46%)scale(.88)}}.profile-language-title{color:var(--text-card);font-size:17px;font-weight:700;line-height:1.25}.profile-language-options{gap:10px;margin-top:14px;display:grid}.profile-language-option{border:1.5px solid var(--border-soft);width:100%;min-height:48px;color:var(--text-card);font:inherit;text-align:left;cursor:pointer;background:#f8faff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:15px;font-weight:600;display:flex}.profile-language-option.is-active{background:var(--blue-pale);color:var(--blue);border-color:#0099d647}.profile-language-check{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:13px;font-weight:700;line-height:1;display:grid}.menu-mono .list-item .icon{background:var(--blue-pale);color:var(--blue)}.menu-mono .list-item .icon.logout{background:var(--red-bg);color:var(--red)}.stamp-card{border-radius:var(--r-lg);background:linear-gradient(135deg,#fff7cc 0%,#ffefa0 100%);border:1px solid #fced0066;margin-top:12px;padding:14px 16px 16px;box-shadow:0 4px 14px #b8a8001a}.stamp-header{align-items:center;gap:10px;display:flex}.stamp-icon{background:var(--yellow);width:36px;height:36px;color:var(--navy);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stamp-title-block{flex:1;min-width:0}.stamp-title{color:var(--navy);font-size:15px;font-weight:700}.stamp-sub{color:#6b5c00;margin-top:1px;font-size:12px}.stamp-count{color:var(--navy);letter-spacing:-.5px;font-size:22px;font-weight:800;line-height:1}.stamp-count span{opacity:.55;font-size:14px;font-weight:600}.stamp-dots{justify-content:space-between;gap:6px;margin-top:12px;display:flex}.stamp-dot{aspect-ratio:1;color:#1a134766;background:#ffffffb3;border:1.5px dashed #1a134740;border-radius:999px;flex:1;justify-content:center;align-items:center;max-width:44px;font-size:13px;font-weight:600;display:flex}.stamp-dot.filled{background:var(--navy);border-color:var(--navy);color:#fff;border-style:solid}.stamp-dot.reward{border:1.5px solid var(--yellow);color:var(--navy);background:#fff;box-shadow:0 0 0 3px #fced004d}.stamp-footer{color:#5c4f00;text-align:center;margin-top:10px;font-size:12px}.stamp-footer b{color:var(--navy);font-weight:700}.countdown{background:var(--red-bg);color:var(--red);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex}.countdown.plain{color:var(--red);background:0 0;padding:4px 0}.qr-content{text-align:center;flex-direction:column;flex:none;justify-content:flex-start;align-items:center;gap:clamp(7px,1.2vh,12px);min-height:0;padding:clamp(4px,1vh,10px) 20px clamp(4px,.8vh,8px);display:flex;overflow-y:auto}.payment-qr-screen .countdown.plain{color:var(--navy);text-shadow:none;justify-content:center;align-items:center;gap:6px;margin:0;font-size:clamp(15px,2.1vh,17px);font-weight:700;display:inline-flex}.payment-qr-screen .qr-countdown-digits{color:var(--navy);font-variant-numeric:tabular-nums;align-items:center;font-size:clamp(17px,2.45vh,20px);font-weight:800;line-height:1;display:inline-flex}.payment-qr-screen .atb-digit{text-align:center;vertical-align:top;width:.62em;height:1.1em;display:inline-block;position:relative;overflow:hidden}.payment-qr-screen .atb-digit--sep{width:.32em;overflow:visible}.payment-qr-screen .atb-digit-in,.payment-qr-screen .atb-digit-out{text-align:center;width:100%;height:100%;line-height:1.1em;display:block}.payment-qr-screen .atb-digit-in{animation:atbDigitIn var(--dur-spring) var(--ease-spring) both}.payment-qr-screen .atb-digit-out{animation:.28s cubic-bezier(.4,0,1,1) both atbDigitOut;position:absolute;inset:0}.qr-amount-block{margin:0}.qr-amount-block.is-hidden{visibility:hidden;pointer-events:none}.qr-amount-line{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px;max-width:100%;display:inline-flex}.qr-amount-label{color:var(--text-2);font-size:13px;font-weight:700}.qr-amount{color:var(--navy);letter-spacing:-.3px;margin-top:0;font-size:clamp(20px,3.7vh,26px);font-weight:700;line-height:1}.qr-amount span{color:var(--text-2);font-size:14px;font-weight:700}.qr-download-link{min-width:44px;min-height:44px;color:var(--blue);cursor:pointer;text-underline-offset:3px;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;margin-top:clamp(6px,1.2vh,10px);padding:10px 16px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.qr-download-link:disabled{opacity:.55;cursor:default}.qr-download-link:active:not(:disabled){opacity:.75}.qr-card{border-radius:var(--r-lg);width:100%;max-width:min(240px,58vw);box-shadow:var(--container-shadow);background:#f6f8fa;margin:0 auto;padding:clamp(8px,1.4vh,12px) 12px clamp(10px,1.6vh,12px)}.payment-qr-screen .qr-card{max-width:min(240px,clamp(160px,42vh,240px))}.qr-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:clamp(8px,1.2vh,10px);padding-bottom:clamp(6px,1vh,8px);display:flex}.qr-card-label{color:var(--navy);font-size:clamp(12px,1.7vh,13px);font-weight:500}.qr-image{-webkit-touch-callout:default;-webkit-user-drag:auto;border-radius:4px;width:100%;height:auto;display:block}.qr-image-wrap{border-radius:4px;position:relative;overflow:hidden}.qr-card.is-expired .qr-image{filter:blur(5px);transform:scale(1.02)}.qr-expired-overlay{color:#fff;text-shadow:0 2px 10px #00000059;z-index:2;background:#1a134738;justify-content:center;align-items:center;padding:12px;font-size:20px;font-weight:800;display:flex;position:absolute;inset:0}.payment-qr-footer{padding:clamp(2px, .7vh, 8px) 20px calc(clamp(10px, 1.8vh, 20px) + var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));flex-direction:column;flex-shrink:0;gap:4px;display:flex}.payment-qr-footer .btn{padding:clamp(13px,2vh,18px)}.payment-qr-footer .btn-ghost{min-height:40px;padding:8px}.qr-save-sheet{z-index:40;padding:16px 16px calc(16px + var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.qr-save-sheet-panel{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:360px;padding:20px 20px 16px;box-shadow:0 12px 40px #0f172a2e}.qr-save-sheet-title{color:var(--navy);margin:0;font-size:17px;font-weight:700}.qr-save-sheet-hint{color:var(--muted);margin:8px 0 16px;font-size:13px;line-height:1.45}.qr-save-sheet-image{-webkit-touch-callout:default;-webkit-user-select:none;user-select:none;-webkit-user-drag:auto;pointer-events:auto;touch-action:manipulation;background:#f6f8fa;border-radius:8px;width:min(220px,70vw);height:auto;margin:0 auto 16px;display:block}.liff-hint{background:var(--line-green);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;height:32px;padding:0 18px;font-size:13px;font-weight:500;display:flex}.liff-hint .close{opacity:.9;cursor:pointer;font-size:16px}.text-center{text-align:center}.text-muted{color:var(--muted)}.text-sm{font-size:14px}.text-xs{font-size:12px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.gap-2>*+*{margin-top:8px}.gap-3>*+*{margin-top:12px}.row{gap:10px;display:flex}.row>*{flex:1}.divider{background:var(--border-soft);height:1px;margin:16px 0}.h1{letter-spacing:-.5px;font-size:28px;font-weight:700;line-height:1.2}.h2{font-size:22px;font-weight:700}.h3{font-size:17px;font-weight:600}.lead{color:var(--text-2);font-size:15px;line-height:1.5}.skeleton{background:#eaecf1;position:relative;overflow:hidden}.skeleton:after{content:"";animation:skeletonSweep 1.4s var(--ease-native) infinite;background:linear-gradient(90deg,#0000 0%,#fff0 20%,#ffffffa6 50%,#fff0 80%,#0000 100%);position:absolute;inset:0;transform:translate(-100%)}@keyframes skeletonSweep{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.skeleton-row{border-radius:var(--r-lg);box-shadow:var(--container-shadow);background:#fff;align-items:center;gap:14px;margin-bottom:10px;padding:14px;display:flex}.skeleton-tile{border-radius:11px;flex-shrink:0;width:42px;height:42px}.skeleton-lines{flex:1;gap:8px;display:grid}.skeleton-line{border-radius:999px;height:12px}.skeleton-line.short{width:42%}.skeleton-line.medium{width:68%}.skeleton-line.long{width:88%}@keyframes staggerIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stagger-item{animation:staggerIn .28s var(--ease-native) backwards}@media (prefers-reduced-motion:reduce){.stagger-item{animation:none}}.btn-spinner{opacity:.9;border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite spin}@media (prefers-reduced-motion:reduce){.btn-spinner{animation-duration:1.2s}}.btn,.back-btn,.icon-btn,.header-action,.tab-item,.tab-fab,.quick-item,.qa-item,.pill,.qa-pill,.list-item,.store-card,.machine-card,.txn-row,.pay-method-card,.mode-card,.hero-action,.sic-nav,.stat-card,.hcard,.promo-banner-lg,.promo-carousel-slide,.promo-carousel-dot,.topup-promo-card,.active-txn-banner,.store-detail-hero-back,.balance-eye,.balance-card,.otp-resend,.camera-bar .close,.section-title .link,.store-thumb,.promo-banner,.vend-row{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.btn{transition:transform var(--dur-spring) var(--ease-spring), background .18s ease, box-shadow .18s ease, opacity .18s ease}.btn:active:not(:disabled){transition-duration:var(--dur-fast);transform:scale(.96)}.btn:disabled{opacity:.5;cursor:default}.btn-blue:active{background:var(--blue-2)}.btn-outlined:active,.btn-ghost:active{background:var(--blue-pale)}.btn-line:active{filter:brightness(.92)}.btn-yellow:active{filter:brightness(.95)}.store-card,.machine-card,.pay-method-card,.stat-card,.hcard,.active-txn-banner{transition:transform var(--dur-spring) var(--ease-spring), background .15s ease, box-shadow .2s ease}.mode-card{transition:background .32s ease, border-color .32s ease, box-shadow .32s ease, transform var(--dur-spring) var(--ease-spring), filter var(--dur-fast) var(--ease-press)}.store-card:active,.machine-card:active,.stat-card:active,.hcard:active,.active-txn-banner:not(.active-txn-banner--static):active{transition-duration:var(--dur-fast);transform:scale(.975)}.back-btn,.icon-btn,.header-action,.tab-fab,.balance-eye,.store-detail-hero-back,.camera-bar .close{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s}.back-btn:active,.icon-btn:active,.header-action:active,.balance-eye:active,.store-detail-hero-back:active,.camera-bar .close:active{transform:scale(.92)}.tab-fab-item:active .tab-fab{transform:none;box-shadow:0 6px 18px #1a134747}.store-card,.machine-card,.txn-row,.list-item,.pay-method-card,.stat-card,.hcard,.promo-banner-lg,.promo-carousel-slide,.topup-promo-card,.balance-card,.promo-banner{transition:transform .15s cubic-bezier(.22,1,.36,1),box-shadow .15s,border-color .15s,background .15s}.store-card:active,.machine-card:active,.txn-row:active,.list-item:active,.stat-card:active,.hcard:active,.promo-banner-lg:active,.promo-carousel-slide:active,.topup-promo-card:active,.balance-card:active,.promo-banner:active{transform:scale(.985)}.list-item:active{background:var(--bg-soft);transform:none}.mode-card:active{transform:scale(.97)}.pill,.qa-pill{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s,color .15s,border-color .15s}.pill:active,.qa-pill:active{transform:scale(.96)}.tab-item{transition:color .2s,transform .15s cubic-bezier(.22,1,.36,1)}.tab-item:active{transform:none}.quick-item .quick-icon,.qa-item .qa-circle{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s}.quick-item:active .quick-icon{transform:scale(.95)}.hero-action{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s}.hero-action:active{background:#ffffff47;transform:scale(.95)}.sic-nav{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s}.sic-nav:active{transform:scale(.94)}.otp-resend,.section-title .link{transition:opacity .15s}.section-title .link:active{opacity:.6}button:focus-visible,.btn:focus-visible,.back-btn:focus-visible,.icon-btn:focus-visible,.tab-item:focus-visible,.tab-fab:focus-visible,.list-item:focus-visible,.store-card:focus-visible,.machine-card:focus-visible{outline-offset:3px;outline:3px solid #0099d647}.screen-nav{z-index:200;background:#fff;border-radius:14px;width:230px;max-height:80vh;padding:14px;display:none;position:fixed;top:50%;right:24px;overflow-y:auto;transform:translateY(-50%);box-shadow:0 8px 32px #1a134726}@media (width>=1024px){.screen-nav{display:block}}.screen-nav h3{color:var(--navy);text-transform:uppercase;letter-spacing:.6px;margin-bottom:10px;font-size:12px;font-weight:700}.screen-nav .sec{color:var(--muted);letter-spacing:.4px;margin-top:14px;font-size:11px;font-weight:600}.screen-nav a{color:var(--text);cursor:pointer;border-radius:8px;margin-top:2px;padding:6px 10px;font-size:13px;display:block}.screen-nav a:hover{background:var(--bg-soft)}.screen-nav a.active{background:var(--navy);color:#fff}.screen-debug{color:#fff;z-index:9999;pointer-events:none;background:#0f0a2ed9;border-radius:999px;padding:6px 14px;font-family:monospace;font-size:12px;position:fixed;top:14px;left:14px}.screen.phone-screen.vending-screen{background:0 0}.vending-screen .phone-bg-gradient{display:none}.vend-parallax{pointer-events:none;z-index:0;--py:0px;will-change:transform;height:100%;position:absolute;top:0;left:0;right:0;overflow:hidden}.vend-parallax-base{display:none}.vend-parallax-layer{will-change:transform;position:absolute;inset:-20% 0}.vend-parallax-layer--far{transform:translate3d(0, calc(var(--py) * -.12), 0)}.vend-parallax-layer--mid{transform:translate3d(0, calc(var(--py) * -.38), 0)}.vend-parallax-layer--near{transform:translate3d(0, calc(var(--py) * -.72), 0)}.vend-parallax-blob{filter:blur(72px);border-radius:50%;position:absolute}.vend-parallax-blob--a{opacity:.78;background:#66a1ff;width:280px;height:280px;top:-8%;left:-18%}.vend-parallax-blob--b{opacity:.74;background:#9774f7;width:270px;height:270px;top:-6%;right:-20%}.vend-parallax-blob--c{opacity:.4;background:#7ba8f5;width:320px;height:320px;top:42%;left:8%}.vend-parallax-blob--d{opacity:.45;background:#8b7cf0;width:240px;height:240px;top:58%;right:-12%}.vend-parallax-grain{opacity:.04;mix-blend-mode:multiply;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.vending-screen .status-bar,.vending-screen .content,.vending-screen .content-center{z-index:2;position:relative}.vending-screen .app-bar{z-index:30}.vend-credit{color:#fff;background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 55%, #327fe4 135%);border-radius:18px;margin:0 0 4px;padding:14px 16px;position:relative;overflow:hidden;box-shadow:0 1px 2px #1a13471f,0 6px 14px #1a134729,0 16px 32px #1a13471a}.vend-credit:after{content:"";background:#ffffff14;border-radius:50%;width:140px;height:140px;position:absolute;top:-58px;right:-48px}.vend-credit-row{z-index:1;align-items:center;gap:10px;display:flex;position:relative}.vend-credit-label{opacity:.8;font-size:11px}.vend-credit-amount{letter-spacing:-.5px;margin-top:2px;font-size:24px;font-weight:800;line-height:1.05}.vend-credit-amount .dec{opacity:.7;font-size:14px;font-weight:700}.vend-credit-amount .unit{opacity:.85;margin-left:3px;font-size:12px;font-weight:500}.confirm-machine-title-row{align-items:baseline;gap:8px;min-width:0;display:flex}.confirm-machine-number{color:#ffffffd6;white-space:nowrap;font-size:12px;font-weight:650;line-height:1.2}.vend-credit-icon{-webkit-backdrop-filter:blur(8px)saturate(150%);backdrop-filter:blur(8px)saturate(150%);background:#ffffff29;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;display:flex}.vend-credit-icon svg{width:18px;height:18px}.vend-credit-meta{z-index:1;opacity:.85;border-top:1px solid #ffffff24;align-items:center;gap:8px;min-width:0;margin-top:10px;padding-top:9px;font-size:11px;display:flex;position:relative}.vend-credit-meta>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vend-credit-meta .sep{opacity:.5;background:currentColor;border-radius:50%;flex-shrink:0;width:3px;height:3px}.confirm-machine-hero .vend-credit-icon{color:#fffffff2;box-shadow:none;-webkit-backdrop-filter:blur(8px)saturate(140%);backdrop-filter:blur(8px)saturate(140%);background:#ffffff24;border:1px solid #fff3}.confirm-machine-hero--washer .vend-credit-icon{color:#e8f3ff;background:#93c5fd29;border-color:#bfdbfe47}.confirm-machine-hero--dryer .vend-credit-icon{color:#fff1e0;background:#fdba7429;border-color:#fed7aa47}.confirm-machine-hero .vend-credit-meta{opacity:1;justify-content:space-between;gap:10px}.confirm-machine-hero .cmh-meta-left{opacity:.85;flex:1;align-items:center;gap:8px;min-width:0;font-size:11px;display:flex}.confirm-machine-hero .cmh-meta-left>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.confirm-machine-hero .cmh-status{box-shadow:none;border:1px solid #0000;flex-shrink:0;margin-left:auto;padding:3px 8px;font-size:10px;font-weight:600;line-height:1.2}.confirm-machine-hero .cmh-status.badge-green{color:#ecfdf5;background:#10b98161;border-color:#6ee7b7d1;animation:1.8s ease-in-out infinite available-status-pulse;box-shadow:0 0 12px #34d3994d}@keyframes available-status-pulse{0%,to{box-shadow:0 0 #a7f3d000}50%{box-shadow:0 0 0 5px #6ee7b74d,0 0 16px #34d39980}}@media (prefers-reduced-motion:reduce){.confirm-machine-hero .cmh-status.badge-green{animation:none}}.confirm-machine-hero .cmh-status.badge-orange{color:#fed7aa;background:#fb923c2e;border-color:#fed7aa4d}.confirm-machine-hero .cmh-status.badge-gray{color:#ffffffb8;background:#ffffff1a;border-color:#ffffff29}.confirm-machine-hero .cmh-status.badge-dot:before{opacity:.9;font-size:9px}.vend-list{flex-direction:column;gap:8px;display:flex}.vend-row{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:transform var(--dur-spring) var(--ease-spring), background .15s ease, box-shadow .2s ease, border-color .15s ease;background:#ffffffeb;border:1px solid #1a13470d;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex;box-shadow:0 1px 2px #1a13470a,0 4px 12px #1a13470f,0 10px 22px #1a13470a}.vend-row:active{transition-duration:var(--dur-fast);background:#fffffffa;transform:scale(.985);box-shadow:0 1px 4px #1a134714}.vend-row.is-source{background:#eef3ff;border-color:#327fe447;transform:scale(.985);box-shadow:0 0 0 2px #327fe42e,0 4px 14px #1a134714}.vend-thumb{color:#fff;background:linear-gradient(140deg,#10b981 0%,#34d399 130%);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 8px #10b98138}.vend-thumb svg{width:18px;height:18px}.vend-thumb--photo{box-shadow:none;background:#eef2f8;border:1px solid #1a13470f}.vend-thumb-skeleton{border-radius:inherit;z-index:1;position:absolute;inset:0}.vend-thumb-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .28s var(--ease-native);display:block}.vend-thumb--photo.is-ready .vend-thumb-img{opacity:1}.vend-row-info{flex:1;min-width:0}.vend-row-name{color:var(--text-card);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.vend-row-base{color:var(--subtle);margin-top:2px;font-size:11px;text-decoration:line-through}.vend-row-price{flex-shrink:0;align-items:baseline;gap:3px;display:flex}.vend-row-badge{color:#fff;background:var(--red);border-radius:999px;align-self:center;margin-right:4px;padding:2px 6px;font-size:10px;font-weight:700}.vend-row-amount{color:var(--text-card);letter-spacing:-.3px;font-size:17px;font-weight:800;line-height:1}.vend-row-unit{color:var(--muted);font-size:11px;font-weight:600}.vend-count{color:var(--muted);font-size:13px;font-weight:500}.vend-sheet-backdrop{top:0;left:0;right:0;bottom:calc(var(--bottom-nav-h,0px) + env(safe-area-inset-bottom,0px));z-index:100;-webkit-backdrop-filter:blur(2px)saturate(140%);background:#0f0a2e80;animation:.18s both fadeIn;position:fixed}.vend-sheet-backdrop.is-closing{pointer-events:none;animation:.42s both fade-out}.vend-sheet{z-index:101;animation:vendSheetIn .48s var(--ease-spring) both;max-height:min(76vh, calc(100% - var(--bottom-nav-h,0px) - 48px));will-change:transform, opacity;--vend-ox:0px;--vend-oy:0px;--vend-oscale:.88;background:#fff;border-radius:24px;padding:20px;position:fixed;inset:50% 20px auto;overflow-y:auto;transform:translateY(-50%);box-shadow:0 18px 48px #0f0a2e38}.vend-sheet.is-closing{animation:vendSheetOut .42s var(--ease-spring) both;pointer-events:none}@keyframes vendSheetIn{0%{transform:translate3d(var(--vend-ox), calc(-50% + var(--vend-oy)), 0) scale(var(--vend-oscale));opacity:.35;border-radius:14px}to{opacity:1;border-radius:24px;transform:translateY(-50%)scale(1)}}@keyframes vendSheetOut{0%{opacity:1;border-radius:24px;transform:translateY(-50%)scale(1)}to{transform:translate3d(var(--vend-ox), calc(-50% + var(--vend-oy)), 0) scale(var(--vend-oscale));opacity:0;border-radius:14px}}.vend-sheet-handle{display:none}.vend-sheet-summary{background:#f5f7fc;border:1px solid #1a13470d;border-radius:14px;margin-bottom:12px;padding:12px 14px}.vend-sheet-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.vend-sheet-row+.vend-sheet-row{margin-top:7px}.vend-sheet-row .k{color:var(--text-card);font-size:13px}.vend-sheet-row .v{font-size:13px;font-weight:600}.vend-sheet-total{border-top:1px dashed #1a134724;margin-top:9px;padding-top:9px}.vend-sheet-total .k{color:var(--text-card);font-size:14px;font-weight:600}.vend-sheet-total .v{font-size:15px;font-weight:700}@media (prefers-reduced-motion:reduce){.vend-parallax-layer{transform:none!important}.vend-sheet,.vend-sheet.is-closing,.vend-sheet-backdrop,.vend-sheet-backdrop.is-closing,.profile-language-sheet,.profile-language-sheet.is-closing,.profile-language-backdrop,.profile-language-backdrop.is-closing{animation-duration:.01ms!important}}.promo-card-list{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.promo-card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--container-shadow);padding:14px 16px}.promo-card-head{align-items:center;gap:8px;min-width:0;display:flex}.promo-type-badge{letter-spacing:.2px;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.3}.promo-type-badge--time_discount{color:var(--ww-red);background:#e3232a1a}.promo-type-badge--topup_bonus{background:var(--yellow-soft);color:#7a6a00}.promo-type-badge--usage_reward{background:var(--blue-pale);color:var(--blue)}.promo-type-badge--qr_coupon{background:var(--green-pale);color:var(--green)}.promo-card-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:700;overflow:hidden}.promo-card-detail{color:var(--text-2);margin-top:6px;font-size:13px;line-height:1.45}.promo-card-desc{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.promo-card-ends{color:var(--muted);margin-top:6px;font-size:11px}.promo-stamp-progress{align-items:center;gap:10px;margin-top:8px;display:flex}.promo-stamp-dots{flex-wrap:wrap;flex:1;gap:5px;min-width:0;display:flex}.promo-stamp-dot{background:var(--bg-soft);border:1.5px solid var(--border);border-radius:50%;flex-shrink:0;width:14px;height:14px}.promo-stamp-dot.is-filled{background:var(--navy);border-color:var(--navy);box-shadow:0 1px 4px #1a134747}.promo-stamp-bar{background:var(--bg-soft);border-radius:999px;flex:1;height:8px;overflow:hidden}.promo-stamp-bar-fill{background:var(--navy);border-radius:999px;height:100%}.promo-stamp-count{color:var(--navy);flex-shrink:0;font-size:12px;font-weight:700}.promo-coupon-row{align-items:center;gap:12px;padding-top:10px;padding-bottom:10px;display:flex;position:relative;overflow:hidden}.coupon-pick-list{flex-direction:column;gap:8px;display:flex}.coupon-pick{cursor:pointer;border:2px dashed var(--muted);box-shadow:none;background:#fff;align-items:center;gap:12px;padding:14px 16px;display:flex}.coupon-pick.selected{border-style:solid;border-color:var(--green);background:var(--green-bg);box-shadow:var(--container-shadow), 0 0 0 4px #1faa591f}.coupon-pick-body{flex:1;min-width:0}.coupon-pick-name{color:var(--text-card);font-size:15px;font-weight:600}.coupon-pick-sub{color:var(--muted);margin-top:2px;font-size:12px}.coupon-pick-chip{border:1.5px solid var(--muted);color:var(--muted);background:#fff;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700;line-height:1.2}.coupon-pick.selected .coupon-pick-chip{border-color:var(--green);color:var(--green)}.coupon-pick-icon,.topup-bonus-icon{width:20px;height:20px;color:var(--green);flex-shrink:0;display:inline-flex}.coupon-pick:not(.selected) .coupon-pick-icon{color:var(--muted)}.coupon-pick-icon svg,.topup-bonus-icon svg{width:100%;height:100%}.promo-coupon-icon{width:22px;height:22px;color:var(--green);flex-shrink:0;margin-top:1px;display:inline-flex}.promo-coupon-icon svg{width:100%;height:100%}.promo-coupon-info{flex:1;min-width:0}.promo-coupon-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.promo-coupon-sub{color:var(--muted);margin-top:2px;font-size:12px}.promo-coupon-uses{color:var(--green);margin-top:3px;font-size:12px;font-weight:700}.promo-coupon-usedat{color:var(--muted);margin-top:3px;font-size:12px}.promo-coupon-row--done{background:#f0f1f5}.promo-coupon-row--done .promo-coupon-info{padding-right:72px}.promo-coupon-row--done .promo-coupon-icon,.promo-coupon-row--done .promo-coupon-name{color:var(--text-card)}.promo-coupon-ribbon{text-align:center;letter-spacing:.4px;color:#fff;filter:none;pointer-events:none;width:140px;padding:6px 0;font-size:13px;font-weight:700;position:absolute;top:12px;right:-42px;transform:rotate(45deg);box-shadow:0 2px 6px #0f0a2e2e}.promo-coupon-ribbon--used,.promo-coupon-ribbon--expired{background:var(--muted)}.promo-coupon-sentinel{text-align:center;min-height:20px;color:var(--muted);padding:6px 0 2px;font-size:13px}.promo-empty{background:var(--card);border-radius:var(--r-lg);text-align:center;color:var(--muted);box-shadow:var(--container-shadow);margin-bottom:18px;padding:22px 16px;font-size:13px}.topup-promo-list{flex-direction:column;gap:8px;display:flex}.topup-promo-list .topup-promo-card{margin:0}.topup-bonus-card{background:linear-gradient(135deg, #fff7cc 0%, var(--yellow) 100%);border-radius:var(--r-lg);border:1px solid #fced0099;flex-direction:column;gap:8px;width:100%;padding:12px 14px;display:flex;box-shadow:0 4px 14px #b8a80026}.topup-bonus-line{color:#5c4f00;text-align:left;align-items:flex-start;gap:8px;font-size:13px;line-height:1.45;display:flex}.topup-bonus-line b{color:var(--navy);font-weight:700}.topup-bonus-emoji{flex-shrink:0;font-size:16px}.coupon-claim-card{margin-bottom:14px}.coupon-claim-title{color:var(--text-card);font-size:15px;font-weight:700}.coupon-claim-hint{color:var(--muted);margin-top:3px;font-size:12px}.coupon-claim-row{align-items:stretch;gap:8px;margin-top:10px;display:flex}.coupon-claim-input{letter-spacing:4px;text-align:center;flex:1;min-width:0;padding:8px 12px;font-size:18px;font-weight:700}.coupon-claim-input::placeholder{letter-spacing:4px;font-weight:500}.coupon-claim-btn{border-radius:var(--r-md);flex-shrink:0;width:auto;padding:8px 14px;font-size:14px}.coupon-claim-btn:disabled{opacity:.45}.coupon-claim-error{color:var(--ww-red);margin-top:10px;font-size:13px;line-height:1.45}.coupon-claim-success{margin-top:12px}.coupon-preview-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px)saturate(140%);background:#0f0a2e75;border:0;animation:.18s both fadeIn;position:fixed;inset:0}.coupon-preview-backdrop:active{filter:none!important;transform:none!important}.coupon-preview-backdrop.is-closing{pointer-events:none;animation:.32s both fade-out}.coupon-preview-sheet{z-index:101;will-change:transform, opacity;width:min(360px,100% - 40px);max-height:min(80vh,100% - 64px);animation:couponSheetIn .44s var(--ease-spring) both;background:#fff;border-radius:24px;padding:22px 20px 20px;position:fixed;top:50%;left:50%;overflow-y:auto;box-shadow:0 22px 60px #0f0a2e52}.coupon-preview-sheet.is-closing{animation:couponSheetOut .3s var(--ease-spring) both;pointer-events:none}@keyframes couponSheetIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.82)}45%{opacity:1;transform:translate(-50%,-50%)scale(1.045)}72%{transform:translate(-50%,-50%)scale(.984)}88%{transform:translate(-50%,-50%)scale(1.008)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes couponSheetOut{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}26%{opacity:1;transform:translate(-50%,-50%)scale(1.03)}to{opacity:0;transform:translate(-50%,-50%)scale(.86)}}.coupon-success-check{background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 12px;animation:.5s cubic-bezier(.34,1.56,.64,1) both scaleIn;display:flex}.coupon-success-check svg{width:30px;height:30px}.coupon-success-sheet .coupon-preview-icon{color:var(--green)}.coupon-preview-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:#f1f4fb;border:0;border-radius:50%;place-items:center;font-size:14px;line-height:1;display:grid;position:absolute;top:12px;right:12px;overflow:hidden}.coupon-preview-body{padding-right:34px}.coupon-preview-title{color:var(--text-card);letter-spacing:-.3px;align-items:center;gap:9px;font-size:22px;font-weight:800;line-height:1.25;display:flex}.coupon-preview-icon{width:26px;height:26px;color:var(--green);flex-shrink:0;display:inline-flex}.coupon-preview-icon svg{width:100%;height:100%}.coupon-preview-name{color:var(--muted);margin-top:4px;font-size:15px;font-weight:600}.coupon-preview-facts{background:#f5f7fc;border:1px solid #1a13470d;border-radius:14px;flex-direction:column;gap:10px;margin-top:14px;padding:13px 14px;display:flex}.coupon-preview-fact{color:var(--text-card);align-items:flex-start;gap:9px;font-size:15px;font-weight:500;line-height:1.45;display:flex}.coupon-preview-fact-icon{width:17px;height:17px;color:var(--muted);flex-shrink:0;margin-top:1px;display:inline-flex}.coupon-preview-fact-icon svg{width:100%;height:100%}.coupon-preview-fact--branch{color:var(--navy)}.coupon-preview-fact--branch b{font-weight:700}.coupon-preview-fact--branch .coupon-preview-fact-icon{color:var(--navy)}.coupon-preview-desc{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.5}.coupon-preview-note{background:var(--blue-pale);color:var(--text-card);border-radius:12px;margin-top:10px;padding:10px 12px;font-size:14px;line-height:1.45}.coupon-preview-blocked{color:var(--burgundy);background:#fdecec;border-radius:12px;margin-top:12px;padding:10px 12px;font-size:14.5px;font-weight:600;line-height:1.45}.coupon-preview-error{color:var(--ww-red);margin-top:10px;font-size:14px;line-height:1.45}.coupon-preview-code{color:var(--muted);letter-spacing:1px;margin-top:8px;font-size:13px}.coupon-preview-cta{width:100%;margin-top:16px;font-size:18px;font-weight:700}.btn-primary.coupon-preview-cta{background:var(--green);color:#fff}.btn-primary.coupon-preview-cta:active:not(:disabled){filter:brightness(1.06);background:#178c49;transform:scale(.97)}.coupon-preview-cta:disabled{opacity:.45}.coupon-preview-skel{border-radius:8px;height:14px;margin-top:12px}.coupon-preview-skel--lg{height:22px}.coupon-preview-skel--sm{width:55%}@media (prefers-reduced-motion:reduce){.coupon-preview-sheet,.coupon-preview-sheet.is-closing,.coupon-preview-backdrop,.coupon-preview-backdrop.is-closing{animation-duration:.01ms!important}}
