/* Figma mobile 5:2 concept, adapted to desktop and mobile web. */
.ks-wallet-v2-backdrop[hidden],.ks-wallet-v2-dialog [hidden]{display:none!important}
.ks-wallet-v2-backdrop{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:16px;background:#241e235c;pointer-events:auto;touch-action:manipulation}
.ks-wallet-v2-dialog{position:relative;box-sizing:border-box;width:min(358px,100%);height:min(720px,calc(100dvh - 32px));padding:20px 19px 16px;display:flex;flex-direction:column;gap:14px;border:1.2px solid #edddd0;border-radius:28px;background:linear-gradient(90deg,#fffefc,#faf3ec);box-shadow:0 20px 38px #211b2052;color:#342a31;font:400 12px/1.5 'Noto Sans KR',system-ui,sans-serif;overflow:hidden;isolation:isolate}
.ks-wallet-v2-dialog::before{content:'';position:absolute;inset:4px;z-index:-1;background:url('./wallet-assets/rim.svg') center/100% 100% no-repeat;pointer-events:none}
.ks-wallet-v2-dialog *{box-sizing:border-box}.ks-wallet-v2-dialog p,.ks-wallet-v2-dialog h2{margin:0}
.ks-wallet-v2-header{position:relative;flex-shrink:0;height:44px;padding-left:46px;padding-right:44px;background:url('./wallet-assets/icon.svg') left center/36px 36px no-repeat}
.ks-wallet-v2-eyebrow{color:#796d70;font-size:9px;line-height:12px;letter-spacing:1.5px;font-weight:700}
.ks-wallet-v2-header h2{font-size:22px;line-height:32px;font-weight:700}
.ks-wallet-v2-close{position:absolute;right:0;top:0;width:44px;height:44px;padding:0;border:0;background:url('./wallet-assets/close.svg') center/44px 44px no-repeat;color:transparent;font-size:0;cursor:pointer}
.ks-wallet-v2-balance-card{position:relative;flex-shrink:0;height:128px;padding:22px 20px;border:1.2px solid #edae8b;border-radius:20px;background:url('./wallet-assets/halo.svg') center/100% 100% no-repeat,linear-gradient(100deg,#a64039,#e69a68);overflow:hidden}
.ks-wallet-v2-balance-card>img{position:absolute;right:0;top:-3px;width:124px;height:124px;object-fit:contain;pointer-events:none}
.ks-wallet-v2-balance-copy small{display:block;color:#ffffffc2;font-size:12px;line-height:18px}
.ks-wallet-v2-balance-value{display:block;position:relative;color:#fffdfa;font-size:42px;line-height:54px;font-weight:700;letter-spacing:-1.1px;font-variant-numeric:tabular-nums}
.ks-wallet-v2-heading{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;min-height:24px;padding-bottom:4px;border-bottom:1px solid #ecdccf;font-size:15px}
.ks-wallet-v2-heading small{font-size:11px;color:#897c7c}
.ks-wallet-v2-native-products{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start;scrollbar-width:thin;scrollbar-color:#d8b9a5 transparent;padding-bottom:4px}
.ks-wallet-v2-product{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;min-height:192px;padding:12px 12px 16px;border:1px solid #e5cdb9;border-radius:16px;background:url('./wallet-assets/card.svg') center/100% 100% no-repeat,linear-gradient(#fffefc,#faf4ed);box-shadow:0 2px 5px #684a4314;text-align:center}
.ks-wallet-v2-product:nth-child(3n+2){border-color:#e5c6c0}.ks-wallet-v2-product:nth-child(3n){border-color:#d8c5d9}
.ks-wallet-v2-product img{width:64px;height:64px;object-fit:contain;flex-shrink:0}
.ks-wallet-v2-product strong{font-size:16px;line-height:24px;overflow-wrap:anywhere}.ks-wallet-v2-product p{font-size:11px;line-height:16px;color:#897c7c}
.ks-wallet-v2-dialog button{font-family:inherit;cursor:pointer}.ks-wallet-v2-dialog button:disabled{opacity:.55;cursor:default}
.ks-wallet-v2-price{width:100%;min-height:44px;margin-top:auto;padding:8px;border:1px solid #a74435;border-radius:12px;background:linear-gradient(#c5674e,#a84637);box-shadow:inset 0 1px 0 #ffffff4d,0 2px 3px #87362726;color:#fffdfa;font-size:13px;font-weight:700}
.ks-wallet-v2-status{grid-column:1/-1;font-size:12px;color:#796d70;padding:12px 0}
.ks-wallet-v2-lucky-status{flex-shrink:0;font-size:11px;line-height:16px;color:#796d70}.ks-wallet-v2-lucky-status:empty{display:none}
.ks-wallet-v2-lucky{flex-shrink:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ks-wallet-v2-buy,.ks-wallet-v2-lucky-open{min-height:44px;padding:10px 8px;border:1px solid #e7d7ca;border-radius:12px;background:linear-gradient(#fffdf8,#f6ede2);color:#796d70;font-size:12px;font-weight:700}
.ks-wallet-v2-buy::before,.ks-wallet-v2-lucky-open::before{content:'';display:inline-block;vertical-align:middle;width:18px;height:18px;margin-right:6px;background:url('./wallet-assets/restore.svg') center/contain no-repeat}
.ks-wallet-v2-lucky-open{background:linear-gradient(#f9eff4,#f0dfea);border-color:#e1c9d8;color:#824560}.ks-wallet-v2-lucky-open{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 8px}.ks-wallet-v2-lucky-open::before{width:28px;height:28px;margin-right:0;background-image:url('./wallet-assets/lucky-spin-wheel.webp')}
.ks-wallet-v2-dialog button:focus-visible{outline:3px solid #904438;outline-offset:2px}
.ks-wallet-v2-balance-card.is-sandbox-editable{cursor:pointer}
#portalGameGemCount.is-sandbox-editable{cursor:pointer;text-decoration:underline dotted;text-underline-offset:.18em}
@media(min-width:700px){.ks-wallet-v2-dialog{width:520px;height:min(740px,calc(100dvh - 64px));padding:24px;gap:16px}.ks-wallet-v2-product{min-height:202px}.ks-wallet-v2-balance-card>img{right:26px}.ks-wallet-v2-header h2{font-size:24px}}
@media(max-height:560px){.ks-wallet-v2-dialog{gap:8px;padding-top:12px;padding-bottom:12px}.ks-wallet-v2-balance-card{height:88px;padding-top:10px}.ks-wallet-v2-balance-value{font-size:30px;line-height:42px}.ks-wallet-v2-balance-card>img{width:90px;height:90px}}


.ks-wallet-v2-gem-stack{position:relative;display:block;width:104px;height:64px;flex-shrink:0;margin:auto}
.ks-wallet-v2-gem-stack>img{position:absolute;object-fit:contain;width:40px;height:40px;left:32px;top:0;filter:drop-shadow(0 2px 2px #227d8030)}
.ks-wallet-v2-gem-stack-1>img{width:64px;height:64px;left:20px;top:0}
.ks-wallet-v2-gem-stack-2>img{width:50px;height:50px;top:12px;left:10px;transform:rotate(-12deg)}
.ks-wallet-v2-gem-stack-2>img:nth-child(2){left:44px;top:2px;transform:rotate(12deg)}
.ks-wallet-v2-gem-stack-3>img:nth-child(2),.ks-wallet-v2-gem-stack-5>img:nth-child(2),.ks-wallet-v2-gem-stack-7>img:nth-child(2){left:10px;top:20px;transform:rotate(-12deg)}
.ks-wallet-v2-gem-stack-3>img:nth-child(3),.ks-wallet-v2-gem-stack-5>img:nth-child(3),.ks-wallet-v2-gem-stack-7>img:nth-child(3){left:54px;top:20px;transform:rotate(12deg)}
.ks-wallet-v2-gem-stack-5>img:nth-child(4),.ks-wallet-v2-gem-stack-7>img:nth-child(4){left:24px;top:28px;transform:rotate(-6deg)}
.ks-wallet-v2-gem-stack-5>img:nth-child(5),.ks-wallet-v2-gem-stack-7>img:nth-child(5){left:44px;top:28px;transform:rotate(6deg)}
.ks-wallet-v2-gem-stack-7>img:nth-child(6){left:0;top:30px;width:34px;height:34px;transform:rotate(-20deg)}
.ks-wallet-v2-gem-stack-7>img:nth-child(7){left:70px;top:30px;width:34px;height:34px;transform:rotate(20deg)}


/* Figma 79:62: guest-only login remains above the scrollable products. */
.ks-wallet-v2-guest{flex-shrink:0;display:flex;flex-direction:column;gap:8px;min-height:164px;padding:16px;border:1px solid #e7d7ca;border-radius:16px;background:#fbe9de;color:#342a31}
.ks-wallet-v2-guest>strong{font-size:18px;line-height:24px;font-weight:700}
.ks-wallet-v2-guest>p{font-size:14px;line-height:20px;white-space:pre-line}
.ks-wallet-v2-guest-login{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;flex:1;border:1px solid #747775;border-radius:26px;padding:12px 16px;background:#fff;box-shadow:none;color:#1f1f1f!important;font-size:17px;line-height:24px;font-weight:500;text-decoration:none;text-align:center}
.ks-wallet-v2-guest-login img{width:24px;height:24px;flex:0 0 24px}

.ks-wallet-v2-guest-login:focus-visible{outline:3px solid #904438;outline-offset:2px}
@media(max-height:640px){.ks-wallet-v2-guest{min-height:152px;padding:12px}.ks-wallet-v2-guest-login{font-size:16px;min-height:48px}}
.ks-wallet-v2-logout{border:0;background:transparent;color:#984336;font:600 12px/1.4 system-ui;min-height:32px;padding:4px 8px;text-decoration:underline;cursor:pointer}.ks-wallet-v2-logout[hidden]{display:none}
