.membership-dialog{color:#f3eee5;background:linear-gradient(145deg,#1b252b,#10171d);border:1px solid #b3945870;border-radius:18px;width:min(600px,calc(100vw - 28px));max-height:calc(100svh - 28px);padding:0;box-shadow:0 24px 100px #000b;font-family:Pretendard,'Malgun Gothic',sans-serif}.membership-dialog::backdrop{background:#04070cc7;backdrop-filter:blur(6px)}.membership-dialog header{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;padding:20px 24px;border-bottom:1px solid #ffffff12;background:#141d23;z-index:2}.membership-dialog h2{font-size:19px;margin:0;color:#f1d393}.membership-dialog h3{font-size:15px}.membership-dialog .dialog-close{font-size:24px;border:0;background:transparent;color:#bfc8ca;cursor:pointer}.membership-body{padding:22px 24px}.membership-dialog p{font-size:13px;line-height:1.8;color:#bec7c9}.membership-dialog button,.membership-admin button{border:1px solid #d2b77960;color:#efce8c;background:#efce8c12;padding:10px 16px;border-radius:8px;cursor:pointer;font:inherit}.membership-dialog button:disabled,.membership-admin button:disabled{opacity:.4;cursor:default}.membership-dialog button.primary{background:linear-gradient(115deg,#f0ddae,#d8b775);color:#201b12;font-weight:700}.membership-dialog input,.membership-dialog select,.membership-dialog textarea,.membership-admin input,.membership-admin select{width:100%;min-width:0;background:#0b141a;border:1px solid #ffffff25;border-radius:7px;color:#f6f2e9;padding:11px 12px;font:inherit;box-sizing:border-box}.membership-dialog label{display:grid;gap:8px;font-size:12px;color:#d1c5ad;margin:16px 0}.membership-dialog textarea{min-height:90px;resize:vertical}.membership-dialog .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.membership-dialog .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.membership-dialog .form-grid label{margin:0}.membership-dialog .notice-badge{border:1px solid #d1b47830;border-radius:12px;background:#d1b47809;padding:15px 17px;font-size:12px;line-height:1.9;margin:0 0 10px}.membership-dialog .text-link{background:none;border:0;text-decoration:underline;color:#b7bfc3;padding:0;font-size:12px}.membership-dialog .error,.membership-admin .error{color:#ffb5a5;min-height:20px;font-size:12px}.membership-dialog table,.membership-admin table{width:100%;border-collapse:collapse;font-size:12px}.membership-dialog th,.membership-dialog td,.membership-admin th,.membership-admin td{padding:10px 8px;text-align:left;border-bottom:1px solid #ffffff12;vertical-align:top}.membership-dialog th{color:#c6b790}.membership-dialog .scroll-table{overflow:auto}.membership-dialog .muted{color:#91a1a9;font-size:12px}.membership-dialog .point-summary{display:flex;justify-content:space-between;background:#090f15;padding:16px;border-radius:10px;margin-top:18px;font-variant-numeric:tabular-nums}.membership-dialog .point-summary strong{color:#f4cf73}.membership-dialog .danger{color:#ffb4a6;border-color:#e9867455;background:#822b2026}.membership-dialog .sanction-section{border-top:1px solid #ffffff15;margin-top:24px;padding-top:8px}.membership-dialog .reason{white-space:pre-wrap;overflow-wrap:anywhere}.membership-dialog .roulette-stage{position:relative;width:min(390px,100%);aspect-ratio:1;margin:20px auto 14px}.roulette-stage canvas{width:100%;height:100%;display:block}.roulette-pointer{position:absolute;top:2%;left:calc(50% - 15px);width:30px;height:42px;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(90deg,#a87126,#ffe8a4,#ad7b2c);filter:drop-shadow(0 5px 3px #000);z-index:1}.roulette-start{display:block;width:min(320px,100%);margin:0 auto}.roulette-status{text-align:center;font-variant-numeric:tabular-nums}.prize-ceremony{text-align:center;padding:18px 0 25px}.prize-ceremony .prize{display:block;font-size:clamp(30px,6vw,46px);color:#f5d489;font-weight:800;margin:24px 0;text-shadow:0 0 35px #d9a64255}.membership-admin .toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.membership-admin .toolbar input{flex:1;min-width:150px}.membership-admin .badge{display:inline-block;padding:3px 8px;border-radius:20px;font-size:11px;background:#cfb27616;border:1px solid #cfb27644;color:#e6cd91}.membership-admin .badge.free{background:#44bb9b12;border-color:#44bb9b44;color:#83d7c0}.membership-admin .pager{display:flex;justify-content:center;gap:14px;align-items:center;margin:16px}.membership-dialog .weight-row{display:grid;grid-template-columns:1fr 110px 20px;gap:10px;align-items:center;margin:10px 0}.membership-dialog .weight-row label{margin:0}.membership-dialog .legal-text{max-height:45vh;overflow:auto;white-space:pre-wrap;font-size:13px;line-height:1.9}.signup-page .showcase{height:auto;min-height:100svh;overflow:visible;padding-bottom:55px}.signup-page .ensemble,.signup-page .vignette{position:fixed;height:100svh}.signup-page .brand{top:0;transform:translateX(-50%) scale(.64);transform-origin:top center}.signup-page .access{width:min(570px,calc(100% - 32px));padding-top:180px}.signup-page .login-panel{padding:28px 32px}.signup-page .signup-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.signup-page .full{grid-column:1/-1}.signup-page .field-row{display:flex;gap:9px;align-items:stretch}.signup-page input,.signup-page select{width:100%;min-width:0;height:44px;padding:0 12px;background:#090f15;border:1px solid #ffffff25;border-radius:7px;color:#f6f2e9;font:inherit;font-size:13px}.signup-page input[readonly]{color:#aeb6ba;background:#ffffff04}.signup-page button.secondary{white-space:nowrap;background:#cdb07812;color:#dac18b;border:1px solid #cdb07850;border-radius:7px;padding:0 13px;font-size:12px;cursor:pointer}.signup-page .field-help{font-size:11px;min-height:16px;line-height:1.5;margin:6px 0 0;color:#8a979d}.signup-page .consents{border-top:1px solid #ffffff14;margin-top:24px;padding-top:8px}.signup-page .consents label{display:flex;align-items:center;gap:8px;margin:12px 0;line-height:1.5}.signup-page .consents input{width:16px;height:16px;accent-color:#d5b77d}.signup-page .consents button{color:#d5b77d;border:0;background:none;text-decoration:underline;cursor:pointer}.signup-page .signup-actions{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:22px}.signup-page .signup-actions .enter{margin:0}.signup-page .cancel{display:grid;place-items:center;border:1px solid #ffffff26;border-radius:7px;font-size:13px;color:#b6bfc3;text-decoration:none}.signup-page footer{position:static;margin:32px 24px 0}.signup-page .account-help a{color:#d5b77d}.signup-page .feedback{min-height:34px}.membership-dialog [hidden],.signup-page [hidden]{display:none!important}@media(max-width:540px){.membership-body{padding:18px}.membership-dialog header{padding:16px 18px}.membership-dialog .form-grid{grid-template-columns:1fr;gap:14px}.signup-page .signup-fields{grid-template-columns:1fr}.signup-page .login-panel{padding:24px 20px}.signup-page .access{padding-top:170px}.signup-page .ensemble{width:180%;left:-40%;top:0;object-fit:cover;opacity:.65}.signup-page input,.signup-page select{font-size:16px}.membership-admin th,.membership-admin td{white-space:nowrap}}
.membership-dialog label.check{display:flex;align-items:center;gap:10px;line-height:1.6}.membership-dialog label.check input{width:18px;height:18px;flex:0 0 18px;margin:0}.membership-dialog dd{margin:5px 0 18px;overflow-wrap:anywhere}.membership-dialog dt{font-size:12px;color:#bbaa88}
/* Free recharge: shared NOIR gold, one bounded WebGL surface. */
.free-recharge-dialog{width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:hidden;border-color:#ad8c50;border-radius:22px;background:radial-gradient(ellipse at 50% 56%,#29352955,transparent 65%),linear-gradient(150deg,#1b272b,#10191e 70%);box-shadow:0 30px 110px #000c,inset 0 0 0 4px #d6b66c05}
.free-recharge-dialog[open]{display:flex;flex-direction:column}.free-recharge-dialog header{flex-shrink:0;background:linear-gradient(110deg,#27332e,#172229);padding:14px 24px;border-bottom:1px solid #d6b66c2b}.free-recharge-dialog h2{font-size:21px;letter-spacing:-.7px;color:#f5dfaa}.free-recharge-dialog .membership-body{overflow-y:auto;overscroll-behavior:contain;padding:18px 28px 20px;scrollbar-width:thin;scrollbar-color:#7a6c49 #132027}.free-recharge-dialog button:focus-visible,.recharge-prize-dialog button:focus-visible{outline:2px solid #f2d48c;outline-offset:4px}
.recharge-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.recharge-eyebrow{font:600 10px/1.5 Arial,sans-serif;letter-spacing:2.8px;color:#cdb47b}.free-recharge-dialog .notice-badge{font-size:12px;line-height:1.85;padding:13px 15px;background:#b7a27508;border-color:#c6b58322;margin:0}.free-recharge-dialog .notice-badge strong{color:#f1d89f;font-weight:600}.free-recharge-dialog .recharge-guideline{display:block;margin:9px 0 17px;font-size:11px;color:#9daeb1;text-underline-offset:3px}.recharge-guideline span{display:inline-block;margin-left:4px;color:#c8ae76}
.recharge-summary{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cdb78023;border-radius:12px;padding:13px 0;background:#070f144d}.recharge-summary>div{display:grid;gap:6px;text-align:center}.recharge-summary>div+div{border-left:1px solid #d9c28623}.recharge-summary span{font-size:11px;color:#9cacae}.recharge-summary strong{font-size:23px;font-weight:750;line-height:1.2;color:#f5d286;font-variant-numeric:tabular-nums}.recharge-summary b{font-weight:inherit}.recharge-summary small{font-size:12px;color:#bbc2b8;font-weight:400}
.free-recharge-dialog .roulette-crop{container-type:inline-size;overflow:hidden;width:100%;margin:13px auto 3px}.free-recharge-dialog .roulette-window{width:min(636px,184cqw);aspect-ratio:100/65;overflow:hidden;position:relative;left:50%;transform:translateX(-50%)}.free-recharge-dialog .roulette-stage{width:100%;aspect-ratio:1;margin:0;isolation:isolate;filter:drop-shadow(0 12px 13px #0007)}.roulette-halo{position:absolute;inset:6%;border-radius:50%;z-index:-1;background:#c9a14915;box-shadow:0 0 38px 12px #c9a14917}.free-recharge-dialog .roulette-pointer{top:2%;left:calc(50% - 17px);width:34px;height:43px;background:linear-gradient(90deg,#a57526,#fff2b0 48%,#bb8a32);filter:none;z-index:1}.roulette-pointer i{position:absolute;inset:5px 7px 10px;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(150deg,#f1b65c,#9e431e);box-shadow:inset 0 1px #ffecb0}
.recharge-usage{display:flex;justify-content:center;align-items:center;gap:12px;margin:7px 0 13px;font-size:11px;color:#a4b2b3}.recharge-dots{display:flex;gap:6px}.recharge-dots i{height:7px;width:7px;border-radius:50%;background:#edcd85;box-shadow:0 0 6px #deb35c33}.recharge-dots i.used{background:#41504f;box-shadow:none}
.free-recharge-dialog .roulette-start{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;border-radius:10px;font-size:15px;background:linear-gradient(110deg,#f4e0a7,#d4ac60 65%,#e5c784);border:1px solid #f3d894;box-shadow:inset 0 1px #fff4d2,0 6px 20px #b3823322;transition:filter .2s,transform .2s}.roulette-start svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.free-recharge-dialog .roulette-start:not(:disabled):hover{filter:brightness(1.1);transform:translateY(-1px)}.free-recharge-dialog .roulette-start:disabled{opacity:1;background:#25302f;color:#a4aca5;border-color:#59645566;box-shadow:none}.free-recharge-dialog[data-phase=spinning] .roulette-start svg{animation:recharge-turn 2s linear infinite}.free-recharge-dialog[data-phase=spinning] .roulette-halo{animation:recharge-glow 1.5s ease-in-out infinite alternate}.free-recharge-dialog .roulette-status{font-size:11px;line-height:1.7;min-height:19px;margin:11px 0;color:#aebcbd}.recharge-reset{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dcc59518;padding-top:11px;font-size:20px;color:#819497;flex-wrap:wrap;gap:8px 16px;margin-top:12px}.recharge-reset strong{font-weight:500;color:#adbbb7;margin-left:6px}.recharge-reset time{font:500 24px/1.4 Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:1px;color:#d5c393}.free-recharge-dialog .error{margin:11px 0 0;padding:10px 12px;border:1px solid #e68f7644;border-radius:8px;background:#80382015}
.recharge-prize-dialog{width:min(420px,calc(100vw - 28px));border-color:#d2af66;background:radial-gradient(ellipse at 50% 40%,#4d402842,#172127 65%)}.recharge-prize-dialog header{background:#1c282b}.recharge-prize-dialog .prize-ceremony{padding:8px 0 5px;position:relative;overflow:hidden}.prize-seal{display:grid;place-items:center;width:64px;height:64px;margin:5px auto 20px;border:3px double #f9df9f;border-radius:50%;background:linear-gradient(125deg,#f2d18a,#a57631);box-shadow:0 0 45px #d8a54433,inset 0 0 0 5px #79542238;font:italic 700 34px Georgia,serif;color:#5f4016}.recharge-prize-dialog .recharge-eyebrow{font-size:10px;color:#c5a96c}.recharge-prize-dialog h3{font-size:20px;font-weight:600;letter-spacing:-.6px;margin:10px 0}.recharge-prize-dialog .prize{margin:22px 0 12px;font-size:48px;line-height:1.2}.recharge-prize-dialog .prize small{font-size:24px}.prize-balance{display:flex;justify-content:space-between;align-items:center;background:#0b141966;border:1px solid #d6b56b22;border-radius:9px;padding:14px;margin:20px 0;font-size:11px;color:#a6b6b7}.prize-balance strong{font-size:14px;color:#e7d2a0}.recharge-prize-dialog [data-ok]{width:100%;height:45px}.recharge-prize-dialog[open] .prize-seal{animation:recharge-award .55s ease-out both}.recharge-prize-dialog[open] .prize{animation:recharge-award .65s ease-out both}
@keyframes recharge-turn{to{transform:rotate(360deg)}}@keyframes recharge-glow{to{box-shadow:0 0 45px 18px #c9a14933}}@keyframes recharge-award{from{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:none}}
@media(max-width:540px){.free-recharge-dialog{border-radius:17px}.free-recharge-dialog .membership-body{padding:15px 18px 17px}.free-recharge-dialog header{padding:14px 18px}.free-recharge-dialog .roulette-window{width:min(580px,188cqw)}.recharge-summary strong{font-size:21px}.free-recharge-dialog .notice-badge{font-size:11px}.recharge-reset{font-size:20px;gap:8px}.recharge-reset strong{margin-left:3px}.recharge-prize-dialog .prize{font-size:42px}}
@media(max-height:740px) and (min-width:541px){.free-recharge-dialog .roulette-window{width:480px}.free-recharge-dialog .membership-body{padding:8px 24px 10px}.free-recharge-dialog .recharge-guideline{margin:6px 0 9px}.free-recharge-dialog .roulette-status{margin:6px 0}.free-recharge-dialog .recharge-reset{padding-top:8px}.free-recharge-dialog .recharge-intro{margin-bottom:8px}.recharge-summary{padding:9px 0}.free-recharge-dialog .notice-badge{font-size:11px}}

.free-recharge-dialog .dialog-close,.recharge-prize-dialog .dialog-close{display:grid;place-items:center;width:32px;height:32px;padding:0;line-height:1}

@media(min-height:741px) and (min-width:541px){.free-recharge-dialog{width:min(696px,calc(100vw - 24px))}}
.guideline-dialog{width:min(720px,calc(100vw - 28px))}.guideline-dialog .guideline-content{max-height:60svh;white-space:normal;line-height:1.85;word-break:keep-all;overflow-wrap:anywhere;padding-right:10px}.guideline-content p{margin:0 0 16px}.guideline-content h3{font-size:15px;line-height:1.6;color:#efd398;border-top:1px solid #d2b77930;margin:24px 0 12px;padding-top:18px}.guideline-content ul{padding-left:20px;margin:0 0 20px;color:#bec7c9}.guideline-content li{padding-left:3px;margin:10px 0}.guideline-content strong{color:#f0deb8;font-weight:650}.guideline-dialog .actions{margin-top:18px}@media(max-width:540px){.guideline-dialog .guideline-content{max-height:62svh;font-size:12px}.guideline-content h3{font-size:14px}}
