/* DRAGONCLUB V4 - GILAN CLUB - pantalla de acceso fiel al diseño aprobado.
   CSS totalmente aislado en .dc4-*; no modifica las pantallas internas. */
.dc4-root.auth-cover {position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  overflow-y:auto;overscroll-behavior:contain;padding:30px 28px;
  background:radial-gradient(ellipse at 3% 4%,#321544 0%,transparent 40%),
             radial-gradient(ellipse at 98% 100%,#20103b 0%,transparent 43%),#080713;}
.dc4-root * {box-sizing:border-box}
.dc4-root .dc4-shell {width:min(1510px,100%);height:min(768px,calc(100dvh - 60px));
  min-height:580px;border-radius:23px;border:1px solid #6a458d;overflow:hidden;
  display:grid;grid-template-columns:58.25% 41.75%;background:#080813;
  box-shadow:0 30px 95px #000c,0 0 70px #52208b25;}
.dc4-root .dc4-hero{min-width:0;min-height:0;position:relative;overflow:hidden;
  background:#090713;border-right:1px solid #4f3d68;}
.dc4-root .dc4-hero-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;
  pointer-events:none;user-select:none;}
.dc4-root .dc4-signin{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;
  padding:38px clamp(30px,3.2vw,58px);
  background:radial-gradient(ellipse at 100% 100%,#291039 0%,transparent 54%),
             radial-gradient(ellipse at 84% 5%,#121328 0%,transparent 45%),#0a0a15;}
.dc4-root .dc4-card{width:100%;max-width:468px;display:flex;flex-direction:column;align-items:stretch;
  background:none;border:0;box-shadow:none;margin:0;padding:0;}
.dc4-root .dc4-client-logo{display:block;width:min(355px,86%);height:114px;object-fit:contain;
  margin:0 auto 29px;filter:drop-shadow(0 0 13px #d6d4ff2b);}
.dc4-root .dc4-intro{text-align:center;margin-bottom:30px;}
.dc4-root .dc4-intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,3.35vw,57px);
  font-weight:700;line-height:1.12;white-space:normal;text-wrap:balance;letter-spacing:-1.9px;
  color:#fafaff;margin:0 0 14px;text-shadow:0 2px 13px #0008;}
.dc4-root .dc4-intro h1 span{color:#cb86f3;}
.dc4-root .dc4-intro p{font-size:clamp(12px,1.1vw,17px);line-height:1.5;
  white-space:normal;margin:0;color:#c8c5d4;}
.dc4-root #authForm {width:100%;display:flex;flex-direction:column;gap:18px;margin:0;}
.dc4-root .dc4-field{height:70px;width:100%;min-width:0;display:flex;align-items:center;gap:20px;
  background:linear-gradient(125deg,#1b192a,#1c1b2b);border:1px solid #57466f;
  border-radius:16px;padding:0 24px;box-shadow:inset 0 1px 1px #ffffff06;
  transition:border-color .15s,box-shadow .15s;}
.dc4-root .dc4-field:focus-within{border-color:#b57eff;box-shadow:0 0 0 3px #ad70ef26;}
.dc4-root .dc4-field>svg{height:24px;width:24px;flex:0 0 24px;stroke:#ce91f5;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;fill:none;}
.dc4-root .dc4-field input{width:100%;height:100%;min-height:0;min-width:0;flex:1;
  border:0;outline:0;border-radius:0;box-shadow:none;background:transparent;
  color:#fff;font-family:inherit;font-size:16px;font-weight:400;padding:0;margin:0;}
.dc4-root .dc4-field input:focus{border:0;box-shadow:none;outline:0;}
.dc4-root .dc4-field input::placeholder{color:#868196;opacity:1;}
.dc4-root .dc4-toggle{height:48px;width:48px;min-width:48px;flex:0 0 48px;display:grid;
  place-items:center;border:0;box-shadow:none;background:transparent;color:#ce91f5;
  padding:9px;margin:0;border-radius:10px;cursor:pointer;}
.dc4-root .dc4-toggle:hover{color:#f1d9ff;background:#b178e71b;}
.dc4-root .dc4-toggle svg{height:25px;width:25px;stroke:currentColor;stroke-width:2;
  fill:none;stroke-linecap:round;stroke-linejoin:round;}
.dc4-root .dc4-submit{position:relative;width:100%;height:72px;flex:0 0 72px;
  margin:6px 0 0;padding:0 58px;background:linear-gradient(105deg,#7236ff 0%,#6f27f3 48%,#aa33f0 100%);
  border-radius:18px;border:1px solid #a56afd;box-shadow:0 0 28px #842ff065,0 15px 30px #4d1a9247;
  color:#fff;letter-spacing:.25px;font-size:19px;font-weight:800;text-align:center;
  display:flex;justify-content:center;align-items:center;cursor:pointer;transition:filter .18s,transform .18s;}
.dc4-root .dc4-submit:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}
.dc4-root .dc4-submit:disabled{opacity:.6;cursor:wait}
.dc4-root .dc4-submit::after{content:"→";position:absolute;right:29px;top:50%;transform:translateY(-52%);
  font-size:31px;line-height:1;color:#fff;font-weight:400;}
.dc4-root .dc4-signature{display:flex;align-items:center;justify-content:center;gap:22px;
  margin:17px 0 0;color:#858099;text-align:center;font-size:17px;font-weight:400;white-space:nowrap;}
.dc4-root .dc4-signature:before,.dc4-root .dc4-signature:after{content:"";height:1px;width:75px;background:#4c3d60;}
.dc4-root .dc4-error{margin:0;color:#ffaaaa;text-align:center;font-size:13px;line-height:1.5;}
.dc4-root .dc4-error:empty{display:none}
.dc4-root .dc4-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;}
@media (max-width:1150px){
  .dc4-root .dc4-shell{grid-template-columns:55% 45%;}
  .dc4-root .dc4-signin{padding:24px 29px;}
  .dc4-root .dc4-client-logo{width:min(305px,87%);height:100px;margin-bottom:26px;}
  .dc4-root .dc4-intro h1{font-size:clamp(35px,3.8vw,46px);letter-spacing:-1.4px;}
  .dc4-root .dc4-intro p{font-size:13px;}
  .dc4-root .dc4-field{height:59px;padding:0 17px;gap:13px;}
  .dc4-root .dc4-submit{height:61px;flex-basis:61px;}
}
@media (max-width:760px){
  .dc4-root.auth-cover{padding:0;display:block;}
  .dc4-root .dc4-shell{height:auto;min-height:100dvh;display:flex;flex-direction:column;
    border:0;border-radius:0;overflow:visible;width:100%;}
  .dc4-root .dc4-hero{height:177px;min-height:177px;flex:0 0 177px;border:0;border-bottom:1px solid #634885;}
  .dc4-root .dc4-hero-art{object-fit:cover;object-position:50% 54%;}
  .dc4-root .dc4-signin{min-height:calc(100dvh - 177px);padding:28px 23px 50px;}
  .dc4-root .dc4-card{max-width:440px;}
  .dc4-root .dc4-client-logo{height:96px;margin-bottom:22px;width:min(285px,77%);}
  .dc4-root .dc4-intro h1{font-size:clamp(33px,8.3vw,43px);letter-spacing:-1px;}
  .dc4-root .dc4-intro{margin-bottom:25px;}
  .dc4-root .dc4-intro p{font-size:13px;}
  .dc4-root .dc4-field{height:57px;border-radius:12px;}
  .dc4-root .dc4-submit{height:60px;flex-basis:60px;border-radius:13px;font-size:17px;}
  .dc4-root .dc4-signature{font-size:13px;}
  .dc4-root .dc4-signature:before,.dc4-root .dc4-signature:after{width:48px;}
}
@media (max-height:730px) and (min-width:761px){
  .dc4-root.auth-cover{padding:15px 22px;}
  .dc4-root .dc4-shell{height:calc(100dvh - 30px);min-height:0;}
  .dc4-root .dc4-signin{padding:16px 24px;}
  .dc4-root .dc4-client-logo{height:76px;margin-bottom:13px;}
  .dc4-root .dc4-intro{margin-bottom:14px;}
  .dc4-root .dc4-intro h1{font-size:clamp(32px,3.4vw,47px);margin-bottom:7px;}
  .dc4-root #authForm{gap:11px;}
  .dc4-root .dc4-field{height:49px;border-radius:12px;}
  .dc4-root .dc4-submit{height:53px;flex-basis:53px;border-radius:13px;margin-top:2px;}
  .dc4-root .dc4-signature{margin-top:7px;font-size:13px;}
}
