.ep-app-page{padding:58px 0 76px}.ep-app-container{max-width:1080px}.ep-checkout-container{max-width:1040px}.ep-app-head{margin-bottom:28px}.ep-app-head h1{font-size:clamp(34px,4vw,52px);line-height:1.1;margin:4px 0 10px;letter-spacing:-.035em}.ep-app-head p{color:var(--ep-muted,#6d7482);font-size:17px;margin:0}.ep-auth-card,.ep-panel,.ep-order-status-card{background:#fff;border:1px solid var(--ep-line,#e8eaf0);border-radius:18px;box-shadow:0 10px 30px rgba(31,35,48,.05)}.ep-auth-card{max-width:520px;padding:28px}.ep-form{display:grid;gap:18px}.ep-form label>span{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.ep-form input[type=text],.ep-form input[type=email],.ep-form input[type=password]{width:100%;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;padding:12px 14px;font-size:15px;background:#fff}.ep-form .ep-check{display:flex;align-items:center;gap:8px}.ep-form .ep-check span{margin:0;font-weight:500}.ep-btn--wide{display:block;width:100%;text-align:center}.ep-btn--small{padding:8px 12px;font-size:13px}.ep-auth-foot{margin:18px 0 0;color:var(--ep-muted,#6d7482)}.ep-auth-foot a{color:var(--ep-accent,#5b5ef7);font-weight:700}.ep-alert{padding:13px 15px;border-radius:12px;margin:0 0 18px;border:1px solid}.ep-alert--error{background:#fff1f1;border-color:#f0c6c6;color:#8b1b1b}.ep-alert--success{background:#effaf2;border-color:#bfdfc8;color:#166534}.ep-alert--warning{background:#fff8e7;border-color:#ead8a7;color:#72500a}.ep-account-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.ep-account-nav{background:#fff;border:1px solid var(--ep-line,#e8eaf0);border-radius:16px;padding:10px;height:max-content;position:sticky;top:92px}.ep-account-nav a{display:block;padding:11px 12px;border-radius:10px;color:var(--ep-text,#151925);text-decoration:none;font-weight:650}.ep-account-nav a:hover,.ep-account-nav a.is-active{background:#f1f2ff;color:var(--ep-accent,#5b5ef7)}.ep-account-main{min-width:0}.ep-dashboard-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.ep-dashboard-cards>div{background:#fff;border:1px solid var(--ep-line,#e8eaf0);border-radius:16px;padding:18px}.ep-dashboard-cards span{display:block;color:var(--ep-muted,#6d7482);font-size:13px}.ep-dashboard-cards strong{display:block;font-size:27px;margin-top:4px}.ep-panel{padding:24px}.ep-panel h2{margin:0 0 18px;font-size:20px}.ep-responsive-table{overflow:auto}.ep-responsive-table table{border-collapse:collapse;width:100%;min-width:650px}.ep-responsive-table th,.ep-responsive-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--ep-line,#e8eaf0);font-size:14px}.ep-responsive-table th{color:var(--ep-muted,#6d7482);font-size:12px}.ep-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:12px;background:#f0f0f1}.ep-status--paid{background:#e8f8ed;color:#166534}.ep-status--pending{background:#fff4d6;color:#7a5200}.ep-status--failed,.ep-status--expired{background:#fdeaea;color:#9b1c1c}.ep-download-list{display:grid;gap:10px}.ep-download-item{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;padding:14px}.ep-download-item strong,.ep-download-item span{display:block}.ep-download-item span{color:var(--ep-muted,#6d7482);font-size:12px;margin-top:3px}.ep-form--compact{max-width:620px}.ep-checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.ep-order-product{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center}.ep-order-product img{width:64px;height:64px;object-fit:cover;border-radius:12px}.ep-order-product strong,.ep-order-product span{display:block}.ep-order-product span{font-size:13px;color:var(--ep-muted,#6d7482)}.ep-order-product b{font-size:18px}.ep-total{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:18px;border-top:1px solid var(--ep-line,#e8eaf0)}.ep-total strong{font-size:26px;color:var(--ep-accent,#5b5ef7)}.ep-payment-choices{display:grid;gap:10px;margin-bottom:18px}.ep-payment-choice{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px;border:1px solid var(--ep-line,#e8eaf0);border-radius:13px;cursor:pointer;transition:.15s}.ep-payment-choice:hover{border-color:var(--ep-accent,#5b5ef7)}.ep-payment-choice input{width:18px;height:18px}.ep-payment-choice__body b,.ep-payment-choice__body small{display:block}.ep-payment-choice__body small{color:var(--ep-muted,#6d7482);margin-top:2px}.ep-payment-choice__check{opacity:.25;font-weight:900}.ep-payment-choice:has(input:checked){border-color:var(--ep-accent,#5b5ef7);box-shadow:0 0 0 2px rgba(91,94,247,.08)}.ep-payment-choice:has(input:checked) .ep-payment-choice__check{opacity:1;color:var(--ep-accent,#5b5ef7)}.ep-payment-transition{text-align:center;margin:auto}.ep-spinner{width:42px;height:42px;border:4px solid #eceef5;border-top-color:var(--ep-accent,#5b5ef7);border-radius:50%;margin:0 auto 15px;animation:epSpin .8s linear infinite}@keyframes epSpin{to{transform:rotate(360deg)}}.ep-order-status-card{display:grid;grid-template-columns:58px 1fr auto;gap:18px;align-items:center;padding:22px;margin-bottom:20px}.ep-order-status-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#f1f2f6;font-size:24px;font-weight:900}.ep-order-status-card--paid .ep-order-status-icon{background:#e8f8ed;color:#166534}.ep-order-status-copy span{font-size:12px;color:var(--ep-muted,#6d7482)}.ep-order-status-copy h2{margin:2px 0;font-size:22px}.ep-order-status-copy p{margin:0}.ep-order-status-card>strong{font-size:24px;color:var(--ep-accent,#5b5ef7)}.ep-order-dl{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:0}.ep-order-dl dt{color:var(--ep-muted,#6d7482)}.ep-order-dl dd{margin:0}.ep-delivery-info{margin-top:20px;padding:18px;border-radius:14px;background:#f7f8ff;border:1px solid #e4e6ff}.ep-delivery-info h3{margin:0 0 10px}.ep-delivery-info dl{display:grid;grid-template-columns:90px 1fr;gap:8px 12px;margin:0}.ep-delivery-info dd{margin:0}.ep-delivery-info code{word-break:break-all}@media(max-width:850px){.ep-account-layout,.ep-checkout-grid{grid-template-columns:1fr}.ep-account-nav{position:static;display:flex;overflow:auto}.ep-account-nav a{white-space:nowrap}.ep-dashboard-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.ep-dashboard-cards{grid-template-columns:1fr 1fr}.ep-auth-card,.ep-panel{padding:18px}.ep-order-status-card{grid-template-columns:46px 1fr}.ep-order-status-card>strong{grid-column:2}.ep-order-product{grid-template-columns:52px 1fr}.ep-order-product b{grid-column:2}.ep-order-product img{width:52px;height:52px}}

/* v0.3.13 auth repair + VIP membership / balance pages. */
.ep-app-page{min-height:calc(100vh - 150px)}
.ep-auth-layout{display:grid;grid-template-columns:minmax(0,520px) minmax(280px,1fr);gap:24px;align-items:stretch;max-width:920px;margin:0 auto}
.ep-auth-layout .ep-auth-card{max-width:none;width:100%;padding:30px}
.ep-auth-aside{position:relative;overflow:hidden;padding:34px;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 18%,var(--ep-line,#e8eaf0));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 10%,var(--ep-card,#fff)),var(--ep-card,#fff));box-shadow:0 10px 30px rgba(31,35,48,.05)}
.ep-auth-aside:after{content:"";position:absolute;width:210px;height:210px;right:-85px;bottom:-100px;border-radius:50%;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 13%,transparent)}
.ep-auth-aside h2{position:relative;z-index:1;font-size:26px;line-height:1.25;margin:8px 0 20px}
.ep-auth-aside ul{position:relative;z-index:1;display:grid;gap:12px;margin:0;padding:0;list-style:none;color:var(--ep-muted,#6d7482)}
.ep-auth-aside li{padding:10px 12px;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;background:color-mix(in srgb,var(--ep-card,#fff) 80%,transparent)}
.ep-auth-card,.ep-panel,.ep-order-status-card,.ep-account-nav,.ep-dashboard-cards>div{background:var(--ep-card,#fff)!important;border-color:var(--ep-line,#e8eaf0)!important;color:var(--ep-text,#151925)}
.ep-form input[type=text],.ep-form input[type=email],.ep-form input[type=password],.ep-form input[type=number]{background:var(--ep-surface-soft,#fff)!important;border-color:var(--ep-line,#e8eaf0)!important;color:var(--ep-text,#151925)!important;min-height:46px;outline:none}
.ep-form input:focus{border-color:var(--ep-accent,#5b5ef7)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,transparent)}
.ep-account-vip{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,var(--ep-card,#fff)),var(--ep-card,#fff))!important}
.ep-account-vip h2{margin:4px 0 4px}.ep-account-vip p{margin:0;color:var(--ep-muted,#6d7482)}
.ep-app-head--center{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}
.ep-vip-global-notice{max-width:920px;margin:0 auto 18px}
.ep-vip-user-strip{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:center;max-width:920px;margin:0 auto 24px;padding:14px 16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:16px;background:var(--ep-card,#fff);box-shadow:var(--ep-shadow,0 12px 35px rgba(31,35,48,.08))}
.ep-vip-user-strip>div span,.ep-vip-user-strip>div small{display:block;color:var(--ep-muted,#6d7482);font-size:12px}.ep-vip-user-strip>div strong{display:block;font-size:18px;margin-top:2px}
.ep-vip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:16px;align-items:stretch}
.ep-vip-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid var(--ep-line,#e8eaf0);border-radius:var(--ep-radius,18px);background:var(--ep-card,#fff);box-shadow:0 10px 28px rgba(31,35,48,.055);transition:.2s ease}
.ep-vip-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 38%,var(--ep-line,#e8eaf0));box-shadow:0 18px 42px rgba(31,35,48,.1)}
.ep-vip-card.is-recommended{border:2px solid var(--ep-accent,#5b5ef7);box-shadow:0 18px 48px color-mix(in srgb,var(--ep-accent,#5b5ef7) 16%,transparent)}
.ep-vip-recommended{position:absolute;top:12px;right:12px;padding:5px 9px;border-radius:999px;background:var(--ep-accent,#5b5ef7);color:#fff;font-size:11px;font-weight:800}
.ep-vip-card__head h2{margin:0 0 14px;font-size:22px}.ep-vip-price{display:flex;align-items:baseline;gap:5px;margin-bottom:18px}.ep-vip-price strong{font-size:32px;line-height:1;color:var(--ep-accent,#5b5ef7)}.ep-vip-price span{color:var(--ep-muted,#6d7482);font-size:12px}
.ep-vip-quota{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--ep-line,#e8eaf0);font-size:13px}.ep-vip-quota span{color:var(--ep-muted,#6d7482)}
.ep-vip-privileges{display:grid;gap:9px;list-style:none;padding:16px 0 20px;margin:0;flex:1}.ep-vip-privileges li{display:flex;gap:8px;font-size:13px}.ep-vip-privileges li span{color:var(--ep-accent,#5b5ef7);font-weight:900}
.ep-btn--secondary{background:var(--ep-card,#fff);color:var(--ep-accent,#5b5ef7);border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 35%,var(--ep-line,#e8eaf0))}
.ep-vip-modal[hidden]{display:none!important}.ep-vip-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px}.ep-vip-modal__backdrop{position:absolute;inset:0;background:rgba(8,11,18,.62);backdrop-filter:blur(5px)}.ep-vip-modal__panel{position:relative;width:min(460px,100%);padding:28px;border:1px solid var(--ep-line,#e8eaf0);border-radius:20px;background:var(--ep-card,#fff);color:var(--ep-text,#151925);box-shadow:0 30px 90px rgba(0,0,0,.28)}.ep-vip-modal__panel h2{margin:6px 0 16px;font-size:26px}.ep-vip-modal__close{position:absolute;right:12px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--ep-surface-soft,#f4f5f8);color:var(--ep-text,#151925);font-size:24px;cursor:pointer}.ep-vip-modal__balance{padding:14px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-surface-soft,#f9fafc);margin-bottom:16px}.ep-vip-modal__balance span,.ep-vip-modal__balance small{display:block;color:var(--ep-muted,#6d7482);font-size:12px}.ep-vip-modal__balance strong{display:block;font-size:22px;margin:2px 0}.ep-vip-modal__actions{display:grid;gap:10px}.ep-vip-modal__actions form{display:grid;gap:6px}.ep-vip-modal__actions p,.ep-vip-modal__hint{margin:0;color:var(--ep-muted,#6d7482);font-size:12px}.ep-modal-open{overflow:hidden}
.ep-member-order-line{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-surface-soft,#f9fafc)}.ep-member-order-line strong,.ep-member-order-line span{display:block}.ep-member-order-line span{color:var(--ep-muted,#6d7482);font-size:13px;margin-top:3px}.ep-member-order-line b{font-size:22px;color:var(--ep-accent,#5b5ef7)}
.ep-recharge-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.8fr);gap:20px;align-items:start;max-width:1000px;margin:0 auto}.ep-recharge-balance{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--ep-line,#e8eaf0)}.ep-recharge-balance span{color:var(--ep-muted,#6d7482)}.ep-recharge-balance strong{font-size:25px}.ep-money-input{display:flex;align-items:center;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;background:var(--ep-surface-soft,#fff);overflow:hidden}.ep-money-input b{padding:0 0 0 14px;font-size:18px}.ep-money-input input{border:0!important;box-shadow:none!important;background:transparent!important;font-size:18px!important}.ep-recharge-form label>small{display:block;margin-top:6px;color:var(--ep-muted,#6d7482)}.ep-recharge-preview{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-radius:13px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,var(--ep-surface-soft,#f9fafc));border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 16%,var(--ep-line,#e8eaf0))}.ep-recharge-preview span{color:var(--ep-muted,#6d7482)}.ep-recharge-preview strong{font-size:19px;color:var(--ep-accent,#5b5ef7)}.ep-recharge-rules{position:sticky;top:92px}.ep-recharge-rules>p{color:var(--ep-muted,#6d7482)}.ep-reward-list{display:grid;gap:8px}.ep-reward-list h3{margin:10px 0 2px}.ep-reward-list>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px;border-radius:10px;background:var(--ep-surface-soft,#f9fafc);font-size:13px}.ep-reward-list>div strong{text-align:right;color:var(--ep-accent,#5b5ef7)}
@media(max-width:860px){.ep-auth-layout,.ep-recharge-layout{grid-template-columns:1fr}.ep-auth-layout{max-width:560px}.ep-auth-aside{order:-1}.ep-vip-user-strip{grid-template-columns:1fr 1fr}.ep-vip-user-strip>a{grid-column:1/-1}.ep-recharge-rules{position:static}}
@media(max-width:560px){.ep-app-page{padding:34px 0 54px}.ep-app-head h1{font-size:34px}.ep-auth-layout .ep-auth-card,.ep-auth-aside{padding:20px}.ep-auth-aside h2{font-size:21px}.ep-vip-grid{grid-template-columns:1fr}.ep-vip-user-strip{grid-template-columns:1fr}.ep-vip-user-strip>a{grid-column:auto}.ep-vip-card{padding:20px}.ep-vip-modal__panel{padding:22px}.ep-account-vip{align-items:flex-start;flex-direction:column}}

.ep-auth-row{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px}.ep-auth-row>a{color:var(--ep-accent,#5b5ef7);font-weight:700;text-decoration:none}.ep-auth-row>a:hover{text-decoration:underline}@media(max-width:420px){.ep-auth-row{align-items:flex-start;flex-direction:column}}

/* v0.3.15 account navigation + VIP difference upgrade polish. */
.ep-account-nav{padding:12px!important;border-radius:18px!important;box-shadow:0 12px 34px rgba(30,38,64,.06)}
.ep-account-nav__user{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:6px 6px 12px;margin-bottom:8px;border-bottom:1px solid var(--ep-line,#e8eaf0)}
.ep-account-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,var(--ep-accent,#5b5ef7),#8d66ff);color:#fff;font-weight:850;font-size:17px}
.ep-account-nav__user strong,.ep-account-nav__user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ep-account-nav__user strong{font-size:14px}.ep-account-nav__user small{margin-top:2px;color:var(--ep-muted,#6d7482);font-size:11px}
.ep-account-nav__links{display:grid;gap:4px}.ep-account-nav__links a{position:relative;padding:10px 11px!important}
.ep-account-nav__links a.is-active{background:linear-gradient(90deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,var(--ep-card,#fff)),color-mix(in srgb,var(--ep-accent,#5b5ef7) 4%,var(--ep-card,#fff)));box-shadow:inset 3px 0 0 var(--ep-accent,#5b5ef7)}
.ep-account-nav__extras{display:grid;gap:3px;margin-top:10px;padding-top:10px;border-top:1px solid var(--ep-line,#e8eaf0)}
.ep-account-nav__extras a{font-size:13px;color:var(--ep-muted,#6d7482)!important}.ep-account-nav__extras a:hover{color:var(--ep-accent,#5b5ef7)!important}
[data-ep-account-panel][hidden]{display:none!important}
.ep-account-main{scroll-margin-top:96px}
.ep-vip-price__original{display:block;margin-bottom:-3px;color:var(--ep-muted,#6d7482);font-size:12px;text-decoration:line-through;font-weight:650}
.ep-checkout-difference{margin:14px 0 0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 8%,var(--ep-card,#fff));color:var(--ep-muted,#6d7482);font-size:13px}
@media(max-width:850px){
  .ep-account-nav{position:sticky!important;top:64px!important;z-index:18;display:block!important;padding:8px!important;overflow:visible!important;background:color-mix(in srgb,var(--ep-card,#fff) 94%,transparent)!important;backdrop-filter:blur(14px)}
  .ep-account-nav__user{display:none}
  .ep-account-nav__links{display:flex;gap:5px;overflow:auto;scrollbar-width:none}.ep-account-nav__links::-webkit-scrollbar{display:none}
  .ep-account-nav__links a{white-space:nowrap;flex:0 0 auto;padding:9px 12px!important}
  .ep-account-nav__links a.is-active{box-shadow:inset 0 -3px 0 var(--ep-accent,#5b5ef7)}
  .ep-account-nav__extras{display:flex;gap:5px;overflow:auto;margin-top:6px;padding-top:6px;scrollbar-width:none}.ep-account-nav__extras a{white-space:nowrap;flex:0 0 auto}
}


/* v0.3.16 membership purchase information. */
.ep-vip-purchase-note{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;max-width:1000px;margin:26px auto 0;padding:20px 22px;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 18%,var(--ep-line,#e8eaf0));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,var(--ep-card,#fff)),var(--ep-card,#fff));box-shadow:0 12px 34px rgba(31,35,48,.055)}
.ep-vip-purchase-note__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--ep-accent,#5b5ef7),#8d66ff);color:#fff;font-size:23px;font-weight:900;box-shadow:0 8px 20px color-mix(in srgb,var(--ep-accent,#5b5ef7) 22%,transparent)}
.ep-vip-purchase-note__body>.ep-kicker{display:block;margin:1px 0 8px}.ep-vip-purchase-note__content{color:var(--ep-muted,#6d7482);font-size:14px;line-height:1.75}.ep-vip-purchase-note__content p{margin:0 0 9px}.ep-vip-purchase-note__content p:last-child{margin-bottom:0}.ep-vip-purchase-note__content strong{color:var(--ep-text,#151925)}
@media(max-width:560px){.ep-vip-purchase-note{grid-template-columns:1fr;padding:18px}.ep-vip-purchase-note__icon{width:42px;height:42px;border-radius:13px}}


/* v0.3.19: simplified, purchase-focused VIP cards and stronger recommendation treatment. */
.ep-vip-grid{gap:20px;align-items:stretch}
.ep-vip-card{padding:26px 24px 22px;overflow:visible}
.ep-vip-card__head{padding-bottom:15px;border-bottom:1px solid var(--ep-line,#e8eaf0)}
.ep-vip-card__head h2{margin:0 0 11px;font-size:23px;letter-spacing:-.02em}
.ep-vip-price{margin:0;display:flex;align-items:flex-end;gap:7px}
.ep-vip-price strong{font-size:36px;letter-spacing:-.04em}
.ep-vip-price span{padding-bottom:3px;font-size:12px}
.ep-vip-privileges{padding:18px 0 22px;gap:11px}
.ep-vip-privileges li{font-size:13.5px;line-height:1.5}
.ep-vip-card.is-recommended{z-index:2;transform:translateY(-7px);border:2px solid var(--ep-accent,#5b5ef7);background:linear-gradient(180deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 6%,var(--ep-card,#fff)) 0%,var(--ep-card,#fff) 28%);box-shadow:0 24px 58px color-mix(in srgb,var(--ep-accent,#5b5ef7) 19%,transparent)}
.ep-vip-card.is-recommended:hover{transform:translateY(-10px)}
.ep-vip-card.is-recommended:before{content:"";position:absolute;left:18px;right:18px;top:-2px;height:4px;border-radius:0 0 99px 99px;background:linear-gradient(90deg,var(--ep-accent,#5b5ef7),#9a63ff)}
.ep-vip-recommended{top:-14px;right:18px;display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border-radius:999px;background:linear-gradient(135deg,var(--ep-accent,#5b5ef7),#8b5cf6);box-shadow:0 7px 18px color-mix(in srgb,var(--ep-accent,#5b5ef7) 27%,transparent);font-size:11px;letter-spacing:.02em}
.ep-vip-recommended b{font-size:10px;color:#ffe58a}
.ep-vip-card.is-recommended .ep-btn{box-shadow:0 10px 22px color-mix(in srgb,var(--ep-accent,#5b5ef7) 22%,transparent)}
@media(max-width:760px){.ep-vip-card.is-recommended{transform:none}.ep-vip-card.is-recommended:hover{transform:translateY(-3px)}.ep-vip-recommended{top:10px}}

/* v0.3.20 account favorites, comments, profile and avatar polish. */
.ep-account-avatar--image{display:block;object-fit:cover;overflow:hidden}
.ep-profile-avatar-row{display:grid;grid-template-columns:82px minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-surface-soft,#f9fafc)}
.ep-profile-avatar-row .ep-account-avatar{width:82px;height:82px;border-radius:22px}.ep-profile-avatar-row input[type=file]{display:block;margin-top:8px}.ep-profile-avatar-row small{display:block;margin-top:5px;color:var(--ep-muted,#6d7482);font-size:12px}
.ep-profile-form textarea{width:100%;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;padding:12px 14px;background:var(--ep-card,#fff);color:var(--ep-text,#151925)}
.ep-profile-password{display:grid;gap:14px;padding:16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-surface-soft,#f9fafc)}.ep-profile-password h3{margin:0}.ep-profile-password>p{margin:-7px 0 0;color:var(--ep-muted,#6d7482);font-size:12px}
.ep-favorite-form{display:inline-flex;margin:0}.ep-favorite-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:9px 13px;border:1px solid var(--ep-line,#e8eaf0);border-radius:11px;background:var(--ep-card,#fff);color:var(--ep-text,#151925);font-weight:750;text-decoration:none;cursor:pointer}.ep-favorite-btn:hover,.ep-favorite-btn.is-saved{border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 45%,var(--ep-line,#e8eaf0));color:var(--ep-accent,#5b5ef7);background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 6%,var(--ep-card,#fff))}
.ep-account-resource-list{display:grid;gap:10px}.ep-account-resource-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--ep-line,#e8eaf0);border-radius:13px;background:var(--ep-surface-soft,#fafbfc)}.ep-account-resource-item strong,.ep-account-resource-item small{display:block}.ep-account-resource-item a{color:var(--ep-text,#151925);text-decoration:none}.ep-account-resource-item small{margin-top:4px;color:var(--ep-muted,#6d7482)}
.ep-comment-center{display:grid;gap:12px}.ep-comment-card{padding:16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-card,#fff)}.ep-comment-card__meta{display:flex;align-items:center;justify-content:space-between;gap:14px}.ep-comment-card__meta a{font-weight:800;color:var(--ep-text,#151925);text-decoration:none}.ep-comment-card__meta span,.ep-comment-replies span{color:var(--ep-muted,#6d7482);font-size:12px}.ep-comment-card__body{margin-top:9px;color:var(--ep-text,#151925);line-height:1.65}.ep-comment-card__body p{margin:0}.ep-comment-replies{margin-top:13px;padding:12px;border-radius:11px;background:var(--ep-surface-soft,#f7f8fb)}.ep-comment-replies>strong{display:block;margin-bottom:8px}.ep-comment-replies>div{padding:8px 0;border-top:1px solid var(--ep-line,#e8eaf0)}.ep-comment-replies>div:first-of-type{border-top:0}.ep-comment-replies b{margin-right:8px}.ep-comment-replies p{margin:4px 0 0;color:var(--ep-muted,#6d7482)}
.ep-comments{max-width:1180px;margin:0 auto;padding:14px 22px 64px}.ep-comments>h2{margin:0 0 18px}.ep-comment-list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:12px}.ep-comment-list .comment-body{padding:16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-card,#fff)}.ep-comment-list .comment-meta{font-size:12px}.ep-comment-list .comment-content{margin-top:10px}.ep-comments .comment-respond{padding:20px;border:1px solid var(--ep-line,#e8eaf0);border-radius:16px;background:var(--ep-card,#fff)}.ep-comments textarea{width:100%;border:1px solid var(--ep-line,#e8eaf0);border-radius:12px;padding:12px;background:var(--ep-surface-soft,#fafbfc)}
.ep-btn--disabled{opacity:.65;cursor:not-allowed}
.ep-vip-purchase-note__title{margin:0 0 9px;font-size:20px;color:var(--ep-text,#151925)}
@media(max-width:560px){.ep-profile-avatar-row{grid-template-columns:1fr}.ep-account-resource-item{align-items:flex-start;flex-direction:column}.ep-comment-card__meta{align-items:flex-start;flex-direction:column;gap:4px}}

/* v0.3.21 standalone login, mystery entrance and registration verification. */
html[data-ep-auth-page],html[data-ep-auth-page] body{margin:0!important;min-height:100%;background:var(--ep-bg,#f6f7fb)}
body.ep-auth-standalone{min-height:100vh;color:var(--ep-text,#151925);overflow-x:hidden}
body.ep-auth-standalone #wpadminbar{display:none!important}
.ep-auth-stage{--ep-auth-card-bg:color-mix(in srgb,var(--ep-card,#fff) 88%,transparent);position:relative;isolation:isolate;display:grid;place-items:center;min-height:100vh;padding:32px;background:var(--ep-bg,#f4f6fa);overflow:hidden}
.ep-auth-stage--custom{background:var(--ep-auth-custom-bg,#10131b)}
.ep-auth-stage--image,.ep-auth-stage--slideshow{background:#0c1019}
.ep-auth-background,.ep-auth-vignette{position:absolute;inset:0;z-index:-3}.ep-auth-background{background-size:cover;background-position:center}.ep-auth-vignette{z-index:-2;background:linear-gradient(120deg,rgba(8,12,21,.28),rgba(8,12,21,.08) 48%,rgba(8,12,21,.38));pointer-events:none}
.ep-auth-stage--theme .ep-auth-vignette,.ep-auth-stage--custom .ep-auth-vignette{opacity:.18}
.ep-auth-background--slides{overflow:hidden}.ep-auth-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.02);transition:opacity 1s ease,transform 7s ease}.ep-auth-slide.is-active{opacity:1;transform:scale(1)}
.ep-auth-background--slides[data-transition="zoom"] .ep-auth-slide{transform:scale(1.12)}.ep-auth-background--slides[data-transition="zoom"] .ep-auth-slide.is-active{transform:scale(1)}
.ep-auth-background--slides[data-transition="slide"] .ep-auth-slide{opacity:1;transform:translateX(100%);transition:transform .85s cubic-bezier(.2,.8,.2,1)}.ep-auth-background--slides[data-transition="slide"] .ep-auth-slide.is-active{transform:translateX(0)}.ep-auth-background--slides[data-transition="slide"] .ep-auth-slide.is-active~.ep-auth-slide{transform:translateX(100%)}
.ep-auth-shell{width:min(1120px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.8fr);min-height:660px;border:1px solid color-mix(in srgb,var(--ep-line,#e7e9ef) 70%,transparent);border-radius:30px;overflow:hidden;background:color-mix(in srgb,var(--ep-card,#fff) 78%,transparent);box-shadow:0 30px 90px rgba(8,13,25,.24);backdrop-filter:blur(18px)}
.ep-auth-stage--image .ep-auth-shell,.ep-auth-stage--slideshow .ep-auth-shell,.ep-auth-stage--custom .ep-auth-shell{background:rgba(13,18,29,.48);border-color:rgba(255,255,255,.16)}
.ep-auth-visual{position:relative;display:grid;place-items:center;padding:48px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--ep-accent,#5b5ef7) 18%,transparent),transparent 60%)}
.ep-auth-visual:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--ep-accent,#5b5ef7) 32%,transparent),transparent 68%);filter:blur(5px)}
.ep-auth-visual__inner{position:relative;z-index:1;text-align:center;width:100%}.ep-auth-visual__image{display:block;max-width:min(100%,560px);max-height:520px;width:auto;height:auto;object-fit:contain;margin:auto;filter:drop-shadow(0 18px 35px rgba(0,0,0,.18))}.ep-auth-visual__tagline{max-width:560px;margin:28px auto 0;font-size:clamp(20px,2.4vw,34px);font-weight:800;line-height:1.25;letter-spacing:-.03em;color:var(--ep-text,#151925)}
.ep-auth-stage--image .ep-auth-visual__tagline,.ep-auth-stage--slideshow .ep-auth-visual__tagline,.ep-auth-stage--custom .ep-auth-visual__tagline{color:#fff;text-shadow:0 3px 24px rgba(0,0,0,.35)}
.ep-auth-main{display:grid;place-items:center;padding:34px;background:color-mix(in srgb,var(--ep-card,#fff) 92%,transparent)}.ep-auth-card--standalone{width:min(100%,460px);max-width:none!important;margin:0;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.ep-auth-logo{display:inline-flex;margin:0 0 24px}.ep-auth-logo img{display:block;max-width:320px;max-height:100px;width:auto;height:auto;object-fit:contain}.ep-auth-card__head{margin-bottom:26px}.ep-auth-card__head .ep-kicker{display:inline-flex;margin-bottom:10px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 10%,transparent);color:var(--ep-accent,#5b5ef7);font-size:12px;font-weight:800;letter-spacing:.04em}.ep-auth-card__head h1{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.05;letter-spacing:-.04em}.ep-auth-card__head p{margin:12px 0 0;color:var(--ep-muted,#707684);line-height:1.65}
.ep-auth-shell--immersive{grid-template-columns:minmax(0,1fr) minmax(360px,460px);background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none}.ep-auth-shell--immersive .ep-auth-visual{background:transparent}.ep-auth-shell--immersive .ep-auth-main{border:1px solid rgba(255,255,255,.18);border-radius:28px;background:rgba(18,23,35,.64);box-shadow:0 26px 80px rgba(0,0,0,.28);backdrop-filter:blur(20px)}.ep-auth-shell--immersive .ep-auth-main,.ep-auth-shell--minimal .ep-auth-main{color:#fff}.ep-auth-shell--immersive .ep-auth-card__head p,.ep-auth-shell--minimal .ep-auth-card__head p{color:rgba(255,255,255,.68)}.ep-auth-shell--immersive .ep-form label>span,.ep-auth-shell--minimal .ep-form label>span{color:rgba(255,255,255,.86)}.ep-auth-shell--immersive .ep-form input,.ep-auth-shell--minimal .ep-form input{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}.ep-auth-shell--immersive .ep-form input::placeholder,.ep-auth-shell--minimal .ep-form input::placeholder{color:rgba(255,255,255,.44)}
.ep-auth-shell--minimal{display:block;width:min(520px,100%);min-height:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none}.ep-auth-shell--minimal .ep-auth-visual{display:none}.ep-auth-shell--minimal .ep-auth-main{padding:38px;border-radius:28px;background:rgba(18,23,35,.66);border:1px solid rgba(255,255,255,.16);box-shadow:0 28px 90px rgba(0,0,0,.32);backdrop-filter:blur(22px)}
.ep-auth-orbit{position:relative;width:260px;height:260px;margin:auto;border-radius:50%;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 45%,transparent);box-shadow:inset 0 0 70px color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,transparent)}.ep-auth-orbit:after,.ep-auth-orbit:before,.ep-auth-orbit i{content:"";position:absolute;border-radius:50%;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 30%,transparent)}.ep-auth-orbit:before{inset:34px}.ep-auth-orbit:after{inset:76px}.ep-auth-orbit i:nth-child(1){width:18px;height:18px;left:28px;top:86px;background:var(--ep-accent,#5b5ef7);border:0;box-shadow:0 0 28px var(--ep-accent,#5b5ef7)}.ep-auth-orbit i:nth-child(2){width:10px;height:10px;right:34px;bottom:70px;background:#55d6be;border:0}.ep-auth-orbit i:nth-child(3){inset:0;animation:epOrbit 13s linear infinite}@keyframes epOrbit{to{transform:rotate(360deg)}}
.ep-auth-verify{display:grid;gap:10px;padding:14px;border:1px solid var(--ep-line,#e7e9ef);border-radius:14px;background:color-mix(in srgb,var(--ep-card,#fff) 75%,transparent)}.ep-auth-verify__label{font-size:13px;font-weight:800}.ep-slider-verify{position:relative;display:flex;align-items:center;min-height:48px;padding:6px 12px;border-radius:12px;background:color-mix(in srgb,var(--ep-bg,#f5f6fa) 82%,transparent);overflow:hidden}.ep-slider-verify input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:.16;cursor:ew-resize}.ep-slider-verify span{position:relative;pointer-events:none;margin:auto;color:var(--ep-muted,#747b89);font-size:13px;font-weight:700}.ep-slider-verify.is-verified{background:#eaf8ef;border:1px solid #b8dec6}.ep-slider-verify.is-verified span{color:#16703a}.ep-image-captcha{display:flex;align-items:center;gap:12px}.ep-image-captcha img{width:190px;height:58px;border-radius:12px;box-shadow:0 1px 0 rgba(0,0,0,.03)}.ep-link-button{border:0;background:none;padding:4px;color:var(--ep-accent,#5b5ef7);cursor:pointer;font-weight:700}.ep-email-code-row{display:grid;grid-template-columns:1fr auto;gap:10px}.ep-email-code-send{white-space:nowrap}.ep-auth-verify small{color:var(--ep-muted,#747b89);min-height:18px}.ep-invite-note{padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,transparent);font-size:14px;line-height:1.65}.ep-invite-buy-link{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 25%,var(--ep-line,#e7e9ef));border-radius:13px;text-decoration:none;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 5%,transparent)}.ep-invite-buy-link strong{color:var(--ep-accent,#5b5ef7)}.ep-agreement-check{display:flex!important;align-items:flex-start;gap:9px}.ep-agreement-check>span{margin:0!important;font-weight:500!important;line-height:1.6}.ep-agreement-check input{margin-top:4px}.ep-agreement-check a{color:var(--ep-accent,#5b5ef7);font-weight:700}
.ep-invite-price,.ep-invite-order-status,.ep-invite-code-result{display:grid;gap:8px;margin:0 0 18px;padding:18px;border:1px solid var(--ep-line,#e7e9ef);border-radius:16px;background:color-mix(in srgb,var(--ep-card,#fff) 76%,transparent)}.ep-invite-price{grid-template-columns:1fr auto;align-items:center}.ep-invite-price strong{font-size:28px;color:var(--ep-accent,#5b5ef7)}.ep-invite-order-status{grid-template-columns:1fr auto;align-items:center}.ep-invite-order-status code{grid-column:1/-1;word-break:break-all;color:var(--ep-muted,#747b89)}.ep-invite-code-result{text-align:center}.ep-invite-code-result>strong{font-size:26px;letter-spacing:.08em;color:var(--ep-accent,#5b5ef7)}.ep-registration-agreement{max-height:58vh;overflow:auto;margin-bottom:18px;padding:18px;border:1px solid var(--ep-line,#e7e9ef);border-radius:16px;background:color-mix(in srgb,var(--ep-card,#fff) 76%,transparent);line-height:1.85}.ep-registration-agreement h2,.ep-registration-agreement h3{margin-top:1.4em}.ep-registration-agreement p{margin:.7em 0}
.ep-auth-shell--immersive .ep-auth-verify,.ep-auth-shell--minimal .ep-auth-verify,.ep-auth-shell--immersive .ep-invite-price,.ep-auth-shell--minimal .ep-invite-price,.ep-auth-shell--immersive .ep-registration-agreement,.ep-auth-shell--minimal .ep-registration-agreement{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.07)}
@media(max-width:860px){.ep-auth-stage{padding:18px}.ep-auth-shell,.ep-auth-shell--immersive{grid-template-columns:1fr;min-height:0}.ep-auth-visual{min-height:240px;padding:30px}.ep-auth-visual__image{max-height:250px}.ep-auth-main{padding:30px}.ep-auth-shell--immersive .ep-auth-visual{min-height:180px}.ep-auth-shell--immersive .ep-auth-main{border-radius:26px}.ep-auth-shell--split .ep-auth-visual__tagline{font-size:24px}}
@media(max-width:560px){.ep-auth-stage{padding:0;align-items:stretch}.ep-auth-shell,.ep-auth-shell--immersive,.ep-auth-shell--minimal{width:100%;border-radius:0;min-height:100vh}.ep-auth-shell--split .ep-auth-visual{display:none}.ep-auth-shell--immersive .ep-auth-visual{min-height:180px;padding:22px}.ep-auth-shell--immersive .ep-auth-main,.ep-auth-shell--minimal .ep-auth-main{border:0;border-radius:0;box-shadow:none;padding:26px 20px}.ep-auth-main{padding:26px 20px}.ep-auth-logo img{max-width:230px;max-height:76px}.ep-auth-card__head h1{font-size:34px}.ep-email-code-row{grid-template-columns:1fr}.ep-image-captcha{align-items:flex-start;flex-direction:column}.ep-invite-price,.ep-invite-order-status{grid-template-columns:1fr}.ep-invite-order-status code{grid-column:auto}}

/* v0.3.22 entrance visual system: style and layout are independent axes. */
.ep-auth-stage{--ep-auth-window-w:1120px;--ep-auth-window-h:660px;--ep-auth-panel-opacity:.72;--ep-auth-blur:18px}
.ep-auth-shell{width:min(var(--ep-auth-window-w),100%);min-height:var(--ep-auth-window-h)}
.ep-auth-main{backdrop-filter:blur(var(--ep-auth-blur))}
.ep-auth-stage--layout-floating .ep-auth-shell{grid-template-columns:minmax(0,1fr) minmax(340px,460px);background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none}
.ep-auth-stage--layout-floating .ep-auth-visual{background:transparent}
.ep-auth-stage--layout-floating .ep-auth-main{align-self:center;min-height:min(620px,var(--ep-auth-window-h));border:1px solid rgba(255,255,255,.18);border-radius:28px;background:rgba(18,23,35,var(--ep-auth-panel-opacity));box-shadow:0 26px 80px rgba(0,0,0,.28)}
.ep-auth-stage--layout-center .ep-auth-shell{display:block;width:min(var(--ep-auth-window-w),620px,100%);min-height:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.ep-auth-stage--layout-center .ep-auth-visual{display:none}
.ep-auth-stage--layout-center .ep-auth-main{min-height:min(var(--ep-auth-window-h),760px);padding:42px;border-radius:28px;background:rgba(18,23,35,var(--ep-auth-panel-opacity));border:1px solid rgba(255,255,255,.16);box-shadow:0 28px 90px rgba(0,0,0,.30)}
.ep-auth-stage--layout-split .ep-auth-shell{grid-template-columns:minmax(0,1.05fr) minmax(360px,.8fr)}
.ep-auth-style-decor{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}

/* Game portal: cinematic, premium, keeps the v0.3.21 feel as the default. */
.ep-auth-stage--style-game .ep-auth-vignette{background:radial-gradient(circle at 18% 40%,rgba(82,96,255,.18),transparent 32%),linear-gradient(110deg,rgba(3,7,18,.22),rgba(3,7,18,.04) 45%,rgba(3,7,18,.52))}
.ep-auth-stage--style-game .ep-auth-style-decor:before{content:"";position:absolute;inset:auto 6vw 7vh auto;width:34vw;height:1px;background:linear-gradient(90deg,transparent,rgba(124,154,255,.7),transparent);box-shadow:0 -90px 0 rgba(124,154,255,.14),0 -180px 0 rgba(124,154,255,.08)}
.ep-auth-stage--style-game .ep-auth-main{border-color:rgba(150,174,255,.22);box-shadow:0 32px 100px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.06)}
.ep-auth-stage--style-game .ep-auth-card__head h1{letter-spacing:-.045em}

/* Minimal: intentionally removes almost every surface so the background becomes the hero. */
.ep-auth-stage--style-minimal .ep-auth-vignette{background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.24))}
.ep-auth-stage--style-minimal .ep-auth-main{background:rgba(8,12,18,calc(var(--ep-auth-panel-opacity) * .34));border-color:transparent;box-shadow:none;backdrop-filter:blur(calc(var(--ep-auth-blur) * .55))}
.ep-auth-stage--style-minimal .ep-auth-card__head .ep-kicker{display:none}
.ep-auth-stage--style-minimal .ep-auth-card__head h1{font-size:clamp(28px,4vw,40px);font-weight:650;letter-spacing:-.035em}
.ep-auth-stage--style-minimal .ep-auth-card__head p{max-width:36ch}
.ep-auth-stage--style-minimal .ep-form input{border:0!important;border-bottom:1px solid rgba(255,255,255,.34)!important;border-radius:0!important;background:transparent!important;padding-left:2px!important;padding-right:2px!important;box-shadow:none!important}
.ep-auth-stage--style-minimal .ep-btn{border-radius:999px}
.ep-auth-stage--style-minimal .ep-auth-logo img{max-height:70px}

/* Clean: quiet editorial card, good for business/resource sites. */
.ep-auth-stage--style-clean .ep-auth-vignette{opacity:.08;background:linear-gradient(135deg,var(--ep-accent,#5b5ef7),transparent 38%)}
.ep-auth-stage--style-clean .ep-auth-main{background:rgba(255,255,255,var(--ep-auth-panel-opacity));color:#171b26;border-color:rgba(25,29,42,.09);box-shadow:0 24px 70px rgba(25,29,42,.12)}
.ep-auth-stage--style-clean .ep-auth-card__head p,.ep-auth-stage--style-clean .ep-auth-foot{color:#707684}
.ep-auth-stage--style-clean .ep-form label>span{color:#343946}
.ep-auth-stage--style-clean .ep-form input{background:rgba(250,251,253,.92)!important;border-color:#e5e8ee!important;color:#171b26!important}

/* Casual: soft, friendly and rounded. */
.ep-auth-stage--style-casual .ep-auth-style-decor:before,.ep-auth-stage--style-casual .ep-auth-style-decor:after{content:"";position:absolute;border-radius:50%;filter:blur(2px)}
.ep-auth-stage--style-casual .ep-auth-style-decor:before{width:34vw;height:34vw;left:-8vw;top:-12vw;background:rgba(255,190,128,.18)}
.ep-auth-stage--style-casual .ep-auth-style-decor:after{width:28vw;height:28vw;right:-4vw;bottom:-10vw;background:rgba(111,207,190,.18)}
.ep-auth-stage--style-casual .ep-auth-shell,.ep-auth-stage--style-casual .ep-auth-main{border-radius:38px}
.ep-auth-stage--style-casual .ep-auth-main{background:rgba(255,250,244,var(--ep-auth-panel-opacity));color:#312c2a;border-color:rgba(104,78,56,.10);box-shadow:0 24px 70px rgba(91,62,42,.15)}
.ep-auth-stage--style-casual .ep-form input{border-radius:18px!important}.ep-auth-stage--style-casual .ep-btn{border-radius:18px}

/* Manga: monochrome, halftone and sharp ink-like boundaries. */
.ep-auth-stage--style-manga{--ep-accent:#151515;--ep-accent2:#555}
.ep-auth-stage--style-manga .ep-auth-style-decor{background-image:radial-gradient(circle,#000 1px,transparent 1.2px);background-size:14px 14px;opacity:.07}
.ep-auth-stage--style-manga .ep-auth-main{background:rgba(255,255,255,.94);color:#111;border:3px solid #111;border-radius:3px;box-shadow:12px 12px 0 rgba(0,0,0,.72);backdrop-filter:none}
.ep-auth-stage--style-manga .ep-auth-card__head .ep-kicker{border:2px solid #111;border-radius:2px;background:#fff;color:#111}
.ep-auth-stage--style-manga .ep-form input{border:2px solid #111!important;border-radius:2px!important;background:#fff!important;color:#111!important}
.ep-auth-stage--style-manga .ep-btn{border:2px solid #111;border-radius:2px;background:#111;color:#fff;box-shadow:4px 4px 0 #888}
.ep-auth-stage--style-manga .ep-auth-visual__tagline{color:#111!important;text-shadow:none!important}

/* Anime: pastel glow and translucent soft panels, without using any copyrighted character art. */
.ep-auth-stage--style-anime .ep-auth-style-decor:before,.ep-auth-stage--style-anime .ep-auth-style-decor:after{content:"";position:absolute;border-radius:48% 52% 58% 42%;filter:blur(1px)}
.ep-auth-stage--style-anime .ep-auth-style-decor:before{width:42vw;height:42vw;left:-16vw;top:-18vw;background:linear-gradient(135deg,rgba(255,177,214,.24),rgba(164,198,255,.18))}
.ep-auth-stage--style-anime .ep-auth-style-decor:after{width:36vw;height:36vw;right:-12vw;bottom:-18vw;background:linear-gradient(135deg,rgba(155,235,232,.20),rgba(190,167,255,.22))}
.ep-auth-stage--style-anime .ep-auth-main{background:rgba(250,248,255,var(--ep-auth-panel-opacity));color:#25233c;border-color:rgba(140,124,220,.18);box-shadow:0 28px 90px rgba(91,79,155,.18)}
.ep-auth-stage--style-anime .ep-form input{border-radius:16px!important;background:rgba(255,255,255,.72)!important;color:#25233c!important;border-color:rgba(125,111,205,.18)!important}
.ep-auth-stage--style-anime .ep-btn{border-radius:999px;background:linear-gradient(135deg,#8b7dff,#ef86bd)}

/* American comic: thick outlines and offset color blocks. */
.ep-auth-stage--style-american_comic{--ep-accent:#ff384d;--ep-accent2:#2d61ff}
.ep-auth-stage--style-american_comic .ep-auth-style-decor{background:radial-gradient(circle at 20% 20%,rgba(255,221,61,.22),transparent 28%),radial-gradient(circle at 82% 76%,rgba(45,97,255,.18),transparent 26%)}
.ep-auth-stage--style-american_comic .ep-auth-main{background:rgba(255,248,211,.96);color:#111;border:4px solid #111;border-radius:8px;box-shadow:12px 12px 0 #2d61ff;backdrop-filter:none}
.ep-auth-stage--style-american_comic .ep-auth-card__head h1{text-transform:uppercase;letter-spacing:-.02em;text-shadow:2px 2px 0 #ffd93d}
.ep-auth-stage--style-american_comic .ep-form input{border:3px solid #111!important;border-radius:5px!important;background:#fff!important;color:#111!important}
.ep-auth-stage--style-american_comic .ep-btn{border:3px solid #111;border-radius:5px;background:#ff384d;box-shadow:5px 5px 0 #111}

/* Cyberpunk: neon, grid and angular cuts. */
.ep-auth-stage--style-cyberpunk{--ep-accent:#00f5ff;--ep-accent2:#ff2bd6;background-color:#05070d}
.ep-auth-stage--style-cyberpunk .ep-auth-style-decor{background-image:linear-gradient(rgba(0,245,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,245,255,.07) 1px,transparent 1px);background-size:42px 42px;perspective:400px;opacity:.55}
.ep-auth-stage--style-cyberpunk .ep-auth-vignette{background:linear-gradient(120deg,rgba(255,43,214,.16),transparent 35%,rgba(0,245,255,.14))}
.ep-auth-stage--style-cyberpunk .ep-auth-main{background:rgba(5,10,18,var(--ep-auth-panel-opacity));color:#ecffff;border:1px solid rgba(0,245,255,.52);border-radius:4px;box-shadow:0 0 36px rgba(0,245,255,.14),-10px 12px 0 rgba(255,43,214,.09);clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%)}
.ep-auth-stage--style-cyberpunk .ep-auth-card__head h1{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-shadow:0 0 18px rgba(0,245,255,.4)}
.ep-auth-stage--style-cyberpunk .ep-form input{border-radius:2px!important;background:rgba(0,245,255,.05)!important;border-color:rgba(0,245,255,.35)!important;color:#eff!important}
.ep-auth-stage--style-cyberpunk .ep-btn{border-radius:2px;background:linear-gradient(90deg,#00dce6,#974dff 60%,#ff2bd6)}

/* Glass: high transparency, low visual weight. */
.ep-auth-stage--style-glass .ep-auth-main{background:rgba(255,255,255,calc(var(--ep-auth-panel-opacity) * .42));border:1px solid rgba(255,255,255,.30);box-shadow:0 30px 100px rgba(0,0,0,.18);backdrop-filter:blur(calc(var(--ep-auth-blur) * 1.25)) saturate(135%)}
.ep-auth-stage--style-glass .ep-auth-card__head h1,.ep-auth-stage--style-glass .ep-form label>span{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.ep-auth-stage--style-glass .ep-auth-card__head p,.ep-auth-stage--style-glass .ep-auth-foot{color:rgba(255,255,255,.75)}
.ep-auth-stage--style-glass .ep-form input{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.26)!important;color:#fff!important}

@media(max-width:860px){
  .ep-auth-stage--layout-floating .ep-auth-shell,.ep-auth-stage--layout-split .ep-auth-shell{grid-template-columns:1fr}
  .ep-auth-stage--layout-floating .ep-auth-main{min-height:0}
  .ep-auth-shell{min-height:0}
}
@media(max-width:560px){
  .ep-auth-stage{--ep-auth-window-h:auto!important}
  .ep-auth-stage--layout-center .ep-auth-shell,.ep-auth-stage--layout-floating .ep-auth-shell,.ep-auth-stage--layout-split .ep-auth-shell{width:100%;border-radius:0;min-height:100vh}
  .ep-auth-stage--layout-floating .ep-auth-visual,.ep-auth-stage--layout-split .ep-auth-visual{display:none}
  .ep-auth-stage--layout-center .ep-auth-main,.ep-auth-stage--layout-floating .ep-auth-main,.ep-auth-stage--layout-split .ep-auth-main{min-height:100vh;border-radius:0;clip-path:none;box-shadow:none;padding:28px 20px}
}

/* v0.3.22: carry the selected site visual language into Core pages too. */
body.ep-site-style-minimal:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-minimal:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-minimal:not(.ep-auth-standalone) .ep-order-status-card,
body.ep-site-style-minimal:not(.ep-auth-standalone) .ep-comment-card{box-shadow:none!important;border-color:color-mix(in srgb,var(--ep-line,#e8eaf0) 72%,transparent);background:color-mix(in srgb,var(--ep-card,#fff) 92%,transparent)}
body.ep-site-style-casual:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-casual:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-casual:not(.ep-auth-standalone) .ep-comment-card{border-radius:24px;box-shadow:0 14px 34px rgba(91,62,42,.08)}
body.ep-site-style-manga:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-manga:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-manga:not(.ep-auth-standalone) .ep-order-status-card,
body.ep-site-style-manga:not(.ep-auth-standalone) .ep-comment-card{border:2px solid var(--ep-text,#151925)!important;border-radius:4px!important;box-shadow:5px 5px 0 color-mix(in srgb,var(--ep-text,#151925) 28%,transparent)!important}
body.ep-site-style-anime:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-anime:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-anime:not(.ep-auth-standalone) .ep-comment-card{border-color:color-mix(in srgb,#a995ff 24%,var(--ep-line,#e8eaf0));box-shadow:0 18px 42px rgba(105,91,178,.10)}
body.ep-site-style-american_comic:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-american_comic:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-american_comic:not(.ep-auth-standalone) .ep-order-status-card{border:3px solid var(--ep-text,#151925)!important;border-radius:8px!important;box-shadow:7px 7px 0 color-mix(in srgb,var(--ep-accent,#5b5ef7) 72%,#2d61ff)!important}
body.ep-site-style-cyberpunk:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-cyberpunk:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-cyberpunk:not(.ep-auth-standalone) .ep-order-status-card{border-color:color-mix(in srgb,#00e8f2 38%,var(--ep-line,#e8eaf0));box-shadow:0 0 24px rgba(0,232,242,.08);clip-path:polygon(0 0,97% 0,100% 7%,100% 100%,3% 100%,0 93%)}
body.ep-site-style-glass:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-glass:not(.ep-auth-standalone) .ep-vip-card,
body.ep-site-style-glass:not(.ep-auth-standalone) .ep-order-status-card,
body.ep-site-style-glass:not(.ep-auth-standalone) .ep-comment-card{background:color-mix(in srgb,var(--ep-card,#fff) 78%,transparent);backdrop-filter:blur(18px) saturate(120%);border-color:color-mix(in srgb,var(--ep-line,#e8eaf0) 55%,transparent)}
body.ep-site-style-game:not(.ep-auth-standalone) .ep-panel,
body.ep-site-style-game:not(.ep-auth-standalone) .ep-vip-card{border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 16%,var(--ep-line,#e8eaf0));box-shadow:0 20px 48px rgba(38,43,78,.10)}

/* v0.3.23 entrance accuracy, contrast, typography and invitation continuity. */
body.ep-auth-standalone,
body.ep-auth-standalone button,
body.ep-auth-standalone input,
body.ep-auth-standalone select,
body.ep-auth-standalone textarea{font-family:var(--ep-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif)}
body.ep-auth-standalone .ep-auth-card__head h1,
body.ep-auth-standalone .ep-auth-visual__tagline,
body.ep-auth-standalone .ep-btn{font-family:inherit!important}

/* Auto text contrast: media backgrounds receive a stronger vignette and readable copy. */
.ep-auth-stage{color:var(--ep-auth-fg,#111827)}
.ep-auth-stage .ep-auth-visual__tagline{color:var(--ep-auth-fg,#111827);text-shadow:0 2px 18px color-mix(in srgb,#000 34%,transparent)}
.ep-auth-stage--image .ep-auth-vignette,.ep-auth-stage--slideshow .ep-auth-vignette{background:linear-gradient(105deg,rgba(4,7,14,.62),rgba(4,7,14,.18) 48%,rgba(4,7,14,.54))}
.ep-auth-stage--image .ep-auth-visual__tagline,.ep-auth-stage--slideshow .ep-auth-visual__tagline{color:var(--ep-auth-fg,#fff)!important;text-shadow:0 3px 28px rgba(0,0,0,.72)!important}
.ep-auth-stage--style-game .ep-auth-card__head h1,
.ep-auth-stage--style-cyberpunk .ep-auth-card__head h1,
.ep-auth-stage--style-glass .ep-auth-card__head h1,
.ep-auth-stage--style-minimal .ep-auth-card__head h1{color:var(--ep-auth-fg,#fff)}
.ep-auth-stage--style-game .ep-auth-card__head p,
.ep-auth-stage--style-cyberpunk .ep-auth-card__head p,
.ep-auth-stage--style-glass .ep-auth-card__head p,
.ep-auth-stage--style-minimal .ep-auth-card__head p{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 72%,transparent)}

/* Standard login is deliberately neutral and cannot inherit the Mystery Entrance composition. */
body.ep-auth-standard .ep-auth-style-decor{opacity:.18}
body.ep-auth-standard .ep-auth-vignette{opacity:.12}
body.ep-auth-standard .ep-auth-stage--style-clean .ep-auth-main{transform:none!important;clip-path:none!important}
body.ep-auth-standard .ep-auth-stage--layout-center .ep-auth-main{min-height:0;max-width:520px;margin:auto}

/* Game portal: HUD-like floating login, stronger hero space and beveled title. */
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-shell{grid-template-columns:minmax(0,1.35fr) minmax(350px,.68fr);gap:34px;align-items:center}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main{position:relative;border-radius:8px;clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,7% 100%,0 93%)}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main:before,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main:after{content:"";position:absolute;width:70px;height:2px;background:linear-gradient(90deg,var(--ep-accent),transparent)}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main:before{left:18px;top:16px}body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main:after{right:18px;bottom:16px;transform:rotate(180deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-card__head h1{letter-spacing:.015em;text-transform:uppercase;text-shadow:0 1px 0 rgba(255,255,255,.35),0 8px 28px rgba(0,0,0,.42)}

/* Minimal: no decorative panel; the background carries the atmosphere. */
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-style-decor,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-visual{display:none!important}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-shell{width:min(430px,100%);min-height:0!important}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-main{min-height:0!important;padding:28px 18px;background:rgba(8,12,20,calc(var(--ep-auth-panel-opacity) * .34));border:0;border-radius:0;box-shadow:none;backdrop-filter:blur(calc(var(--ep-auth-blur) * .45))}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-card__head .ep-kicker{display:none}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-card__head h1{font-size:clamp(26px,3vw,36px);font-weight:650;letter-spacing:-.025em}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-form input{border:0!important;border-bottom:1px solid color-mix(in srgb,var(--ep-auth-fg,#fff) 38%,transparent)!important;border-radius:0!important;background:transparent!important;padding-left:0!important;padding-right:0!important}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-btn{border-radius:2px;background:color-mix(in srgb,var(--ep-auth-fg,#fff) 92%,transparent);color:#10131b}

/* Clean: centered editorial card with almost no decoration. */
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-auth-style-decor,
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-auth-visual{display:none!important}
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-auth-shell{width:min(560px,100%);min-height:0!important}
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-auth-main{min-height:0!important;padding:48px 44px;border-radius:22px}
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-auth-card__head{text-align:left}

/* Casual: asymmetric split, soft card and playful offset. */
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-shell{grid-template-columns:minmax(280px,.78fr) minmax(390px,1.05fr);transform:rotate(-.25deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-main{transform:translate(-10px,10px);border-radius:44px 22px 44px 22px}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-visual__image{transform:rotate(-2deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-card__head h1{letter-spacing:-.045em}

/* Manga: panel composition, ink borders and caption-like heading. */
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-shell{grid-template-columns:minmax(260px,.72fr) minmax(420px,1.18fr);gap:18px;background:transparent;border:0;box-shadow:none;overflow:visible}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-visual{border:3px solid #111;background:rgba(255,255,255,.88);box-shadow:8px 8px 0 rgba(0,0,0,.28);transform:rotate(-1.1deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-main{transform:rotate(.55deg);box-shadow:12px 12px 0 rgba(0,0,0,.72)}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-card__head h1{display:inline-block;padding:.08em .16em;border-bottom:5px solid #111;letter-spacing:-.055em}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-card__head h1:after{content:"!";display:inline-block;margin-left:.08em;transform:rotate(8deg) scale(1.12)}

/* Anime: visual moves to the right, login becomes a soft speech-card with sticker accents. */
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-shell{grid-template-columns:minmax(390px,.95fr) minmax(300px,.78fr);gap:24px;background:transparent;border:0;box-shadow:none;overflow:visible}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main{order:1;border-radius:34px 34px 34px 12px;transform:translateY(10px)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-visual{order:2;background:transparent;overflow:visible}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-visual__image{transform:translateY(10px) rotate(1.5deg);filter:drop-shadow(0 22px 32px rgba(93,74,170,.20))}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main:after{content:"✦";position:absolute;right:-18px;top:-22px;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#ffe1f0,#d9e4ff);color:#8c76db;font-size:24px;box-shadow:0 12px 30px rgba(101,82,181,.18)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-card__head h1{letter-spacing:-.045em;text-shadow:0 2px 0 rgba(255,255,255,.9)}

/* American comic: two-panel page, loud action button and offset shadows. */
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-shell{grid-template-columns:minmax(260px,.78fr) minmax(410px,1.12fr);gap:22px;background:transparent;border:0;box-shadow:none;overflow:visible;transform:rotate(-.35deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-visual{border:4px solid #111;background:rgba(255,218,64,.88);box-shadow:10px 10px 0 #111}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-main{transform:rotate(.45deg)}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-card__head h1{-webkit-text-stroke:1px #111;text-shadow:3px 3px 0 #ffd93d,5px 5px 0 rgba(45,97,255,.28)}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-btn{transform:skew(-2deg)}

/* Cyberpunk: angular sci-fi composition and metallic text effect while keeping the global font family. */
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-shell{grid-template-columns:minmax(0,1.28fr) minmax(360px,.66fr);gap:28px}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main{border-width:1px 1px 3px 1px}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card__head h1{font-family:inherit!important;letter-spacing:.055em;text-transform:uppercase;background:linear-gradient(180deg,#fff 0%,#a7cbd1 38%,#405a62 52%,#e9ffff 72%,#7dfaff 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-stroke:.35px rgba(214,255,255,.55);text-shadow:0 0 20px rgba(0,245,255,.32),4px 5px 0 rgba(255,43,214,.14)}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card__head .ep-kicker{clip-path:polygon(0 0,92% 0,100% 35%,100% 100%,8% 100%,0 66%)}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form label>span{letter-spacing:.08em;text-transform:uppercase;font-size:11px}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn{clip-path:polygon(0 0,96% 0,100% 26%,100% 100%,4% 100%,0 72%);letter-spacing:.08em;text-transform:uppercase}

/* Glass atmosphere: card floats independently and borrows background colors. */
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-shell{grid-template-columns:minmax(0,1.1fr) minmax(350px,.72fr);gap:30px}
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-main{border-radius:34px}
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-card__head h1{letter-spacing:-.04em}

/* Shared invitation path inside Mystery Entrance. */
.ep-mystery-invite-entry{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center;margin-top:18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 28%,transparent);border-radius:14px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 8%,transparent)}
.ep-mystery-invite-entry>span{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.72}.ep-mystery-invite-entry a{font-weight:800;text-decoration:none}.ep-mystery-invite-buy{justify-self:end}

@media(max-width:860px){
  body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main,body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-visual{order:initial}
  body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-main,body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-main,body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-main{transform:none}
}

/* Dark/transparent entrance styles always keep labels and helper copy readable. */
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-main{color:var(--ep-auth-fg,#fff)}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form label>span,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-form label>span,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form label>span,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-form label>span,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-row,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-row,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-row,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-row,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-foot,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-foot,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-foot,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-foot{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 78%,transparent)}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-row a,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-row a,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-row a,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-row a,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-foot a,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-foot a,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-foot a,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-foot a{color:var(--ep-auth-fg,#fff);text-decoration-color:color-mix(in srgb,var(--ep-auth-fg,#fff) 40%,transparent)}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-btn{color:var(--ep-auth-inverse,#111827)}

/* v0.3.24: stable independent Mystery Entrance panel + visual layer.
   Position controls the auth panel; the optional hero art lives on its own layer,
   so the two settings can never compete for the same grid column. */
.ep-auth-language{position:fixed;z-index:20;top:22px;right:24px;display:flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--ep-auth-fg,#fff) 24%,transparent);border-radius:999px;background:color-mix(in srgb,var(--ep-auth-inverse,#111827) 18%,transparent);backdrop-filter:blur(12px);box-shadow:0 8px 28px rgba(0,0,0,.12);font-size:12px;font-weight:800;letter-spacing:.04em}
.ep-auth-language a{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 68%,transparent);text-decoration:none;transition:.18s ease}.ep-auth-language a:hover,.ep-auth-language a.is-active{color:var(--ep-auth-fg,#fff)}.ep-auth-language a.is-active{opacity:1}.ep-auth-language span{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 36%,transparent)}

body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{display:flex!important;align-items:center!important;min-height:100vh;padding:clamp(24px,4vw,64px);overflow:hidden}
body.ep-auth-mystery-active .ep-auth-stage--position-left{justify-content:flex-start!important}
body.ep-auth-mystery-active .ep-auth-stage--position-center{justify-content:center!important}
body.ep-auth-mystery-active .ep-auth-stage--position-right{justify-content:flex-end!important}

/* The configured width/height now act on the visible login/register window itself. */
body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery .ep-auth-shell{position:relative!important;z-index:5!important;display:block!important;grid-template-columns:none!important;gap:0!important;width:min(var(--ep-auth-card-w,460px),calc(100vw - 48px))!important;min-height:var(--ep-auth-card-h,520px)!important;max-width:none!important;margin:0!important;transform:none!important;overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery .ep-auth-shell .ep-auth-main{position:relative;z-index:2;width:100%;min-height:var(--ep-auth-card-h,520px)!important;height:auto!important;margin:0!important;padding:clamp(26px,4vw,44px)!important;transform:none!important;overflow:visible;display:grid;place-items:center;backdrop-filter:blur(var(--ep-auth-blur,18px))}
body.ep-auth-mystery-active .ep-auth-card--standalone{width:100%!important;max-width:none!important}

/* Optional hero art is independent from the login panel. */
body.ep-auth-mystery-active .ep-auth-visual--independent{position:absolute!important;z-index:1!important;top:7vh;bottom:7vh;width:min(52vw,760px);min-height:0!important;padding:24px!important;display:grid;place-items:center;overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important;pointer-events:none}
body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-visual--independent{left:clamp(18px,5vw,84px);right:auto}
body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-visual--independent{right:clamp(18px,5vw,84px);left:auto}
body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-visual--independent{left:50%;right:auto;width:min(78vw,980px);transform:translateX(-50%)!important;opacity:.34}
body.ep-auth-mystery-active .ep-auth-stage--layout-split .ep-auth-visual--independent{width:min(48vw,690px)}
body.ep-auth-mystery-active .ep-auth-stage--layout-floating .ep-auth-visual--independent{width:min(58vw,860px)}
body.ep-auth-mystery-active .ep-auth-stage--layout-center .ep-auth-visual--independent{left:50%!important;right:auto!important;width:min(78vw,980px);transform:translateX(-50%)!important;opacity:.28}
body.ep-auth-mystery-active .ep-auth-visual__inner{width:100%;max-height:100%;display:grid;place-items:center;align-content:center}
body.ep-auth-mystery-active .ep-auth-visual__image{display:block;width:auto!important;height:auto!important;max-width:min(100%,720px)!important;max-height:min(72vh,760px)!important;object-fit:contain!important;margin:auto!important}
body.ep-auth-mystery-active .ep-auth-visual__tagline{max-width:560px;margin:22px auto 0;text-align:center}

/* Mystery login itself stays intentionally minimal: inputs, enter button and account-create hint. */
body.ep-auth-mystery-active.ep-auth-page--login .ep-auth-logo{display:flex;justify-content:center;margin:0 auto 24px}
body.ep-auth-mystery-active.ep-auth-page--login .ep-auth-card__head{display:none!important}
.ep-auth-login-form--minimal{display:grid;gap:14px}
.ep-auth-login-form--minimal .ep-auth-bare-input{display:block;width:100%;min-height:52px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--ep-auth-fg,#fff) 24%,transparent);border-radius:13px;background:color-mix(in srgb,#fff 10%,transparent);color:var(--ep-auth-fg,#fff);font:inherit;outline:0;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.ep-auth-login-form--minimal .ep-auth-bare-input::placeholder{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 58%,transparent)}
.ep-auth-login-form--minimal .ep-auth-bare-input:focus{border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 72%,#fff);background:color-mix(in srgb,#fff 14%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ep-accent,#5b5ef7) 15%,transparent)}
body.ep-auth-mystery-active.ep-auth-page--login .ep-auth-foot{text-align:center;margin:16px 0 0;font-size:13px}
body.ep-auth-mystery-active.ep-auth-page--login .ep-mystery-invite-entry{margin-top:14px}

/* Style-specific artwork may still feel different, but cannot shift the auth panel geometry. */
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-shell,
body.ep-auth-mystery-active .ep-auth-stage--style-glass .ep-auth-shell{grid-template-columns:none!important;gap:0!important;transform:none!important}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-main{transform:none!important}

/* Standard login also uses a stable single panel. If a hero image is configured it stays decorative. */
body.ep-auth-standard .ep-auth-stage{display:flex;justify-content:center;align-items:center}
body.ep-auth-standard .ep-auth-shell{display:block!important;grid-template-columns:none!important;width:min(460px,calc(100vw - 40px))!important;min-height:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
body.ep-auth-standard .ep-auth-main{width:100%;min-height:0!important}
body.ep-auth-standard .ep-auth-visual--independent{position:absolute;left:4vw;top:10vh;bottom:10vh;width:min(38vw,620px);display:grid;place-items:center;background:transparent!important;pointer-events:none;opacity:.88}
body.ep-auth-standard .ep-auth-visual__image{max-width:100%;max-height:70vh;object-fit:contain}

@media(max-width:900px){
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{justify-content:center!important;padding:24px}
  body.ep-auth-mystery-active .ep-auth-visual--independent{width:min(92vw,720px);left:50%!important;right:auto!important;transform:translateX(-50%)!important;opacity:.22}
  body.ep-auth-mystery-active .ep-auth-visual__tagline{display:none}
  body.ep-auth-standard .ep-auth-visual--independent{display:none!important}
}
@media(max-width:560px){
  .ep-auth-language{top:14px;right:14px}
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{padding:0;align-items:stretch!important}
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery .ep-auth-shell{width:100%!important;min-height:100vh!important}
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery .ep-auth-shell .ep-auth-main{min-height:100vh!important;border-radius:0!important;clip-path:none!important;box-shadow:none!important;padding:74px 20px 28px!important}
  body.ep-auth-mystery-active .ep-auth-visual--independent{inset:0!important;width:100%!important;height:100%!important;opacity:.16;transform:none!important}
  body.ep-auth-mystery-active .ep-auth-visual__image{max-width:92vw!important;max-height:68vh!important}
}
/* An explicitly configured hero image always remains available, even in styles
   whose default recommendation normally hides the decorative visual panel. */
body.ep-auth-mystery-active.ep-auth-has-visual-art .ep-auth-visual--independent{display:grid!important}
@media(min-width:901px){
  body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-visual--independent,
  body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-visual--independent{width:min(48vw,720px,calc(100vw - var(--ep-auth-card-w,460px) - 120px))}
  body.ep-auth-standard .ep-auth-stage--position-right{justify-content:flex-end;padding-right:clamp(28px,7vw,110px)}
  body.ep-auth-standard .ep-auth-stage--position-left{justify-content:flex-start;padding-left:clamp(28px,7vw,110px)}
}


/* v0.3.25 Mystery Entrance: public/off-state fix, equal-half placement and refined styles. */
body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:center!important;justify-items:center!important;min-height:100vh;padding:clamp(20px,3vw,54px);overflow:hidden
}
body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery .ep-auth-shell{justify-self:center!important}
body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-shell{grid-column:1!important}
body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-shell{grid-column:2!important}
body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-shell{grid-column:1 / 3!important}
body.ep-auth-mystery-active .ep-auth-visual--independent{display:none!important}

.ep-auth-mystery-tagline{margin:0 0 26px;text-align:center;font-family:var(--ep-auth-tagline-font,var(--ep-font-family))!important;font-size:var(--ep-auth-tagline-size,22px);font-weight:760;line-height:1.45;letter-spacing:.01em;color:var(--ep-auth-fg,#fff);text-shadow:0 2px 18px rgba(0,0,0,.38);white-space:normal}
body.ep-auth-mystery-active.ep-auth-page--login .ep-auth-logo + .ep-auth-mystery-tagline{margin-top:-4px}

/* Inputs reveal the background instead of painting a filled rectangle. */
body.ep-auth-mystery-active .ep-form input,
body.ep-auth-mystery-active .ep-auth-bare-input{
  min-height:58px!important;padding:15px 17px!important;background:transparent!important;
  color:var(--ep-auth-fg,#fff)!important;font-weight:680!important;letter-spacing:.015em;
  caret-color:var(--ep-accent,#5b5ef7);box-shadow:none!important
}
body.ep-auth-mystery-active .ep-form input::placeholder,
body.ep-auth-mystery-active .ep-auth-bare-input::placeholder{color:color-mix(in srgb,var(--ep-auth-fg,#fff) 48%,transparent)!important;font-weight:520}
body.ep-auth-mystery-active .ep-form input:focus,
body.ep-auth-mystery-active .ep-auth-bare-input:focus{background:transparent!important;border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 86%,#fff)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--ep-accent,#5b5ef7) 16%,transparent),0 0 24px color-mix(in srgb,var(--ep-accent,#5b5ef7) 18%,transparent)!important;text-shadow:0 0 12px color-mix(in srgb,var(--ep-accent,#5b5ef7) 42%,transparent)}
body.ep-auth-mystery-active input::selection{background:var(--ep-accent,#5b5ef7);color:#fff}

/* Minimal (the user's “至简” style): transparent but now softly rounded. */
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-main{border-radius:24px!important;border:1px solid color-mix(in srgb,var(--ep-auth-fg,#fff) 16%,transparent)!important}

/* Casual is warm, relaxed and editorial—not anime. */
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-main{
  border-radius:30px 16px 30px 16px!important;
  background:linear-gradient(145deg,rgba(255,248,234,calc(var(--ep-auth-panel-opacity)*.93)),rgba(238,224,205,calc(var(--ep-auth-panel-opacity)*.78)))!important;
  border:1px solid rgba(132,98,66,.25)!important;box-shadow:0 24px 70px rgba(76,53,35,.20),inset 0 1px 0 rgba(255,255,255,.70)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-main:before{content:"☕  SLOW & EASY";position:absolute;top:18px;right:22px;padding:6px 10px;border-radius:999px;background:rgba(132,98,66,.10);color:#7d5a3e;font-size:10px;font-weight:800;letter-spacing:.12em}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-mystery-tagline{color:#654b38!important;text-shadow:none;font-family:var(--ep-auth-tagline-font,var(--ep-font-family))!important}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-form input,
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-bare-input{color:#513c2d!important;border-color:rgba(111,82,58,.28)!important}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-form input::placeholder,
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-bare-input::placeholder{color:rgba(81,60,45,.48)!important}

/* Anime: candy-soft, extra round, dashed inner frame and playful animal stickers. */
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main{
  border-radius:42px!important;border:2px dashed rgba(255,255,255,.74)!important;
  background:linear-gradient(145deg,rgba(255,239,249,calc(var(--ep-auth-panel-opacity)*.92)),rgba(225,235,255,calc(var(--ep-auth-panel-opacity)*.88)))!important;
  box-shadow:0 28px 78px rgba(103,84,175,.24),inset 0 0 0 7px rgba(255,255,255,.28)!important;overflow:visible!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main:before{content:"🐱";position:absolute;left:-24px;top:-30px;width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:#fff7fb;border:2px dashed #d9a7d7;font-size:31px;transform:rotate(-8deg);box-shadow:0 10px 26px rgba(122,89,160,.18)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main:after{content:"🐻  ·  🐶";position:absolute;right:-20px;bottom:-20px;padding:8px 13px;border-radius:999px;background:#f8fbff;border:2px dashed #aabcf1;font-size:20px;letter-spacing:.12em;box-shadow:0 10px 26px rgba(102,111,177,.16)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-card--standalone:before{content:"✦  ♡  ✧";display:block;margin:0 auto 12px;text-align:center;color:#b57bc4;font-size:15px;letter-spacing:.55em}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-mystery-tagline{color:#6f5b94!important;text-shadow:0 2px 0 rgba(255,255,255,.9)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-form input,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-bare-input{color:#5e527c!important;border:2px dashed rgba(151,132,198,.42)!important;border-radius:20px!important}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-form input::placeholder,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-bare-input::placeholder{color:rgba(94,82,124,.48)!important}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-btn{border-radius:999px!important;background:linear-gradient(135deg,#ff9ec9,#9bb8ff)!important;box-shadow:0 10px 24px rgba(147,112,205,.28)!important}

/* Cyberpunk: layered realistic metal frame, inner rail and mechanical button. */
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main{
  border:4px solid transparent!important;border-radius:14px!important;
  background:
    linear-gradient(160deg,rgba(12,16,20,calc(var(--ep-auth-panel-opacity)*.98)),rgba(23,29,34,calc(var(--ep-auth-panel-opacity)*.96))) padding-box,
    linear-gradient(135deg,#eef4f5 0%,#727d82 14%,#22292d 26%,#bcc6c9 43%,#414a4f 58%,#e1e8e9 76%,#596469 100%) border-box!important;
  box-shadow:0 30px 90px rgba(0,0,0,.55),0 0 0 1px #0b0f12,inset 0 0 0 2px rgba(255,255,255,.10),inset 0 0 0 6px rgba(0,0,0,.34),inset 0 16px 30px rgba(255,255,255,.025)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main:before{content:"";position:absolute;inset:10px;border:1px solid rgba(181,206,212,.34);border-radius:7px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.72),0 0 16px rgba(0,239,255,.08);pointer-events:none}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main:after{content:"SYSTEM // ACCESS";position:absolute;top:13px;right:18px;color:#91a3aa;font-size:9px;font-weight:900;letter-spacing:.18em;text-shadow:0 1px 0 #000}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form input,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-bare-input{border:1px solid #65767c!important;border-radius:5px!important;color:#dffcff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(0,0,0,.80)!important}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn{
  border:2px solid #7d898e!important;border-radius:5px!important;clip-path:none!important;color:#e8eff1!important;font-weight:900!important;
  background:linear-gradient(180deg,#8c989d 0%,#4d565a 10%,#242a2d 46%,#171c1f 52%,#343c40 87%,#727d82 100%)!important;
  box-shadow:0 8px 0 #0b0e10,0 11px 20px rgba(0,0,0,.42),inset 0 2px 0 rgba(255,255,255,.28),inset 0 -2px 0 rgba(0,0,0,.78),inset 5px 0 9px rgba(255,255,255,.035)!important;
  text-shadow:0 -1px 0 #000,0 0 10px rgba(0,235,255,.18)
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn:hover{transform:translateY(-1px);filter:brightness(1.09)}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn:active{transform:translateY(5px);box-shadow:0 3px 0 #0b0e10,inset 0 2px 8px rgba(0,0,0,.75)!important}

@media(max-width:900px){
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{display:flex!important;justify-content:center!important;padding:22px}
  body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-shell,
  body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-shell,
  body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-shell{grid-column:auto!important}
}
@media(max-width:560px){
  body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main:before{left:8px;top:8px;width:44px;height:44px;font-size:22px}
  body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-main:after{right:10px;bottom:8px;font-size:15px}
}

/* v0.3.26 Mystery Entrance: external copy, single composition model and transparent-input control. */
body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{
  position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:center!important;justify-items:center!important;min-height:100vh;padding:clamp(24px,4vw,72px);overflow:hidden
}
body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-shell{grid-column:1!important;grid-row:1!important}
body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-shell{grid-column:2!important;grid-row:1!important}
body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-shell{grid-column:1 / 3!important;grid-row:1!important}
body.ep-auth-mystery-active .ep-auth-shell{width:min(var(--ep-auth-card-w,460px),calc(100vw - 44px))!important;max-width:none!important;z-index:4}

body.ep-auth-mystery-active .ep-auth-copy{
  position:relative;z-index:3;width:min(74%,680px);max-width:680px;padding:30px;
  font-family:var(--ep-auth-tagline-font,var(--ep-font-family))!important;color:var(--ep-auth-fg,#fff);
  text-shadow:0 3px 24px rgba(0,0,0,.42);white-space:normal
}
body.ep-auth-mystery-active .ep-auth-stage--position-right .ep-auth-copy{grid-column:1!important;grid-row:1!important;justify-self:center;text-align:center}
body.ep-auth-mystery-active .ep-auth-stage--position-left .ep-auth-copy{grid-column:2!important;grid-row:1!important;justify-self:center;text-align:center}
body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-copy{
  position:absolute;left:50%;top:clamp(28px,5vh,68px);transform:translateX(-50%);width:min(82vw,860px);padding:0 24px;text-align:center
}
body.ep-auth-mystery-active .ep-auth-copy__title{
  margin:0 0 16px;font-family:inherit!important;font-size:var(--ep-auth-title-size,40px);line-height:1.12;
  font-weight:900;letter-spacing:-.025em;color:inherit
}
body.ep-auth-mystery-active .ep-auth-copy__tagline{
  margin:0;font-family:inherit!important;font-size:var(--ep-auth-tagline-size,22px);line-height:1.65;
  font-weight:620;letter-spacing:.015em;color:inherit
}
/* Old in-card tagline is retired. */
body.ep-auth-mystery-active .ep-auth-mystery-tagline{display:none!important}

/* Input fill is now a real user setting. OFF is the default and reveals the background. */
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=text],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=email],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=password],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=number],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input{
  background:transparent!important;background-color:transparent!important;background-image:none!important
}
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=text],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=email],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=password],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=number],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-auth-bare-input{
  background:color-mix(in srgb,var(--ep-auth-fg,#fff) 10%,transparent)!important;background-image:none!important
}

/* Minimal: only the essential rounded input shells; everything else stays quiet and transparent. */
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-main{
  border-radius:24px!important;background:color-mix(in srgb,var(--ep-auth-custom-bg,#10131b) 22%,transparent)!important;
  box-shadow:0 20px 60px rgba(0,0,0,.12)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-form input,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-bare-input{
  border:1px solid color-mix(in srgb,var(--ep-auth-fg,#fff) 34%,transparent)!important;
  border-radius:16px!important;padding:15px 17px!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-form input:focus,
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-auth-bare-input:focus{
  border-color:color-mix(in srgb,var(--ep-accent,#5b5ef7) 82%,#fff)!important
}

/* Copy tone follows each visual language without changing the user's selected font. */
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-auth-copy{color:#6b4d37;text-shadow:0 1px 0 rgba(255,255,255,.78)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-auth-copy{color:#6d5a96;text-shadow:0 2px 0 rgba(255,255,255,.88),0 10px 30px rgba(117,93,172,.18)}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-auth-copy,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-auth-copy{color:#111;text-shadow:2px 2px 0 rgba(255,255,255,.72)}

/* v0.3.26 Cyberpunk: industrial access terminal, brushed alloy chassis and mechanical controls. */
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main{
  position:relative;border:5px solid transparent!important;border-radius:12px!important;overflow:visible!important;
  background:
    linear-gradient(165deg,rgba(11,14,16,calc(var(--ep-auth-panel-opacity)*.98)),rgba(24,29,32,calc(var(--ep-auth-panel-opacity)*.98))) padding-box,
    linear-gradient(125deg,#1b2023 0%,#8c969a 8%,#e3e8e9 13%,#5b6468 20%,#161b1e 31%,#aab3b6 43%,#323a3e 56%,#d9dfe0 71%,#626c70 83%,#171c1f 100%) border-box!important;
  box-shadow:
    0 34px 100px rgba(0,0,0,.62),0 0 0 2px #07090a,
    inset 0 0 0 2px rgba(255,255,255,.08),inset 0 0 0 8px rgba(0,0,0,.46),inset 0 24px 48px rgba(255,255,255,.018)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main:before{
  content:"";position:absolute;inset:12px;z-index:0;pointer-events:none;border:2px solid #596468;border-radius:6px;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px);
  box-shadow:0 0 0 1px #0a0d0e,inset 0 0 0 2px rgba(255,255,255,.035),inset 0 0 26px rgba(0,0,0,.62)
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-main:after{
  content:"EP // ACCESS TERMINAL";position:absolute;z-index:5;left:28px;top:-14px;padding:5px 14px 4px;
  border:1px solid #9aa4a8;border-bottom-color:#22282b;border-radius:4px;color:#dbe3e5;
  background:linear-gradient(180deg,#727d81 0%,#363d40 48%,#1b2022 52%,#50595d 100%);
  box-shadow:0 4px 0 #080a0b,inset 0 1px 0 rgba(255,255,255,.34);font-size:9px;font-weight:900;letter-spacing:.22em;text-shadow:0 -1px 0 #000
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card{position:relative;z-index:2;background:transparent!important}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card:before,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card:after{
  content:"";position:absolute;top:0;width:9px;height:9px;border-radius:50%;z-index:4;
  background:radial-gradient(circle at 38% 35%,#e6ecee 0 8%,#6c7579 24%,#22282b 58%,#080a0b 100%);
  box-shadow:0 0 0 1px #000,0 calc(var(--ep-auth-card-h,520px) - 74px) 0 #41494d
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card:before{left:0}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-card:after{right:0}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form label>span{color:#b7c1c4!important;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form input,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-bare-input{
  color:#e6eff1!important;border:2px solid #707b7f!important;border-radius:6px!important;
  box-shadow:0 0 0 1px #0b0e0f,inset 0 2px 0 rgba(255,255,255,.08),inset 0 -3px 8px rgba(0,0,0,.58)!important;
  text-shadow:0 0 12px rgba(141,236,255,.20)
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-form input:focus,
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-bare-input:focus{
  border-color:#b4c0c4!important;box-shadow:0 0 0 1px #111719,inset 0 2px 0 rgba(255,255,255,.13),inset 0 -3px 8px rgba(0,0,0,.62),0 0 18px rgba(108,220,235,.12)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn{
  position:relative;border:2px solid #929da1!important;border-radius:7px!important;clip-path:none!important;
  color:#e9eef0!important;font-weight:950!important;letter-spacing:.10em;
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px),
    linear-gradient(180deg,#8b969a 0%,#4a5256 8%,#272d30 42%,#151a1c 50%,#31383b 83%,#707b7f 100%)!important;
  box-shadow:0 7px 0 #080a0b,0 11px 22px rgba(0,0,0,.48),inset 0 2px 0 rgba(255,255,255,.28),inset 0 -3px 0 rgba(0,0,0,.70),inset 8px 0 14px rgba(255,255,255,.025)!important;
  text-shadow:0 -1px 0 #000,0 1px 0 rgba(255,255,255,.10);transition:transform .12s ease,filter .12s ease,box-shadow .12s ease
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn:before{
  content:"";position:absolute;inset:5px;border:1px solid rgba(220,232,235,.14);border-radius:3px;pointer-events:none
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-btn:active{
  transform:translateY(5px);box-shadow:0 2px 0 #080a0b,0 5px 10px rgba(0,0,0,.38),inset 0 3px 9px rgba(0,0,0,.78)!important;filter:brightness(.94)
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-copy__title{
  color:#dce4e6;background:linear-gradient(180deg,#f1f5f6 0%,#8d989c 43%,#3d464a 54%,#d7dfe1 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 0 #050607) drop-shadow(0 8px 18px rgba(0,0,0,.42));letter-spacing:.055em
}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk .ep-auth-copy__tagline{color:#aeb9bc;text-shadow:0 2px 12px rgba(0,0,0,.7)}

@media(max-width:900px){
  body.ep-auth-mystery-active .ep-auth-stage.ep-auth-stage--mystery{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:24px;padding:72px 22px 28px;overflow:auto}
  body.ep-auth-mystery-active .ep-auth-copy,
  body.ep-auth-mystery-active .ep-auth-stage--position-center .ep-auth-copy{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:min(100%,680px)!important;padding:0 12px!important;order:0;text-align:center!important}
  body.ep-auth-mystery-active .ep-auth-shell{order:1;width:min(var(--ep-auth-card-w,460px),100%)!important}
  body.ep-auth-mystery-active .ep-auth-copy__title{font-size:clamp(26px,var(--ep-auth-title-size,40px),52px)}
}

/* v0.3.27: activation-first entrance and definitive transparent input behavior. */
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=text],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=email],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=password],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=number],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-box-shadow:none!important;
  background-clip:padding-box!important;
}
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill:hover,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:-webkit-autofill{
  -webkit-text-fill-color:var(--ep-auth-fg,#fff)!important;
  caret-color:var(--ep-auth-fg,#fff)!important;
  background-color:transparent!important;
  background-image:none!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-box-shadow:0 0 0 1000px transparent inset!important;
  box-shadow:0 0 0 1000px transparent inset!important;
  transition:background-color 99999s ease-out 0s!important;
}
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=text],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=email],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=password],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-form input[type=number],
body.ep-auth-mystery-active.ep-auth-input-fill-on .ep-auth-bare-input{
  background:color-mix(in srgb,var(--ep-auth-fg,#fff) 12%,transparent)!important;
  background-color:color-mix(in srgb,var(--ep-auth-fg,#fff) 12%,transparent)!important;
  background-image:none!important;
}
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:focus{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--ep-accent,#5b5ef7) 18%,transparent)!important;
}

.ep-activation-gate-form{display:grid;gap:14px}.ep-activation-gate-form .ep-auth-bare-input{text-align:center;letter-spacing:.08em;text-transform:uppercase}
.ep-activation-gate-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:18px;font-size:12px;line-height:1.6}
.ep-activation-gate-links a{color:inherit;text-decoration:none;opacity:.72;border-bottom:1px solid color-mix(in srgb,currentColor 32%,transparent)}
.ep-activation-gate-links a:hover{opacity:1}
.ep-activation-verified{display:flex;gap:12px;align-items:center;padding:13px 15px;border:1px solid color-mix(in srgb,var(--ep-accent,#5b5ef7) 30%,transparent);border-radius:14px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,transparent)}
.ep-activation-verified>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ep-accent,#5b5ef7);color:#fff;font-weight:900}.ep-activation-verified b,.ep-activation-verified small{display:block}.ep-activation-verified small{margin-top:3px;opacity:.68}

/* v0.3.28 registration balance, compact image captcha and collision-free centered Mystery Entrance. */
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-shell{
  width:min(max(var(--ep-auth-card-w,460px),620px),calc(100vw - 48px))!important;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-main{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:0!important;
  padding:32px 36px!important;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-card--standalone,
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px 16px!important;
  align-items:start;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>label{
  min-width:0;margin:0!important;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-auth-verify,
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-agreement-check,
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-btn{
  grid-column:1/-1!important;
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-foot{
  text-align:center;margin-top:14px!important;
}

@media(min-width:901px){
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-stage--position-center{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:26px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding:clamp(34px,6vh,74px) 24px 48px!important;
  }
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-stage--position-center .ep-auth-copy{
    position:relative!important;
    left:auto!important;top:auto!important;transform:none!important;
    flex:0 0 auto!important;width:min(82vw,860px)!important;
    margin:0!important;padding:0 24px!important;text-align:center!important;
  }
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-stage--position-center .ep-auth-shell{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;
    transform:none!important;flex:0 0 auto!important;margin:0!important;
  }
}

/* Compact image verification: one dense verification row instead of a large block. */
.ep-auth-verify--image{padding:10px 12px!important;gap:7px!important}
.ep-auth-verify--image .ep-auth-verify__label{margin:0!important;font-size:12px!important}
.ep-image-captcha-compact{display:grid;grid-template-columns:auto minmax(120px,1fr);gap:10px;align-items:center;min-width:0}
.ep-image-captcha{display:flex!important;align-items:center!important;gap:7px!important;min-width:0}
.ep-image-captcha img{width:128px!important;height:42px!important;border-radius:9px!important;object-fit:cover}
.ep-image-captcha .ep-link-button{padding:2px 3px!important;font-size:12px!important;white-space:nowrap}
.ep-image-captcha-answer{min-width:0!important;width:100%!important;height:42px!important;padding:8px 11px!important}

@media(max-width:640px){
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-shell{width:min(var(--ep-auth-card-w,460px),calc(100vw - 28px))!important}
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-main{padding:26px 20px!important}
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form{grid-template-columns:1fr!important;gap:13px!important}
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>label,
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-auth-verify,
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-agreement-check,
  body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-btn{grid-column:1!important}
  .ep-image-captcha-compact{grid-template-columns:1fr!important;gap:8px!important}
  .ep-image-captcha{justify-content:space-between!important}
  .ep-image-captcha img{width:136px!important;height:44px!important}
}


/* v0.3.29: focused Mystery registration + native normal-auth modal. */
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-copy{display:none!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-stage.ep-auth-stage--mystery{
  display:flex!important;align-items:center!important;justify-content:center!important;overflow:auto!important;padding:48px 20px!important
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-shell{
  position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;
  width:min(var(--ep-auth-card-w,460px),calc(100vw - 32px))!important;max-width:520px!important;margin:auto!important
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-main{padding:28px 30px!important;min-height:0!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form{
  display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>*{grid-column:1!important;min-width:0!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form label{margin:0!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-register-form>.ep-btn{
  width:min(100%,280px)!important;justify-self:center!important;margin-top:4px!important
}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-card__head{margin-bottom:18px!important;text-align:center}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-card__head .ep-kicker{display:none!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-card__head h1{font-size:24px!important;margin:0!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-verify{margin:0!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-verify--image{padding:8px 10px!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-image-captcha-compact{grid-template-columns:112px minmax(0,1fr)!important;gap:8px!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-image-captcha img{width:104px!important;height:36px!important;border-radius:8px!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-image-captcha .ep-link-button{font-size:11px!important}
body.ep-auth-mystery-active.ep-auth-page--register .ep-image-captcha-answer{height:38px!important}

.ep-auth-modal[hidden]{display:none!important}.ep-auth-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:22px}
.ep-auth-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(8,11,18,.58);backdrop-filter:blur(7px);cursor:default}
.ep-auth-modal__dialog{position:relative;z-index:1;width:min(440px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 40px));overflow:auto;box-sizing:border-box;padding:26px;border:1px solid var(--ep-border,rgba(127,127,127,.22));border-radius:22px;background:var(--ep-card,#fff);color:var(--ep-text,#111827);box-shadow:0 30px 90px rgba(0,0,0,.28)}
.ep-auth-modal__close{position:absolute;right:14px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:25px;line-height:1;cursor:pointer;opacity:.62}.ep-auth-modal__close:hover{opacity:1;background:rgba(127,127,127,.10)}
.ep-auth-modal__tabs{display:flex;gap:8px;padding-right:42px;margin-bottom:22px}.ep-auth-modal__tabs button{border:0;background:transparent;color:inherit;padding:9px 14px;border-radius:11px;font-weight:700;cursor:pointer;opacity:.58}.ep-auth-modal__tabs button.is-active{opacity:1;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,transparent);color:var(--ep-accent,#5b5ef7)}
.ep-auth-modal__status{margin:0 0 14px;padding:10px 12px;border-radius:12px;font-size:13px}.ep-auth-modal__status.is-error{background:#fff1f2;color:#be123c}.ep-auth-modal__status.is-success{background:#ecfdf5;color:#047857}
.ep-auth-modal-form{display:grid;gap:13px}.ep-auth-modal-form>label:not(.ep-check){display:grid;gap:6px}.ep-auth-modal-form>label>span{font-size:12px;font-weight:700;opacity:.72}.ep-auth-modal-form input[type=text],.ep-auth-modal-form input[type=email],.ep-auth-modal-form input[type=password]{width:100%;box-sizing:border-box;height:44px;border:1px solid var(--ep-border,rgba(127,127,127,.25));border-radius:12px;background:transparent;color:inherit;padding:0 13px;outline:0}.ep-auth-modal-form input:focus{border-color:var(--ep-accent,#5b5ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--ep-accent,#5b5ef7) 13%,transparent)}
.ep-auth-modal-form .ep-auth-verify{margin:0!important}.ep-auth-modal-form .ep-agreement-check{font-size:12px}.ep-auth-modal__foot{text-align:center;font-size:12px;opacity:.72;margin:16px 0 0}.ep-auth-modal__foot button{border:0;background:none;color:var(--ep-accent,#5b5ef7);padding:0;cursor:pointer;font:inherit;font-weight:700}.ep-auth-modal__dialog .ep-btn--wide{width:100%}
@media(max-width:560px){.ep-auth-modal{padding:12px}.ep-auth-modal__dialog{width:100%;max-height:calc(100vh - 24px);padding:22px 18px;border-radius:18px}body.ep-auth-mystery-active.ep-auth-page--register .ep-auth-main{padding:24px 18px!important}.ep-image-captcha-compact{grid-template-columns:1fr!important}}


/* v0.3.30: activation purchase actions are business UI, not style-dependent decoration. */
body.ep-auth-mystery-active .ep-activation-gate-links{
  position:relative!important;z-index:8!important;display:flex!important;align-items:center!important;justify-content:center!important;
  flex-wrap:wrap!important;gap:10px 12px!important;margin-top:18px!important;color:var(--ep-auth-fg,#f7f9ff)!important
}
body.ep-auth-mystery-active .ep-activation-gate-links a{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;
  padding:7px 11px!important;border:1px solid color-mix(in srgb,currentColor 24%,transparent)!important;border-radius:999px!important;
  background:color-mix(in srgb,#07101d 34%,transparent)!important;color:inherit!important;opacity:1!important;
  text-decoration:none!important;line-height:1.25!important;box-shadow:0 6px 18px rgba(0,0,0,.10)!important;
  backdrop-filter:blur(8px)!important
}
body.ep-auth-mystery-active .ep-activation-gate-links .ep-activation-buy-link{font-weight:850!important}
body.ep-auth-mystery-active .ep-activation-gate-links .ep-activation-buy-link:before{content:"＋";margin-right:5px;font-weight:900}
body.ep-auth-mystery-active .ep-activation-gate-links a:hover{transform:translateY(-1px);filter:brightness(1.08)}

/* Light entrance styles need their own readable action color instead of inheriting the global light mystery text. */
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-activation-gate-links,
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-activation-gate-links,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-activation-gate-links,
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-activation-gate-links,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-activation-gate-links{
  color:#243047!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-activation-gate-links{color:#5a402e!important}
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-activation-gate-links{color:#65557f!important}
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-activation-gate-links{color:#171717!important}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-activation-gate-links{color:#141b2b!important}
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-activation-gate-links a,
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-activation-gate-links a,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-activation-gate-links a,
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-activation-gate-links a,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-activation-gate-links a{
  background:rgba(255,255,255,.48)!important;box-shadow:0 6px 18px rgba(30,40,60,.08)!important
}

/* Game portal: keep the access console readable even over a white/bright background image. */
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-main{
  color:#f4f7ff!important;
  background:linear-gradient(145deg,rgba(5,10,22,calc(var(--ep-auth-panel-opacity)*.96)),rgba(15,23,42,calc(var(--ep-auth-panel-opacity)*.90)))!important;
  border:1px solid rgba(150,178,255,.30)!important;
  box-shadow:0 28px 86px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 0 1px rgba(82,116,220,.12)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form input[type=text],
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form input[type=email],
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form input[type=password],
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-bare-input{
  color:#f7f9ff!important;border-color:rgba(159,185,255,.42)!important;
  -webkit-text-fill-color:#f7f9ff!important;text-shadow:0 1px 10px rgba(58,116,255,.18)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form input::placeholder,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-bare-input::placeholder{color:rgba(225,233,255,.58)!important}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-auth-bare-input:focus,
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-form input:focus{
  border-color:#90adff!important;box-shadow:0 0 0 2px rgba(91,126,247,.22),0 0 26px rgba(91,126,247,.15)!important
}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-activation-gate-links{color:#eef3ff!important}
body.ep-auth-mystery-active .ep-auth-stage--style-game .ep-activation-gate-links a{background:rgba(7,14,31,.54)!important}


/* v0.3.31: definitive Mystery Entrance input transparency + contrast. */
body.ep-auth-mystery-active .ep-auth-stage--style-game{--ep-auth-input-fg:#f7f9ff;--ep-auth-input-placeholder:rgba(225,233,255,.58)}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal{--ep-auth-input-fg:#ffffff;--ep-auth-input-placeholder:rgba(255,255,255,.58)}
body.ep-auth-mystery-active .ep-auth-stage--style-clean{--ep-auth-input-fg:#172033;--ep-auth-input-placeholder:rgba(23,32,51,.52)}
body.ep-auth-mystery-active .ep-auth-stage--style-casual{--ep-auth-input-fg:#3e3028;--ep-auth-input-placeholder:rgba(62,48,40,.50)}
body.ep-auth-mystery-active .ep-auth-stage--style-manga{--ep-auth-input-fg:#111111;--ep-auth-input-placeholder:rgba(17,17,17,.48)}
body.ep-auth-mystery-active .ep-auth-stage--style-anime{--ep-auth-input-fg:#342c55;--ep-auth-input-placeholder:rgba(52,44,85,.50)}
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic{--ep-auth-input-fg:#111827;--ep-auth-input-placeholder:rgba(17,24,39,.50)}
body.ep-auth-mystery-active .ep-auth-stage--style-cyberpunk{--ep-auth-input-fg:#edffff;--ep-auth-input-placeholder:rgba(218,255,255,.58)}
body.ep-auth-mystery-active .ep-auth-stage--style-glass{--ep-auth-input-fg:#ffffff;--ep-auth-input-placeholder:rgba(255,255,255,.58)}

body.ep-auth-mystery-active .ep-form input[type=text],
body.ep-auth-mystery-active .ep-form input[type=email],
body.ep-auth-mystery-active .ep-form input[type=password],
body.ep-auth-mystery-active .ep-form input[type=number],
body.ep-auth-mystery-active .ep-form input[type=search],
body.ep-auth-mystery-active .ep-form input[type=tel],
body.ep-auth-mystery-active .ep-form input[type=url],
body.ep-auth-mystery-active .ep-auth-bare-input{
  color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff))!important;
  -webkit-text-fill-color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff))!important;
  caret-color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff))!important;
  text-shadow:0 1px 8px color-mix(in srgb,var(--ep-auth-input-fg,var(--ep-auth-fg,#fff)) 10%,transparent)!important;
}
body.ep-auth-mystery-active .ep-form input::placeholder,
body.ep-auth-mystery-active .ep-auth-bare-input::placeholder{
  color:var(--ep-auth-input-placeholder,color-mix(in srgb,var(--ep-auth-input-fg,var(--ep-auth-fg,#fff)) 54%,transparent))!important;
  -webkit-text-fill-color:var(--ep-auth-input-placeholder,color-mix(in srgb,var(--ep-auth-input-fg,var(--ep-auth-fg,#fff)) 54%,transparent))!important;
  opacity:1!important;
}

/* When fill is OFF, every visual style must stay genuinely hollow. These final rules intentionally beat style-specific white/pastel fills. */
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=text],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=email],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=password],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=number],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=search],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=tel],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=url],
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-box-shadow:none!important;
}
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=text]:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=email]:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=password]:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input[type=number]:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:focus{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--ep-accent,#5b5ef7) 22%,transparent)!important;
}
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill:hover,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-form input:-webkit-autofill:focus,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:-webkit-autofill,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:-webkit-autofill:hover,
body.ep-auth-mystery-active.ep-auth-input-fill-off .ep-auth-bare-input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff))!important;
  caret-color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff))!important;
  -webkit-box-shadow:0 0 0 1000px transparent inset!important;
  box-shadow:0 0 0 1000px transparent inset!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  transition:background-color 99999s ease-out 0s!important;
}

/* Invite-only small inner-frame label. */
body.ep-auth-mystery-active .ep-mystery-panel-label{display:flex;align-items:center;justify-content:center;margin:0 0 16px;text-align:center}
body.ep-auth-mystery-active .ep-mystery-panel-label span{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:5px 12px;border:1px solid color-mix(in srgb,var(--ep-auth-input-fg,var(--ep-auth-fg,#fff)) 22%,transparent);border-radius:999px;background:color-mix(in srgb,var(--ep-auth-input-fg,var(--ep-auth-fg,#fff)) 7%,transparent);color:var(--ep-auth-input-fg,var(--ep-auth-fg,#fff));font-size:12px;font-weight:750;line-height:1.2;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;backdrop-filter:blur(8px)}
body.ep-auth-mystery-active .ep-auth-stage--style-clean .ep-mystery-panel-label span,
body.ep-auth-mystery-active .ep-auth-stage--style-casual .ep-mystery-panel-label span,
body.ep-auth-mystery-active .ep-auth-stage--style-manga .ep-mystery-panel-label span,
body.ep-auth-mystery-active .ep-auth-stage--style-anime .ep-mystery-panel-label span,
body.ep-auth-mystery-active .ep-auth-stage--style-american_comic .ep-mystery-panel-label span{background:rgba(255,255,255,.34)}

/* Minimal style: frosted, translucent Enter/Continue button instead of a solid pill. */
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-btn{
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.07))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 10px 28px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(14px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(135%)!important;
  text-shadow:0 1px 10px rgba(0,0,0,.24)!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}
body.ep-auth-mystery-active .ep-auth-stage--style-minimal .ep-btn:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(255,255,255,.48)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.10))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 14px 34px rgba(0,0,0,.18)!important;
}

/* v0.3.33 native resource checkout modal */
.ep-purchase-modal[hidden]{display:none!important}.ep-purchase-modal{position:fixed;inset:0;z-index:100001;display:grid;place-items:center;padding:22px}
.ep-purchase-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(8,11,18,.62);backdrop-filter:blur(8px);cursor:default}
.ep-purchase-modal__dialog{position:relative;z-index:1;width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;padding:28px;border:1px solid var(--ep-line,#e8eaf0);border-radius:22px;background:var(--ep-card,#fff);color:var(--ep-text,#151925);box-shadow:0 32px 100px rgba(0,0,0,.32)}
.ep-purchase-modal__close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:26px;line-height:1;cursor:pointer;opacity:.65}.ep-purchase-modal__close:hover{opacity:1;background:color-mix(in srgb,var(--ep-text,#151925) 8%,transparent)}
.ep-purchase-modal__head{padding-right:44px;margin-bottom:22px}.ep-purchase-modal__head>span{display:block;color:var(--ep-accent,#5b5ef7);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ep-purchase-modal__head h2{margin:5px 0 7px;font-size:24px;line-height:1.3}.ep-purchase-modal__head strong{font-size:28px;color:var(--ep-accent,#5b5ef7)}
.ep-purchase-modal__form{display:grid;gap:16px}.ep-purchase-modal__fallback{text-align:center;margin:16px 0 0;font-size:12px}.ep-purchase-modal__fallback a{color:var(--ep-muted,#6d7482);text-decoration:none}.ep-purchase-modal__fallback a:hover{color:var(--ep-accent,#5b5ef7)}
@media(max-width:560px){.ep-purchase-modal{padding:12px}.ep-purchase-modal__dialog{width:100%;max-height:calc(100vh - 24px);padding:24px 18px;border-radius:18px}}

/* v0.3.34 account-center online recharge */
.ep-account-recharge{display:grid;gap:22px}.ep-account-recharge__head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.ep-account-recharge__head h2{margin:4px 0 6px}.ep-account-recharge__head p{margin:0;color:var(--ep-muted,#6d7482)}.ep-account-recharge__balance{min-width:190px;padding:14px 16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;background:var(--ep-surface-soft,#f9fafc);text-align:right}.ep-account-recharge__balance span{display:block;font-size:12px;color:var(--ep-muted,#6d7482)}.ep-account-recharge__balance strong{display:block;margin-top:2px;font-size:22px;color:var(--ep-accent,#5b5ef7)}.ep-account-recharge__form{max-width:760px}.ep-account-recharge__rewards{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ep-account-recharge__rewards>strong{width:100%;font-size:13px}.ep-account-recharge__rewards>span{padding:7px 10px;border-radius:999px;background:var(--ep-surface-soft,#f9fafc);border:1px solid var(--ep-line,#e8eaf0);font-size:12px;color:var(--ep-muted,#6d7482)}
@media(max-width:700px){.ep-account-recharge__head{display:grid}.ep-account-recharge__balance{min-width:0;text-align:left}}

/* v0.3.36 multi-source delivery chooser */
.ep-delivery-modal[hidden]{display:none!important}.ep-delivery-modal{position:fixed;inset:0;z-index:100003;display:grid;place-items:center;padding:20px}.ep-delivery-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(7,10,17,.68);backdrop-filter:blur(9px)}.ep-delivery-modal__dialog{position:relative;z-index:1;width:min(560px,calc(100vw - 30px));max-height:calc(100vh - 36px);overflow:auto;padding:26px;border:1px solid var(--ep-line,#e8eaf0);border-radius:22px;background:var(--ep-card,#fff);color:var(--ep-text,#151925);box-shadow:0 30px 100px rgba(0,0,0,.35)}.ep-delivery-modal__dialog h2{margin:0 48px 18px 0;font-size:23px}.ep-delivery-modal__close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:26px;cursor:pointer}.ep-delivery-source-list{display:grid;gap:10px}.ep-delivery-source{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;border:1px solid var(--ep-line,#e8eaf0);border-radius:14px;color:var(--ep-text,#151925);text-decoration:none;background:color-mix(in srgb,var(--ep-card,#fff) 94%,var(--ep-accent,#5b5ef7) 6%);transition:.16s ease}.ep-delivery-source:hover{border-color:var(--ep-accent,#5b5ef7);transform:translateY(-1px)}.ep-delivery-source span,.ep-delivery-source strong,.ep-delivery-source small{display:block}.ep-delivery-source small{margin-top:4px;color:var(--ep-muted,#6d7482)}.ep-delivery-source code{margin-left:4px;color:var(--ep-accent,#5b5ef7);font-weight:800}.ep-delivery-source>b{font-size:20px;color:var(--ep-accent,#5b5ef7)}


/* v0.3.37 download chooser: separate navigation from copyable access code. */
.ep-delivery-modal__hint{margin:-10px 0 16px;color:var(--ep-muted,#6d7482);font-size:13px}.ep-delivery-source{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 15px!important}.ep-delivery-source:hover{transform:none!important}.ep-delivery-source__main{min-width:0}.ep-delivery-source__main>strong{font-size:15px}.ep-delivery-code{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px}.ep-delivery-code>span{font-size:12px;color:var(--ep-muted,#6d7482)}.ep-delivery-code code{display:inline-flex!important;align-items:center;min-height:29px;margin:0!important;padding:3px 8px;border:1px dashed color-mix(in srgb,var(--ep-accent,#5b5ef7) 42%,var(--ep-line,#e8eaf0));border-radius:8px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,transparent);color:var(--ep-text,#151925)!important;font-size:14px;user-select:all}.ep-delivery-copy{min-height:29px;padding:3px 9px;border:1px solid var(--ep-line,#e8eaf0);border-radius:8px;background:var(--ep-card,#fff);color:var(--ep-accent,#5b5ef7);font-weight:800;font-size:12px;cursor:pointer}.ep-delivery-copy:hover,.ep-delivery-copy.is-copied{border-color:var(--ep-accent,#5b5ef7);background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 8%,var(--ep-card,#fff))}.ep-delivery-open-link{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:9px 12px;border-radius:10px;background:var(--ep-accent,#5b5ef7);color:#fff;text-decoration:none;font-weight:800}.ep-delivery-open-link:hover{filter:brightness(1.04)}.ep-purchase-modal__prices{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.ep-purchase-modal__prices strong{font-size:24px}.ep-purchase-modal__prices .ep-purchase-modal__points{font-size:18px;color:var(--ep-text,#151925)}
@media(max-width:520px){.ep-delivery-source{grid-template-columns:1fr!important}.ep-delivery-open-link{justify-content:center;width:100%}}

/* v0.3.40: compact download-source chooser based on real field lengths. */
.ep-delivery-modal__dialog{width:min(650px,calc(100vw - 30px))}
.ep-delivery-source{grid-template-columns:minmax(110px,150px) minmax(150px,1fr) auto!important;gap:10px 14px!important;align-items:center!important}
.ep-delivery-source__main{display:contents}
.ep-delivery-source__main>strong{font-size:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ep-delivery-code{margin-top:0!important;display:flex!important;flex-wrap:nowrap!important;min-width:0}
.ep-delivery-code code{min-width:58px;justify-content:center;user-select:all}
.ep-delivery-open-link{padding:8px 11px!important}
@media(max-width:620px){
 .ep-delivery-source{grid-template-columns:minmax(100px,1fr) auto!important}
 .ep-delivery-source__main{display:contents}
 .ep-delivery-code{grid-column:1/-1;justify-content:flex-start}
 .ep-delivery-open-link{grid-column:2;grid-row:1}
}
@media(max-width:420px){
 .ep-delivery-source{grid-template-columns:1fr!important}
 .ep-delivery-source__main{display:contents}
 .ep-delivery-code,.ep-delivery-open-link{grid-column:auto!important;grid-row:auto!important}
 .ep-delivery-open-link{width:100%;justify-content:center}
}
.ep-delivery-source__name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ep-delivery-code--empty{font-size:12px;color:var(--ep-muted,#6d7482);white-space:nowrap}

/* v0.3.59 affiliate program */
.ep-affiliate-account{display:grid;gap:18px}.ep-affiliate-hero{display:flex;align-items:center;justify-content:space-between;gap:22px}.ep-affiliate-hero h2{margin:4px 0 6px}.ep-affiliate-hero p{margin:0;color:var(--ep-muted,#6d7482)}.ep-affiliate-code{display:inline-flex;padding:9px 12px;border:1px solid var(--ep-line,#e8eaf0);border-radius:999px;background:var(--ep-surface-soft,#f7f8fb);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:800;letter-spacing:.08em}.ep-affiliate-copy{display:flex;gap:10px;align-items:center}.ep-affiliate-copy input{min-width:0;flex:1;width:100%;padding:11px 13px;border:1px solid var(--ep-line,#e8eaf0);border-radius:10px;background:var(--ep-surface-soft,#f8f9fb);color:var(--ep-text,#151925)}.ep-affiliate-payout{display:grid;gap:14px}.ep-affiliate-withdraw-form{display:grid;grid-template-columns:minmax(220px,360px) auto;gap:12px;align-items:end}.ep-affiliate-withdraw-form label{display:grid;gap:6px}.ep-affiliate-withdraw-form input{width:100%}.ep-affiliate-withdraw-form small{grid-column:1/-1;color:var(--ep-muted,#6d7482)}.ep-affiliate-stats{margin:0}.ep-affiliate-account .ep-muted{color:var(--ep-muted,#6d7482)}.ep-btn--small{padding:7px 10px;font-size:12px}
@media(max-width:700px){.ep-affiliate-hero{display:grid}.ep-affiliate-copy{display:grid}.ep-affiliate-withdraw-form{grid-template-columns:1fr}.ep-affiliate-withdraw-form small{grid-column:auto}}

/* v0.3.61: VIP lives inside My Account and is intentionally prominent. */
.ep-account-nav__links .ep-account-nav__vip-link{margin:3px 0 5px;background:linear-gradient(135deg,color-mix(in srgb,#f5b93f 13%,var(--ep-card,#fff)),color-mix(in srgb,var(--ep-accent,#5b5ef7) 7%,var(--ep-card,#fff)));border:1px solid color-mix(in srgb,#d99b22 28%,var(--ep-line,#e8eaf0));color:color-mix(in srgb,#9a6500 78%,var(--ep-text,#151925))!important}
.ep-account-nav__links .ep-account-nav__vip-link:hover,.ep-account-nav__links .ep-account-nav__vip-link.is-active{background:linear-gradient(135deg,color-mix(in srgb,#f5b93f 21%,var(--ep-card,#fff)),color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,var(--ep-card,#fff)));border-color:color-mix(in srgb,#d99b22 48%,var(--ep-line,#e8eaf0));color:color-mix(in srgb,#8a5900 84%,var(--ep-text,#151925))!important}
.ep-account-nav__vip-badge{display:inline-grid;place-items:center;min-width:32px;height:19px;margin-right:7px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#f5c451,#d99b22);color:#4f3300;font-size:10px;letter-spacing:.06em;vertical-align:1px;box-shadow:0 4px 10px rgba(217,155,34,.18)}
.ep-account-membership{display:grid;gap:18px}.ep-account-membership__hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:24px;align-items:center;background:linear-gradient(135deg,color-mix(in srgb,#f5b93f 8%,var(--ep-card,#fff)),color-mix(in srgb,var(--ep-accent,#5b5ef7) 6%,var(--ep-card,#fff)))!important}.ep-account-membership__hero h2{font-size:28px;margin:4px 0 7px}.ep-account-membership__hero p{margin:0;color:var(--ep-muted,#6d7482);line-height:1.65}.ep-account-membership__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ep-account-membership__summary>div{padding:12px 13px;border:1px solid var(--ep-line,#e8eaf0);border-radius:13px;background:color-mix(in srgb,var(--ep-card,#fff) 86%,transparent)}.ep-account-membership__summary span,.ep-account-membership__summary small{display:block;color:var(--ep-muted,#6d7482);font-size:11px}.ep-account-membership__summary strong{display:block;margin:3px 0;font-size:17px}.ep-account-membership__summary a{display:inline-block;margin-top:3px;font-size:12px;font-weight:750;color:var(--ep-accent,#5b5ef7);text-decoration:none}.ep-vip-grid--account{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.ep-vip-grid--account .ep-vip-card{padding:21px}.ep-vip-grid--account .ep-vip-card.is-recommended{transform:none}.ep-vip-grid--account .ep-vip-card.is-recommended:hover{transform:translateY(-3px)}.ep-vip-card.is-current{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ep-accent,#5b5ef7) 42%,transparent)}.ep-vip-current-badge{position:absolute;right:14px;top:14px;display:inline-flex;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--ep-accent,#5b5ef7) 12%,var(--ep-card,#fff));color:var(--ep-accent,#5b5ef7);font-size:11px;font-weight:800}.ep-vip-purchase-note--account{margin-top:0}
@media(max-width:900px){.ep-account-membership__hero{grid-template-columns:1fr}.ep-vip-grid--account{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.ep-vip-grid--account,.ep-account-membership__summary{grid-template-columns:1fr}.ep-account-membership__hero h2{font-size:24px}}

/* v0.3.62 affiliate WeChat QR binding. */
.ep-affiliate-wechat-qr{display:flex;align-items:center;gap:18px;margin:16px 0;padding:16px;border:1px solid var(--ep-line);border-radius:16px;background:var(--ep-bg)}
.ep-affiliate-wechat-qr__code{flex:0 0 196px;min-height:196px;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:12px;background:#fff}
.ep-affiliate-wechat-qr__code img,.ep-affiliate-wechat-qr__code canvas{display:block;max-width:180px;height:auto}
.ep-affiliate-wechat-qr__copy{display:grid;gap:8px;min-width:0}.ep-affiliate-wechat-qr__copy strong{font-size:16px}.ep-affiliate-wechat-qr__copy span{color:var(--ep-text);font-weight:700}.ep-affiliate-wechat-qr__copy small{max-width:520px;color:var(--ep-muted);line-height:1.65}
@media(max-width:680px){.ep-affiliate-wechat-qr{align-items:flex-start;flex-direction:column}.ep-affiliate-wechat-qr__code{align-self:center}}
