.wm-auth-page{
    width:min(100%, 1100px);
    margin:0 auto;
    padding:18px 0 8px;
    color:#f5f5f5;
}
.wm-auth-page--narrow{width:min(100%, 860px);}
.wm-auth-box{
    background:linear-gradient(90deg, rgba(33,37,43,.96), rgba(30,34,40,.95));
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    padding:34px 40px 38px;
    box-shadow:none;
    position:relative;
}
.wm-auth-box::before{
    content:"";
    width:14px;
    height:14px;
    border-radius:50%;
    background:#d5d8db;
    position:absolute;
    left:18px;
    top:18px;
}
.wm-auth-alert{
    margin:0 0 18px;
    padding:12px 14px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:6px;
    font-size:15px;
}
.wm-auth-alert--error{background:rgba(180,55,75,.18);color:#ffdadd;border-color:rgba(255,120,145,.24)}
.wm-auth-alert--success{background:rgba(40,130,90,.18);color:#e3ffef;border-color:rgba(115,255,190,.22)}
.wm-auth-form{display:block;}
.wm-auth-fields{display:grid;gap:22px;}
.wm-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 36px;}
.wm-auth-label{
    display:block;
    font-size:17px;
    line-height:1.25;
    color:#f5f5f5;
    margin:0 0 12px;
}
.wm-auth-input,
.wm-auth-select{
    width:100%;
    height:56px;
    padding:0 18px;
    background:rgba(8,10,14,.14) !important;
    border:1px solid rgba(190,196,205,.34);
    border-radius:0;
    color:#f2f2f2;
    font-size:17px;
    outline:none;
    box-shadow:none;
}
.wm-auth-input::placeholder{color:rgba(255,255,255,.52)}
.wm-auth-input:focus,
.wm-auth-select:focus{border-color:rgba(255,255,255,.72)}
.wm-auth-password{position:relative;}
.wm-auth-toggle{
    position:absolute;
    right:18px;
    top:50%;
    transform:translateY(-50%);
    border:0;
    background:transparent;
    color:#d8d8d8;
    font-size:14px;
    cursor:pointer;
    padding:0;
}
.wm-auth-link-row,
.wm-auth-bottom-links{
    display:flex;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
}
.wm-auth-link,
.wm-auth-bottom-links a{
    color:var(--tg-theme-primary, #00d0ff);
    text-decoration:none;
    font-size:16px;
}
.wm-auth-link:hover,
.wm-auth-bottom-links a:hover{color:var(--tg-theme-primary, #00d0ff);opacity:.85;text-decoration:none}
.wm-auth-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:16px;
    margin-top:20px;
}
.wm-auth-actions--center{justify-content:center;}
.wm-auth-btn{
    min-width:182px;
    min-height:52px;
    padding:0 22px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.85);
    background:transparent;
    color:#f5f5f5;
    font-size:18px;
    line-height:1;
    cursor:pointer;
}
.wm-auth-btn--wide{min-width:0;width:min(100%, 560px);}
.wm-auth-note{
    margin-top:14px;
    color:#d7d7d7;
    font-size:15px;
    line-height:1.55;
}
.wm-auth-note strong{color:#fff;}
.wm-auth-captcha-slot{margin:18px 0 8px;display:flex;justify-content:flex-start}
.wm-auth-captcha-box{
    width:378px;
    height:92px;
    background:#f1efef;
    border-radius:3px;
    display:grid;
    grid-template-columns:34px 1fr auto;
    align-items:center;
    gap:16px;
    padding:0 18px;
    color:#202124;
}
.wm-auth-captcha-check{
    width:28px;
    height:28px;
    border:2px solid #707070;
    background:#fff;
    display:block;
}
.wm-auth-captcha-text{font-size:18px;line-height:1.2}
.wm-auth-captcha-brand{font-size:12px;color:#5f6368;justify-self:end}
.wm-auth-title{
    display:flex;
    align-items:flex-start;
    gap:12px;
    font-size:22px;
    line-height:1.15;
    font-weight:700;
    margin:0 0 20px;
}
.wm-auth-title--big{font-size:26px;line-height:1.12;font-weight:800}
.wm-auth-divider{border-top:1px solid rgba(255,255,255,.16);margin:18px 0 22px}
.wm-auth-example{
    margin-top:8px;
    color:var(--tg-theme-primary, #00d0ff);
    font-size:16px;
}
.wm-auth-section-label{
    font-size:18px;
    color:#f3f3f3;
    margin:0 0 16px;
}
.wm-auth-server-copy{
    margin-top:10px;
    color:var(--tg-theme-primary, #00d0ff);
    font-size:18px;
    line-height:1.45;
    max-width:520px;
}
.wm-auth-select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, rgba(255,255,255,.7) 50%),linear-gradient(135deg, rgba(255,255,255,.7) 50%, transparent 50%);background-position:calc(100% - 22px) 28px,calc(100% - 14px) 28px;background-size:8px 8px,8px 8px;background-repeat:no-repeat;padding-right:44px}
.wm-auth-table{
    width:100%;
    border-collapse:collapse;
    margin:0 0 12px;
}
.wm-auth-table td{
    border:1px solid rgba(255,255,255,.1);
    padding:14px 10px;
    font-size:16px;
    line-height:1.25;
    color:#f0f0f0;
}
.wm-auth-terms{
    display:flex;
    align-items:flex-start;
    gap:12px;
    font-size:18px;
    line-height:1.4;
    margin-top:10px;
}
.wm-auth-terms input{
    width:18px;
    height:18px;
    margin-top:4px;
}
.wm-auth-inline-hint{margin-top:8px;color:var(--tg-theme-primary, #00ff7a);font-size:14px}
.wm-auth-local-block{margin-top:20px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:rgba(255,255,255,.03)}
.wm-auth-local-block a{color:var(--tg-theme-primary, #00d0ff);word-break:break-all}
.wm-auth-login .wm-auth-fields{max-width:100%;}
@media (max-width: 920px){
    .wm-auth-page,
    .wm-auth-page--narrow{width:100%;}
    .wm-auth-box{padding:40px 24px 34px;}
    .wm-auth-grid{grid-template-columns:1fr;gap:22px;}
    .wm-auth-btn{width:100%;min-width:0;}
    .wm-auth-actions,
    .wm-auth-actions--center{justify-content:stretch;flex-direction:column;align-items:stretch;}
    .wm-auth-captcha-box{width:100%;max-width:378px;}
    .wm-auth-title--big{font-size:30px;}
}

.wm-auth-box--login{padding:28px 32px 34px;}
.wm-auth-box--login .wm-auth-fields{gap:18px;}
.wm-auth-login .wm-auth-label{font-size:19px;margin-bottom:10px;}
.wm-auth-login .wm-auth-input{height:54px;font-size:17px;background:rgba(8,10,14,.16) !important;}
.wm-auth-login .wm-auth-actions{margin-top:12px;}
.wm-auth-box--recover{padding:34px 40px 40px;}
.wm-auth-box--register{padding:34px 34px 38px;}
.wm-auth-box--register .wm-auth-grid{gap:22px 28px;}
.wm-auth-box--register .wm-auth-table td{padding:12px 10px;font-size:15px;}
.wm-auth-box--register .wm-auth-divider{margin:16px 0 18px;}
.wm-auth-box--register .wm-auth-title--big{font-size:24px;line-height:1.15;}
.wm-auth-input,
.wm-auth-select,
.wm-auth-password .wm-auth-input{color:#f2f2f2 !important;box-shadow:none !important;}
.wm-auth-input:-webkit-autofill,
.wm-auth-input:-webkit-autofill:hover,
.wm-auth-input:-webkit-autofill:focus,
.wm-auth-select:-webkit-autofill{
    -webkit-text-fill-color:#f2f2f2 !important;
    -webkit-box-shadow:0 0 0 1000px rgba(20,24,30,.92) inset !important;
    transition:background-color 9999s ease-in-out 0s;
}
@media (max-width: 920px){
    .wm-auth-box--login,.wm-auth-box--recover,.wm-auth-box--register{padding:28px 20px 30px;}
    .wm-auth-login .wm-auth-label{font-size:18px;}
    .wm-auth-box--register .wm-auth-title--big{font-size:22px;}
}


/* Fase 23: auth modules follow theme tokens instead of fixed gray/green */
body[data-wm-theme="nyxcms_base"] .wm-auth-page,
body[data-wm-theme="nyxcms_base"] .wm-auth-page *{
    box-sizing:border-box;
}
body[data-wm-theme="nyxcms_base"] .wm-auth-page{
    color:var(--wm-text, #f4f7fb);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-box{
    background:linear-gradient(180deg, color-mix(in srgb, var(--wm-surface, #111922) 96%, transparent), color-mix(in srgb, var(--wm-bg, #060b10) 12%, var(--wm-surface, #111922)));
    border:1px solid var(--wm-border, rgba(255,255,255,.12));
    border-radius:var(--wm-radius-lg, 18px);
    box-shadow:0 18px 48px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-box::before{
    background:var(--wm-accent, #ff5a66);
    box-shadow:0 0 0 6px color-mix(in srgb, var(--wm-accent, #ff5a66) 14%, transparent);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-title,
body[data-wm-theme="nyxcms_base"] .wm-auth-section-label,
body[data-wm-theme="nyxcms_base"] .wm-auth-label,
body[data-wm-theme="nyxcms_base"] .wm-auth-terms,
body[data-wm-theme="nyxcms_base"] .wm-auth-table td{
    color:var(--wm-text, #f4f7fb);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-note,
body[data-wm-theme="nyxcms_base"] .wm-auth-server-copy,
body[data-wm-theme="nyxcms_base"] .wm-auth-inline-hint{
    color:var(--wm-muted, rgba(244,247,251,.72));
}
body[data-wm-theme="nyxcms_base"] .wm-auth-input,
body[data-wm-theme="nyxcms_base"] .wm-auth-select,
body[data-wm-theme="nyxcms_base"] .wm-auth-password .wm-auth-input{
    height:50px;
    border-radius:var(--wm-radius-sm, 10px);
    border:1px solid var(--wm-border, rgba(255,255,255,.12));
    background:rgba(255,255,255,.035) !important;
    color:var(--wm-text, #f4f7fb) !important;
}
body[data-wm-theme="nyxcms_base"] .wm-auth-input:focus,
body[data-wm-theme="nyxcms_base"] .wm-auth-select:focus{
    border-color:color-mix(in srgb, var(--wm-accent, #ff5a66) 60%, var(--wm-border, rgba(255,255,255,.12)));
    box-shadow:0 0 0 3px color-mix(in srgb, var(--wm-accent, #ff5a66) 14%, transparent) !important;
}
body[data-wm-theme="nyxcms_base"] .wm-auth-link,
body[data-wm-theme="nyxcms_base"] .wm-auth-bottom-links a,
body[data-wm-theme="nyxcms_base"] .wm-auth-local-block a{
    color:var(--wm-accent, #ff5a66);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-btn{
    border-color:color-mix(in srgb, var(--wm-accent, #ff5a66) 65%, var(--wm-border, rgba(255,255,255,.12)));
    background:color-mix(in srgb, var(--wm-accent, #ff5a66) 15%, transparent);
    color:var(--wm-text, #f4f7fb);
    font-weight:800;
}
body[data-wm-theme="nyxcms_base"] .wm-auth-btn:hover,
body[data-wm-theme="nyxcms_base"] .wm-auth-btn:focus-visible{
    background:var(--wm-accent, #ff5a66);
    color:var(--wm-accent-text, #fff);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-table td,
body[data-wm-theme="nyxcms_base"] .wm-auth-divider,
body[data-wm-theme="nyxcms_base"] .wm-auth-local-block{
    border-color:var(--wm-border, rgba(255,255,255,.12));
}
body[data-wm-theme="nyxcms_base"] .wm-auth-alert--success{
    background:color-mix(in srgb, var(--wm-accent, #ff5a66) 13%, transparent);
    border-color:color-mix(in srgb, var(--wm-accent, #ff5a66) 35%, transparent);
    color:var(--wm-text, #f4f7fb);
}
body[data-wm-theme="nyxcms_base"] .wm-auth-toggle{
    color:var(--wm-accent, #ff5a66);
    font-weight:800;
}
body[data-wm-theme="nyxcms_base"] .wm-auth-select option{
    background:var(--wm-surface, #111922);
    color:var(--wm-text, #f4f7fb);
}
@media (max-width:920px){
    body[data-wm-theme="nyxcms_base"] .wm-auth-box{padding:26px 18px 28px;}
}

/* Fase 44C: styled verification/result messages */
.page-container{
    width:min(100%, 980px);
    margin:0 auto;
    padding:32px 0 18px;
    color:var(--wm-text, #f4f7fb);
}
.page-container .page-title{
    margin:0 0 18px;
    padding:0;
    border:0;
}
.page-container .page-title span{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-family:var(--tg-heading-font-family, inherit);
    font-size:clamp(28px, 3vw, 42px);
    line-height:1.05;
    font-weight:900;
    color:var(--wm-text, #fff);
    text-transform:none;
}
.page-container .page-title span::before{
    content:"";
    width:14px;
    height:14px;
    border-radius:50%;
    background:var(--wm-accent, var(--tg-theme-primary, #45f882));
    box-shadow:0 0 0 6px rgba(var(--wm-accent-rgb, 69,248,130), .12);
    flex:0 0 auto;
}
.page-container .page-content{
    background:linear-gradient(180deg, color-mix(in srgb, var(--wm-surface, #111922) 94%, transparent), color-mix(in srgb, var(--wm-bg, #060b10) 18%, var(--wm-surface, #111922)));
    border:1px solid var(--wm-border, rgba(255,255,255,.12));
    border-radius:var(--wm-radius-lg, 18px);
    padding:26px 28px;
    box-shadow:0 18px 48px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025);
}
.page-container .alert{
    margin:0;
    padding:18px 20px;
    border-radius:var(--wm-radius, 14px);
    border:1px solid var(--wm-border, rgba(255,255,255,.12));
    background:rgba(255,255,255,.035);
    color:var(--wm-text, #fff);
    font-size:17px;
    line-height:1.55;
}
.page-container .alert-success{
    border-color:rgba(var(--wm-accent-rgb, 69,248,130), .38);
    background:rgba(var(--wm-accent-rgb, 69,248,130), .12);
    color:var(--wm-text, #fff);
}
.page-container .alert-danger{
    border-color:rgba(255,90,102,.38);
    background:rgba(255,90,102,.12);
    color:#ffdfe4;
}
.page-container .alert-warning{
    border-color:rgba(255,189,89,.38);
    background:rgba(255,189,89,.12);
    color:#ffe7bd;
}
.page-container .alert-info{
    border-color:rgba(80,160,255,.38);
    background:rgba(80,160,255,.12);
    color:#e4f1ff;
}
.page-container .alert strong{
    color:inherit;
}
.wm-auth-local-block,
.wm-auth-alert{
    border-radius:var(--wm-radius, 14px);
}
.wm-auth-alert--success{
    background:rgba(var(--wm-accent-rgb, 69,248,130), .12);
    border-color:rgba(var(--wm-accent-rgb, 69,248,130), .34);
    color:var(--wm-text, #fff);
}
@media(max-width: 720px){
    .page-container{padding:20px 0 10px;}
    .page-container .page-content{padding:20px 16px;}
    .page-container .page-title span{font-size:26px;}
}

/* Fase 44D: real auth/verify result cards */
.wm-auth-result{
    width:min(100%, 880px);
    margin:0 auto;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:20px;
    padding:30px 32px;
    background:linear-gradient(180deg, color-mix(in srgb, var(--wm-surface, #111922) 96%, transparent), color-mix(in srgb, var(--wm-bg, #060b10) 14%, var(--wm-surface, #111922)));
    border:1px solid var(--wm-border, rgba(255,255,255,.12));
    border-radius:var(--wm-radius-lg, 18px);
    box-shadow:0 18px 48px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.025);
    color:var(--wm-text,#fff);
}
.wm-auth-result__icon{
    width:58px;
    height:58px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(var(--wm-accent-rgb, 255,90,102), .14);
    border:1px solid rgba(var(--wm-accent-rgb, 255,90,102), .38);
    color:var(--wm-accent,#ff5a66);
    font-size:28px;
    font-weight:900;
    line-height:1;
}
.wm-auth-result--success .wm-auth-result__icon{
    background:rgba(var(--wm-accent-rgb, 255,90,102), .16);
    border-color:rgba(var(--wm-accent-rgb, 255,90,102), .42);
    color:var(--wm-accent,#ff5a66);
}
.wm-auth-result--error .wm-auth-result__icon{
    background:rgba(255,90,102,.14);
    border-color:rgba(255,90,102,.38);
    color:#ff6b78;
}
.wm-auth-result__kicker{
    display:block;
    margin-bottom:6px;
    color:var(--wm-muted,rgba(255,255,255,.68));
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.wm-auth-result h2{
    margin:0 0 8px;
    font-family:var(--tg-heading-font-family,inherit);
    font-size:clamp(26px,2.8vw,40px);
    line-height:1.05;
    color:var(--wm-text,#fff);
    text-transform:none;
}
.wm-auth-result p{
    margin:0;
    color:var(--wm-muted,rgba(255,255,255,.72));
    font-size:17px;
    line-height:1.65;
}
.wm-auth-result__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
}
.wm-auth-result__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border-radius:var(--wm-radius-sm,10px);
    border:1px solid rgba(var(--wm-accent-rgb, 255,90,102), .48);
    background:var(--wm-accent,#ff5a66);
    color:var(--wm-accent-text,#fff);
    font-weight:900;
    text-decoration:none;
}
.wm-auth-result__btn:hover{color:var(--wm-accent-text,#fff);filter:brightness(1.04);text-decoration:none}
.wm-auth-result__btn.is-secondary{
    background:rgba(255,255,255,.04);
    border-color:var(--wm-border, rgba(255,255,255,.12));
    color:var(--wm-text,#fff);
}
.wm-auth-result__btn.is-secondary:hover{
    border-color:rgba(var(--wm-accent-rgb, 255,90,102), .42);
    color:var(--wm-accent,#ff5a66);
    filter:none;
}
.wm-auth-box .wm-auth-alert + .wm-auth-result,
.wm-auth-page .wm-auth-result + .wm-auth-box{margin-top:18px;}
.wm-auth-box--result{
    max-width:900px;
    margin:0 auto;
}
@media(max-width:720px){
    .wm-auth-result{grid-template-columns:1fr;padding:24px 18px;text-align:left;}
    .wm-auth-result__icon{width:50px;height:50px;font-size:24px;}
    .wm-auth-result__actions{flex-direction:column;}
    .wm-auth-result__btn{width:100%;}
}


/* Fase 45 - Auth option 2: two-column premium layout + theme tokens */
.wm-auth-page{
    --wm-auth-bg: var(--wm-bg, #080b10);
    --wm-auth-surface: var(--wm-surface, rgba(18,22,30,.92));
    --wm-auth-surface-2: var(--wm-surface-strong, rgba(255,255,255,.055));
    --wm-auth-border: var(--wm-border, rgba(255,255,255,.12));
    --wm-auth-text: var(--wm-text, #f6f7fb);
    --wm-auth-muted: var(--wm-muted, rgba(255,255,255,.68));
    --wm-auth-accent: var(--wm-accent, var(--tg-theme-primary, #ff5f5f));
    --wm-auth-accent-rgb: var(--wm-accent-rgb, 255,95,95);
    --wm-auth-accent-text: var(--wm-accent-text, #101010);
    width:min(100%, 1180px)!important;
    margin:0 auto!important;
    padding:22px 0 12px!important;
    color:var(--wm-auth-text)!important;
}
.wm-auth-page--narrow{width:min(100%, 1080px)!important;}
.wm-auth-box,
.wm-auth-result{
    border-color:var(--wm-auth-border)!important;
    background:linear-gradient(180deg, color-mix(in srgb, var(--wm-auth-surface) 94%, transparent), color-mix(in srgb, var(--wm-auth-bg) 22%, var(--wm-auth-surface)))!important;
    border-radius:22px!important;
    box-shadow:0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04)!important;
    overflow:hidden!important;
}
.wm-auth-box::before{display:none!important;}
.wm-auth-box--login,
.wm-auth-box--recover,
.wm-auth-box--register{
    max-width:1180px!important;
    display:grid!important;
    grid-template-columns:minmax(300px,.85fr) minmax(0,1fr)!important;
    gap:0!important;
    padding:0!important;
    min-height:520px;
}
.wm-auth-box--recover{min-height:440px;}
.wm-auth-box--login::after,
.wm-auth-box--recover::after,
.wm-auth-box--register::after{
    content:"NyxCMS 2.0\A Tu centro de cuenta Mu Online\A Gestiona tu acceso, seguridad, market, vault y recompensas desde un panel moderno.";
    white-space:pre-line;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-height:100%;
    padding:34px;
    color:#fff;
    font-size:15px;
    line-height:1.65;
    font-weight:600;
    background:
      linear-gradient(180deg, rgba(var(--wm-auth-accent-rgb),.04), rgba(var(--wm-auth-accent-rgb),.24)),
      radial-gradient(circle at 28% 18%, rgba(var(--wm-auth-accent-rgb),.34), transparent 34%),
      linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
    border-right:1px solid var(--wm-auth-border);
    grid-column:1;
    grid-row:1 / span 12;
}
.wm-auth-box--register::after{
    content:"CREAR CUENTA\A Empieza tu aventura\A Regístrate, verifica tu correo y accede a todos los sistemas web del servidor.";
}
.wm-auth-box--recover::after{
    content:"RECUPERAR ACCESO\A Seguridad primero\A Te enviaremos un enlace seguro para crear una nueva contraseña. Nunca enviamos contraseñas por correo.";
}
.wm-auth-box > *:not(style):not(script){grid-column:2;min-width:0;}
.wm-auth-box > .wm-auth-alert:first-child{margin:28px 32px 0!important;}
.wm-auth-box--login .wm-auth-form,
.wm-auth-box--recover .wm-auth-form,
.wm-auth-box--register .wm-auth-form{
    padding:34px 36px 38px!important;
    align-self:center;
}
.wm-auth-box--register .wm-auth-form{padding-top:22px!important;align-self:start;}
.wm-auth-box--register > .wm-auth-title,
.wm-auth-box--register > .wm-auth-table,
.wm-auth-box--register > .wm-auth-divider,
.wm-auth-box--register > div:not(.wm-auth-alert):not(.wm-auth-form):not(.wm-auth-result){
    margin-left:36px!important;
    margin-right:36px!important;
}
.wm-auth-box--register > .wm-auth-title{margin-top:30px!important;margin-bottom:14px!important;}
.wm-auth-table{background:rgba(255,255,255,.025)!important;border-radius:16px!important;overflow:hidden!important;}
.wm-auth-table td{border-color:var(--wm-auth-border)!important;color:var(--wm-auth-text)!important;font-size:14px!important;padding:10px 12px!important;}
.wm-auth-divider{border-color:var(--wm-auth-border)!important;}
.wm-auth-label,
.wm-auth-title,
.wm-auth-title--big,
.wm-auth-terms,
.wm-auth-section-label{color:var(--wm-auth-text)!important;}
.wm-auth-note,
.wm-auth-example,
.wm-auth-server-copy{color:var(--wm-auth-muted)!important;}
.wm-auth-input,
.wm-auth-select{
    background:rgba(255,255,255,.045)!important;
    border:1px solid var(--wm-auth-border)!important;
    border-radius:14px!important;
    color:var(--wm-auth-text)!important;
    height:52px!important;
}
.wm-auth-input:focus,
.wm-auth-select:focus{
    border-color:rgba(var(--wm-auth-accent-rgb),.62)!important;
    box-shadow:0 0 0 3px rgba(var(--wm-auth-accent-rgb),.12)!important;
}
.wm-auth-toggle{color:var(--wm-auth-muted)!important;}
.wm-auth-btn,
.wm-auth-result__btn{
    border:1px solid rgba(var(--wm-auth-accent-rgb),.78)!important;
    background:var(--wm-auth-accent)!important;
    color:var(--wm-auth-accent-text)!important;
    border-radius:14px!important;
    font-weight:900!important;
    text-decoration:none!important;
}
.wm-auth-btn:hover,
.wm-auth-result__btn:hover{filter:brightness(1.04);color:var(--wm-auth-accent-text)!important;}
.wm-auth-result__btn.is-secondary,
.wm-auth-btn.is-secondary{
    background:rgba(255,255,255,.055)!important;
    color:var(--wm-auth-text)!important;
    border-color:var(--wm-auth-border)!important;
}
.wm-auth-link,
.wm-auth-bottom-links a,
.wm-auth-local-block a{color:var(--wm-auth-accent)!important;}
.wm-auth-alert{
    border-radius:14px!important;
    border-color:var(--wm-auth-border)!important;
}
.wm-auth-alert--success{background:rgba(var(--wm-auth-accent-rgb),.11)!important;color:var(--wm-auth-text)!important;}
.wm-auth-alert--error{background:rgba(255,90,102,.12)!important;color:#ffdce2!important;}
.wm-auth-result{
    width:min(100%, 860px);
    margin:0 auto;
    padding:34px!important;
    display:grid;
    grid-template-columns:74px minmax(0,1fr);
    gap:22px;
    align-items:start;
}
.wm-auth-result__icon{
    width:74px;height:74px;border-radius:22px;
    display:flex;align-items:center;justify-content:center;
    background:var(--wm-auth-accent)!important;
    color:var(--wm-auth-accent-text)!important;
    font-size:34px;font-weight:900;
}
.wm-auth-result__kicker{display:block;color:var(--wm-auth-accent)!important;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;}
.wm-auth-result h2{margin:0 0 8px;color:var(--wm-auth-text)!important;font-size:30px;line-height:1.05;}
.wm-auth-result p{color:var(--wm-auth-muted)!important;line-height:1.65;}
.wm-auth-result__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;}
.wm-auth-local-block{border-color:var(--wm-auth-border)!important;background:rgba(255,255,255,.035)!important;border-radius:14px!important;}
.wm-auth-grid{gap:18px 22px!important;}
.wm-auth-captcha-slot{margin-top:6px!important;}
@media (max-width: 980px){
    .wm-auth-box--login,
    .wm-auth-box--recover,
    .wm-auth-box--register{display:block!important;min-height:0!important;}
    .wm-auth-box--login::after,
    .wm-auth-box--recover::after,
    .wm-auth-box--register::after{display:none!important;}
    .wm-auth-box--login .wm-auth-form,
    .wm-auth-box--recover .wm-auth-form,
    .wm-auth-box--register .wm-auth-form{padding:28px 22px 30px!important;}
    .wm-auth-box--register > .wm-auth-title,
    .wm-auth-box--register > .wm-auth-table,
    .wm-auth-box--register > .wm-auth-divider,
    .wm-auth-box--register > div:not(.wm-auth-alert):not(.wm-auth-form):not(.wm-auth-result){margin-left:22px!important;margin-right:22px!important;}
    .wm-auth-result{grid-template-columns:1fr;text-align:center;justify-items:center;padding:28px 22px!important;}
    .wm-auth-result__actions{justify-content:center;}
}


/* Fase 45B - auth layout polish: fixed gift table, dark selects and better visual side */
.wm-auth-box--login,
.wm-auth-box--recover,
.wm-auth-box--register{
    grid-template-columns:minmax(320px,.9fr) minmax(0,1.15fr)!important;
}
.wm-auth-box--login::after,
.wm-auth-box--recover::after,
.wm-auth-box--register::after{
    background:
      linear-gradient(180deg, rgba(0,0,0,.28), rgba(0,0,0,.72)),
      radial-gradient(circle at 20% 10%, rgba(var(--wm-auth-accent-rgb),.28), transparent 35%),
      url('../../shared/backgrounds/account-cover.webp') center/cover no-repeat !important;
    border-right:1px solid var(--wm-auth-border)!important;
    padding:40px 34px!important;
    font-size:15px!important;
    line-height:1.65!important;
    letter-spacing:.01em!important;
}
.wm-auth-box--login::after{
    content:"ACCESO SEGURO\A Vuelve al campo de batalla\A Entra a tu cuenta para administrar personajes, vault, market, recompensas y seguridad desde NyxCMS."!important;
}
.wm-auth-box--register::after{
    content:"NUEVA CUENTA\A Comienza tu aventura\A Crea tu cuenta, verifica tu correo y recibe el paquete de bienvenida inicial del servidor."!important;
}
.wm-auth-box--recover::after{
    content:"RECUPERACIÓN\A Protegemos tu acceso\A No enviamos contraseñas por correo. Solo usamos enlaces seguros para crear una nueva clave."!important;
}
.wm-auth-box--register > .wm-auth-register-gift{
    grid-column:2!important;
    min-width:0!important;
    margin:30px 36px 0!important;
    overflow:hidden!important;
}
.wm-auth-box--register > .wm-auth-register-gift .wm-auth-title{
    margin:0 0 16px!important;
    max-width:100%!important;
}
.wm-auth-box--register > .wm-auth-register-gift .wm-auth-table{
    table-layout:fixed!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 14px!important;
}
.wm-auth-box--register > .wm-auth-register-gift .wm-auth-table td{
    word-break:normal!important;
    overflow-wrap:anywhere!important;
    white-space:normal!important;
    font-size:14px!important;
    line-height:1.35!important;
}
.wm-auth-box--register > .wm-auth-register-gift .wm-auth-divider{
    margin:18px 0 0!important;
}
.wm-auth-box--register > .wm-auth-title,
.wm-auth-box--register > .wm-auth-table,
.wm-auth-box--register > .wm-auth-divider{
    margin-left:0!important;
    margin-right:0!important;
}
.wm-auth-select,
.wm-auth-select option,
.wm-auth-select optgroup{
    color-scheme:dark!important;
    background-color:#14181f!important;
    color:#f5f7fb!important;
}
.wm-auth-select option:checked,
.wm-auth-select option:hover{
    background-color:rgba(var(--wm-auth-accent-rgb),.82)!important;
    color:var(--wm-auth-accent-text,#101010)!important;
}
.wm-auth-login-success{
    grid-column:2!important;
    align-self:center!important;
    justify-self:stretch!important;
    padding:42px 42px!important;
    display:grid!important;
    gap:18px!important;
    text-align:left!important;
}
.wm-auth-login-success .wm-auth-title{
    margin:0!important;
    font-size:30px!important;
}
.wm-auth-login-success .wm-auth-note{
    margin:0!important;
    font-size:16px!important;
}
.wm-auth-login-success .wm-auth-actions{
    margin-top:16px!important;
    justify-content:flex-start!important;
}
.wm-auth-result{
    align-items:center!important;
    min-height:260px!important;
}
.wm-auth-result h2{font-size:32px!important;}
.wm-auth-result p{font-size:16px!important;}
@media (max-width:980px){
    .wm-auth-box--register > .wm-auth-register-gift{margin:28px 22px 0!important;}
    .wm-auth-login-success{padding:30px 22px!important;}
    .wm-auth-box--login::after,
    .wm-auth-box--recover::after,
    .wm-auth-box--register::after{display:none!important;}
}

/* Fase 45C - Auth layout polish: clean left art, selects and success state */
.wm-auth-box--login,
.wm-auth-box--recover,
.wm-auth-box--register{
    max-width:1180px!important;
}
.wm-auth-box--register{
    grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr)!important;
}
.wm-auth-box--login::after,
.wm-auth-box--recover::after,
.wm-auth-box--register::after{
    position:relative;
    overflow:hidden;
    background:
      linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.72)),
      url('../../shared/backgrounds/account-cover.webp') center/cover no-repeat!important;
    text-shadow:0 2px 18px rgba(0,0,0,.65);
    color:#f6f7fb!important;
    font-size:16px!important;
    letter-spacing:.02em;
}
.wm-auth-box--login::after{
    content:"NyxCMS 2.0\A Centro de cuenta\A Accede a tu panel, protege tu cuenta y continúa tu aventura en el servidor."!important;
}
.wm-auth-box--register::after{
    content:"NUEVA CUENTA\A Empieza tu historia\A Crea tu acceso, verifica tu correo y recibe tu paquete inicial de bienvenida."!important;
}
.wm-auth-box--recover::after{
    content:"SEGURIDAD\A Recupera tu acceso\A Te enviaremos un enlace seguro. Nunca enviamos contraseñas en texto plano."!important;
}
.wm-auth-register-gift{
    max-width:100%!important;
    overflow:hidden!important;
    padding-right:0!important;
}
.wm-auth-box--register > .wm-auth-register-gift{
    grid-column:2!important;
    width:auto!important;
    max-width:calc(100% - 72px)!important;
    margin-left:36px!important;
    margin-right:36px!important;
}
.wm-auth-table{
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
}
.wm-auth-table td{
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
}
.wm-auth-select,
.wm-auth-select option,
.wm-auth-select optgroup{
    background:#101318!important;
    color:#f6f7fb!important;
}
.wm-auth-select option:checked,
.wm-auth-select option:hover{
    background:var(--wm-accent,#ff5a66)!important;
    color:var(--wm-accent-text,#fff)!important;
}
.wm-auth-select{
    color-scheme:dark;
}
.wm-auth-box--login.is-login-ready{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    min-height:460px!important;
    max-width:900px!important;
    padding:44px 34px!important;
}
.wm-auth-box--login.is-login-ready::after{
    display:none!important;
    content:none!important;
}
.wm-auth-box--login.is-login-ready > *{
    grid-column:auto!important;
}
.wm-auth-login-success{
    width:min(100%,620px);
    margin:0 auto!important;
    display:grid;
    justify-items:center;
    gap:18px;
}
.wm-auth-login-success .wm-auth-title{
    justify-content:center;
    text-align:center;
    font-size:clamp(28px,3vw,42px);
    margin:0!important;
}
.wm-auth-login-success .wm-auth-note{
    max-width:520px;
    margin:0 auto!important;
    text-align:center;
    color:var(--wm-muted,rgba(255,255,255,.72));
}
.wm-auth-login-success .wm-auth-actions{
    justify-content:center!important;
    margin-top:10px!important;
}
@media(max-width:980px){
    .wm-auth-box--login,
    .wm-auth-box--recover,
    .wm-auth-box--register{
        grid-template-columns:1fr!important;
    }
    .wm-auth-box--login::after,
    .wm-auth-box--recover::after,
    .wm-auth-box--register::after{
        min-height:220px;
        grid-column:1!important;
        grid-row:auto!important;
    }
    .wm-auth-box > *:not(style):not(script),
    .wm-auth-box--register > .wm-auth-register-gift{
        grid-column:1!important;
        max-width:none!important;
        margin-left:20px!important;
        margin-right:20px!important;
    }
}

/* Fase 46 - crear_cuenta settings, terms modal and left-copy fix */
.wm-auth-box--register::after{
    box-sizing:border-box!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    padding:40px 34px 68px!important;
    line-height:1.48!important;
    min-height:100%!important;
}
.wm-auth-box--login::after{
    box-sizing:border-box!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    padding:40px 34px 68px!important;
    line-height:1.48!important;
    min-height:100%!important;
}
.wm-auth-box--recover::after{
    box-sizing:border-box!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    padding:40px 34px 68px!important;
    line-height:1.48!important;
    min-height:100%!important;
}
.wm-auth-terms{
    align-items:flex-start!important;
    gap:12px!important;
    line-height:1.45!important;
}
.wm-auth-terms-link{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    color:var(--wm-auth-accent)!important;
    font:inherit!important;
    font-weight:900!important;
    padding:0!important;
    margin-left:6px!important;
    cursor:pointer!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
}
.wm-auth-modal-open{overflow:hidden!important;}
.wm-auth-modal[hidden]{display:none!important;}
.wm-auth-modal{
    position:fixed!important;
    inset:0!important;
    z-index:9999!important;
    display:grid!important;
    place-items:center!important;
    padding:24px!important;
}
.wm-auth-modal__backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(0,0,0,.76)!important;
    backdrop-filter:blur(8px)!important;
}
.wm-auth-modal__dialog{
    position:relative!important;
    width:min(100%,720px)!important;
    max-height:min(82vh,720px)!important;
    overflow:auto!important;
    border:1px solid var(--wm-auth-border)!important;
    border-radius:22px!important;
    background:
      radial-gradient(circle at 18% 0%, rgba(var(--wm-auth-accent-rgb),.18), transparent 34%),
      linear-gradient(180deg, color-mix(in srgb, var(--wm-auth-surface) 96%, transparent), color-mix(in srgb, var(--wm-auth-bg) 26%, var(--wm-auth-surface)))!important;
    box-shadow:0 30px 90px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.05)!important;
    padding:34px!important;
    color:var(--wm-auth-text)!important;
}
.wm-auth-modal__close{
    position:absolute!important;
    top:16px!important;
    right:16px!important;
    width:38px!important;
    height:38px!important;
    border-radius:12px!important;
    border:1px solid var(--wm-auth-border)!important;
    background:rgba(255,255,255,.06)!important;
    color:var(--wm-auth-text)!important;
    font-size:26px!important;
    line-height:1!important;
    cursor:pointer!important;
}
.wm-auth-modal__kicker{
    display:block!important;
    color:var(--wm-auth-accent)!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
    margin-bottom:8px!important;
}
.wm-auth-modal__dialog h3{
    margin:0 48px 18px 0!important;
    color:var(--wm-auth-text)!important;
    font-size:30px!important;
    line-height:1.08!important;
}
.wm-auth-modal__body{
    color:var(--wm-auth-muted)!important;
    line-height:1.75!important;
    font-size:15px!important;
}
.wm-auth-modal__actions{
    display:flex!important;
    justify-content:flex-end!important;
    margin-top:26px!important;
}
@media(max-width:680px){
    .wm-auth-modal{padding:14px!important;}
    .wm-auth-modal__dialog{padding:28px 20px!important;border-radius:18px!important;}
    .wm-auth-modal__dialog h3{font-size:24px!important;}
    .wm-auth-box--register::after{padding-bottom:46px!important;}
}


/* v2.9.0 - Google auth buttons */
.wm-auth-social-block{display:flex;justify-content:center;margin:18px 0 4px;}
.wm-auth-social-block--register{margin:4px 0 10px;justify-content:flex-start;}
.wm-auth-social-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:0 24px;border-radius:8px;text-decoration:none!important;font-size:15px;font-weight:800;line-height:1;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 24px rgba(0,0,0,.18);transition:transform .16s ease,filter .16s ease;}
.wm-auth-social-btn:hover{transform:translateY(-1px);filter:brightness(1.06);}
.wm-auth-social-btn--google{background:#4285f4;color:#fff!important;border-color:rgba(66,133,244,.45);}
.wm-auth-social-g{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#fff;color:#4285f4;font-weight:900;font-family:Arial,sans-serif;font-size:16px;}
@media(max-width:920px){.wm-auth-social-block,.wm-auth-social-block--register{justify-content:stretch}.wm-auth-social-btn{width:100%;}}


/* v2.9.1 - Google auth visible fixes */
.wm-auth-social-block{
    display:flex!important;
    justify-content:center;
    margin:18px 0 8px!important;
    width:100%;
}
.wm-auth-social-block--register{
    justify-content:flex-start;
    margin:10px 0 18px!important;
}
.wm-auth-social-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    min-height:46px!important;
    padding:0 24px!important;
    border-radius:8px!important;
    text-decoration:none!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1!important;
    border:1px solid rgba(255,255,255,.12)!important;
    box-shadow:0 10px 22px rgba(0,0,0,.18)!important;
}
.wm-auth-social-btn--google{
    background:#4285f4!important;
    color:#fff!important;
    border-color:rgba(66,133,244,.55)!important;
}
.wm-auth-social-g{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:22px!important;
    height:22px!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#4285f4!important;
    font-weight:900!important;
    font-family:Arial,sans-serif!important;
}
.wm-auth-social-btn:hover{transform:translateY(-1px);filter:brightness(1.06);}
@media(max-width:920px){
    .wm-auth-social-block,.wm-auth-social-block--register{justify-content:stretch!important}
    .wm-auth-social-btn{width:100%!important}
}


/* v2.9.2 - Google profile register preview */
.wm-auth-google-profile{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 16px;
    padding:12px 14px;
    border:1px solid rgba(66,133,244,.28);
    background:rgba(66,133,244,.10);
    border-radius:14px;
}
.wm-auth-google-profile img{
    width:42px;
    height:42px;
    min-width:42px;
    border-radius:50%;
    object-fit:cover;
    background:#111827;
    border:1px solid rgba(255,255,255,.18);
}
.wm-auth-google-profile strong{
    display:block;
    color:#fff;
    font-size:14px;
    line-height:1.2;
}
.wm-auth-google-profile span{
    display:block;
    color:#bcd0ff;
    font-size:12px;
    line-height:1.25;
    margin-top:3px;
}


/* v2.9.3 - Google auto password country */
.wm-auth-google-profile small{
    display:block;
    color:#9fb6ee;
    font-size:11px;
    line-height:1.25;
    margin-top:5px;
}


/* v2.9.4 - Google manual password country
   Google rellena nombre/correo/avatar/usuario. País y contraseña quedan manuales. */


/* v2.9.5 - Google button next to main action */
.wm-auth-actions--google-row{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:14px!important;
    flex-wrap:wrap!important;
    width:100%;
}
.wm-auth-actions--google-row .wm-auth-social-btn,
.wm-auth-actions--google-row .wm-auth-btn{
    margin:0!important;
    min-height:52px!important;
}
.wm-auth-actions--google-row .wm-auth-social-btn{
    min-width:260px;
}
.wm-auth-actions--register-row .wm-auth-social-btn{
    min-width:260px;
}
@media(max-width:760px){
    .wm-auth-actions--google-row{
        justify-content:stretch!important;
        flex-direction:column!important;
        align-items:stretch!important;
    }
    .wm-auth-actions--google-row .wm-auth-social-btn,
    .wm-auth-actions--google-row .wm-auth-btn{
        width:100%!important;
    }
}
