/* BAJI-inspired WinClub26 login layout; shared site styles stay in style.css. */
body.page-login, body.page-register, body.page-create-password, body.page-success { background:#111313; }
body.page-login .sidebar, body.page-register .sidebar, body.page-create-password .sidebar, body.page-success .sidebar,
body.page-login .site-footer, body.page-register .site-footer, body.page-create-password .site-footer, body.page-success .site-footer,
body.page-login .mobile-bottom-nav, body.page-register .mobile-bottom-nav, body.page-create-password .mobile-bottom-nav, body.page-success .mobile-bottom-nav,
body.page-login .floating-chat, body.page-register .floating-chat, body.page-create-password .floating-chat, body.page-success .floating-chat { display:none!important; }
.auth-topbar { height:48px; padding:0 18px; }
.auth-topbar .topbar-left { gap:0; }
.auth-topbar .brand-mark { font-size:25px; }
.auth-home-link { display:flex; align-items:center; justify-content:center; width:30px; height:34px; color:#e8eeee; text-decoration:none; font-size:27px; line-height:1; }
.auth-main { margin-left:0!important; padding-top:48px!important; min-height:100vh; background:#111313; }
.auth-page { width:100%; max-width:460px; margin:0 auto; color:#f5f7f7; background:#111313; }
.auth-hero { height:150px; position:relative; overflow:hidden; display:flex; align-items:center; justify-content:space-between; padding:20px; box-sizing:border-box; background:radial-gradient(ellipse at 25% 110%,rgba(0,118,91,.65),transparent 57%),linear-gradient(115deg,#151a19 5%,#111313 57%,#231713 100%); }
.auth-hero-copy { position:relative; z-index:2; display:flex; flex-direction:column; gap:3px; max-width:145px; font-size:15px; line-height:1.35; }
.auth-hero-copy strong { font-weight:800; }
.auth-hero-copy span { font-weight:700; }
.auth-hero-mark { position:absolute; right:15px; top:-17px; color:transparent; -webkit-text-stroke:2px rgba(143,164,158,.45); text-shadow:8px 5px 0 rgba(100,44,28,.35); font-size:180px; font-weight:950; letter-spacing:-20px; line-height:1.1; font-style:italic; transform:rotate(-4deg); user-select:none; }
.auth-tabs { display:grid; grid-template-columns:1fr 1fr; height:43px; border-bottom:1px solid #353a39; background:#151817; }
.auth-tabs a { display:flex; align-items:center; justify-content:center; text-decoration:none; color:#94a1a0; font-size:13px; border-bottom:3px solid transparent; }
.auth-tabs a.is-active { color:#f6f8f8; font-weight:800; border-bottom-color:#118866; }
.auth-form-area { padding:18px 13px 30px; }
.auth-form { display:flex; flex-direction:column; gap:14px; }
.auth-field { display:flex; flex-direction:column; gap:8px; min-width:0; color:#98a6a7; font-size:12px; }
.auth-input-wrap { display:flex; align-items:center; min-width:0; height:42px; background:#222625; border:1px solid transparent; border-radius:2px; }
.auth-input-wrap:focus-within,.auth-text-input:focus,.auth-select-wrap:focus-within { border-color:#138767; }
.auth-input-wrap input { width:100%; min-width:0; height:100%; padding:0 12px; border:0; outline:0; background:transparent; color:#f5f7f7; font:inherit; font-size:12px; }
.auth-input-wrap input::placeholder,.auth-text-input::placeholder { color:#718087; }
.auth-clear,.auth-show { flex:0 0 32px; height:100%; border:0; background:transparent; color:#82919a; font-size:15px; cursor:pointer; }
.auth-show { font-size:13px; }
.auth-forgot { display:flex; justify-content:flex-end; margin-top:0; }
.auth-forgot a { color:#12c99a; font-size:12px; text-decoration:none; }
.auth-primary { display:flex; align-items:center; justify-content:center; width:100%; min-height:43px; padding:10px 14px; border:0; border-radius:3px; background:#118565; color:#fff; font:inherit; font-size:13px; font-weight:800; text-decoration:none; cursor:pointer; box-sizing:border-box; }
.auth-primary:hover { background:#159875; }
.auth-primary:disabled { background:#124b3b; color:#7d928c; cursor:not-allowed; }
.auth-demo-note { margin:18px 0 0; color:#697775; font-size:10px; line-height:1.45; text-align:center; }
.auth-message { margin:0; padding:10px; color:#ffd5d5; background:#442323; font-size:12px; line-height:1.45; }
.auth-message[hidden] { display:none!important; }
.auth-terms { display:flex; align-items:flex-start; gap:8px; color:#91a09f; font-size:12px; line-height:1.5; }
.auth-terms input { flex:0 0 16px; width:16px; height:16px; margin:1px 0 0; accent-color:#118565; }
.auth-terms a { color:#a7b5b4; text-decoration:underline; }
.auth-select-wrap { display:flex; align-items:center; gap:9px; height:42px; padding:0 12px; position:relative; border:1px solid transparent; background:#222625; }
.auth-flag { color:#00cba1; font-size:16px; text-shadow:0 0 0 #e72d55; }
.auth-select-wrap select { flex:1; min-width:0; height:100%; appearance:none; border:0; outline:0; color:#e6ebea; background:transparent; font:inherit; }
.auth-select-arrow { color:#dce2e0; pointer-events:none; }
.auth-phone-row { display:grid; grid-template-columns:102px minmax(0,1fr); gap:8px; }
.auth-country { display:flex; align-items:center; justify-content:space-around; height:42px; padding:0 5px; border:1px solid #303635; color:#7e9297; background:#171a19; font-size:12px; }
.auth-refer-toggle { display:inline-flex; align-items:center; gap:7px; padding:0; border:0; background:transparent; color:#98a6a7; font:inherit; font-size:12px; cursor:pointer; }
#registerReferWrap { margin-top:10px; }
.auth-text-input { width:100%; height:42px; box-sizing:border-box; padding:0 12px; border:1px solid transparent; border-radius:2px; outline:0; background:#222625; color:#fff; font:inherit; font-size:12px; }
.auth-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.auth-step-heading { display:flex; align-items:center; gap:13px; min-height:58px; padding:0 14px; border-bottom:1px solid #252a29; }
.auth-step-heading a { color:#d9e0df; text-decoration:none; font-size:30px; line-height:1; }
.auth-step-heading h1 { margin:0; font-size:17px; font-weight:800; }
.auth-password-area { padding-top:28px; }
.password-rules { display:grid; gap:8px; margin:0 0 7px; padding:0; list-style:none; color:#e4e9e8; font-size:12px; }
.password-rules li { display:flex; align-items:center; gap:8px; line-height:1.4; }
.password-rules li::before { content:"×"; display:inline-flex; align-items:center; justify-content:center; flex:0 0 15px; width:15px; height:15px; border:1px solid #83949b; border-radius:50%; color:#aab8bd; font-size:13px; }
.password-rules li.valid::before { content:"✓"; border-color:#15b98b; color:#15c895; }
.auth-success-main { display:grid; place-items:center; padding:48px 14px 30px!important; }
.auth-success-card { width:min(100%,330px); padding:30px 22px 24px; text-align:center; background:#202423; border-radius:3px; box-sizing:border-box; }
.auth-success-icon { display:grid; place-items:center; width:70px; height:70px; margin:0 auto 20px; border-radius:50%; background:linear-gradient(145deg,#a4d7a7,#118565); color:#fff; font-size:35px; font-weight:900; }
.auth-success-card h1 { margin:0 0 14px; font-size:18px; }
.auth-success-card p { margin:0 0 22px; color:#9daaa8; font-size:12px; line-height:1.65; }
.auth-secondary-link { display:block; margin-top:15px; color:#a8b7b4; font-size:12px; text-decoration:none; }
@media(min-width:761px) {
 .auth-main { padding-top:48px!important; }
 .auth-page { max-width:460px; margin:20px auto 40px; border:1px solid #292f2d; }
 .auth-hero { height:150px; }
 .auth-form-area { padding:20px 13px 30px; }
}
@media(max-width:380px) {
 .auth-topbar { padding:0 12px; }
 .auth-page { max-width:none; }
 .auth-hero { height:150px; padding:18px; }
 .auth-hero-mark { right:12px; font-size:166px; }
 .auth-form-area { padding:18px 12px 28px; }
 .auth-phone-row { grid-template-columns:96px minmax(0,1fr); gap:7px; }
}

/* Desktop auth layout: BAJI-inspired split screen; mobile layout remains unchanged. */
@media (min-width: 761px) {
  body.page-login,
  body.page-register { min-height:100vh; overflow-x:hidden; background:#111313; }
  body.page-login .auth-topbar,
  body.page-register .auth-topbar { height:60px; padding:0 24px; box-sizing:border-box; border-bottom:1px solid #303534; background:#111313; }
  body.page-login .auth-topbar .brand-mark,
  body.page-register .auth-topbar .brand-mark { font-size:28px; }
  body.page-login .auth-home-link,
  body.page-register .auth-home-link { width:38px; height:42px; font-size:29px; }
  body.page-login .auth-main,
  body.page-register .auth-main { display:block; min-height:calc(100vh - 60px); padding:0!important; margin:0!important; background:#090d0c; }
  body.page-login .auth-page,
  body.page-register .auth-page {
    display:grid; grid-template-columns:minmax(0, 56%) minmax(420px, 44%);
    grid-template-rows:auto 1fr; align-items:stretch; width:100%; max-width:none; min-height:calc(100vh - 60px);
    margin:0; padding:0; border:0; border-radius:0; box-sizing:border-box; overflow:hidden;
    background:#090d0c;
  }
  body.page-login .auth-hero,
  body.page-register .auth-hero {
    grid-column:1; grid-row:1 / span 2; min-height:calc(100vh - 60px); height:auto; padding:48px 5vw;
    align-items:center; justify-content:center; isolation:isolate;
    background:
      radial-gradient(ellipse at 65% 72%,rgba(0,111,76,.55),transparent 38%),
      radial-gradient(ellipse at 30% 90%,rgba(0,65,48,.45),transparent 45%),
      repeating-radial-gradient(ellipse at 35% 72%,rgba(130,150,143,.09) 0 2px,transparent 3px 27px),
      linear-gradient(120deg,#090b0b 0%,#111715 55%,#050807 100%);
  }
  body.page-login .auth-hero::after,
  body.page-register .auth-hero::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,transparent 65%,#090d0c 100%); pointer-events:none; }
  body.page-login .auth-hero-copy,
  body.page-register .auth-hero-copy { position:absolute; left:6%; bottom:18%; max-width:260px; font-size:22px; line-height:1.45; text-shadow:0 2px 12px #000; }
  body.page-login .auth-hero-mark,
  body.page-register .auth-hero-mark {
    position:relative; top:auto; right:auto; display:block; font-size:clamp(250px,34vw,540px); line-height:.8;
    letter-spacing:-.12em; font-weight:950; font-style:italic; transform:rotate(-7deg);
    -webkit-text-stroke:3px rgba(210,226,220,.38);
    background:linear-gradient(145deg,#d7e2dc 5%,#6b8179 28%,#0c2c23 49%,#e0442c 69%,#8b241c 88%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
    filter:drop-shadow(12px 18px 18px rgba(0,0,0,.7)); opacity:.95;
  }
  body.page-login .auth-tabs,
  body.page-register .auth-tabs { grid-column:2; grid-row:1; align-self:end; width:auto; height:52px; margin:clamp(60px,12vh,140px) 8% 0; background:transparent; border-bottom:1px solid #303534; }
  body.page-login .auth-tabs a,
  body.page-register .auth-tabs a { font-size:15px; }
  body.page-login .auth-form-area,
  body.page-register .auth-form-area { grid-column:2; grid-row:2; width:100%; max-width:650px; justify-self:center; align-self:start; box-sizing:border-box; padding:24px 8% 60px; }
  body.page-login .auth-form,
  body.page-register .auth-form { gap:18px; }
  body.page-login .auth-field,
  body.page-register .auth-field { gap:10px; font-size:14px; }
  body.page-login .auth-input-wrap,
  body.page-register .auth-input-wrap,
  body.page-register .auth-country,
  body.page-register .auth-select-wrap { height:50px; border-radius:3px; }
  body.page-login .auth-input-wrap input,
  body.page-register .auth-input-wrap input,
  body.page-register .auth-text-input { font-size:14px; padding-left:16px; }
  body.page-login .auth-primary,
  body.page-register .auth-primary { min-height:50px; font-size:15px; border-radius:3px; }
  body.page-login .auth-forgot a,
  body.page-register .auth-refer-toggle { font-size:14px; }
  body.page-login .auth-demo-note,
  body.page-register .auth-demo-note { font-size:11px; margin-top:22px; }
  body.page-register .currency-options { max-height:260px; }
}
