/* AQUO 360 LOGIN V3.0 — referencia visual móvil/escritorio.
   Hoja de estilos autónoma: no hereda los parches V2 anteriores. */
:root{--navy:#062c67;--blue:#0757c7;--cyan:#06d0ee;--ice:#eaf6ff;--ink:#09295d}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;width:100%}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:#edf7ff;-webkit-font-smoothing:antialiased}a{text-decoration:none}button,input{font:inherit}
.login-page{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.42fr) minmax(390px,.88fr);position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#003f86 0%,#077cce 49%,#bfe9ff 73%,#eaf8ff 100%)}
.login-page:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 36% 77%,rgba(34,215,250,.45),transparent 45%),linear-gradient(155deg,transparent 55%,rgba(255,255,255,.25) 56%,transparent 61%);pointer-events:none}
.water-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.water-lines i{position:absolute;display:block;width:115vw;height:220px;border-radius:50%;border-top:35px solid rgba(27,213,250,.42);transform:rotate(-13deg);left:-12vw;bottom:-160px}.water-lines i:nth-child(2){bottom:-195px;border-top-color:rgba(1,73,162,.48)}.water-lines i:nth-child(3){bottom:-235px;border-top-color:rgba(255,255,255,.28)}
.login-brand{min-width:0;position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:clamp(25px,3.7vw,65px) clamp(24px,4vw,80px);color:#fff;z-index:1}
.aquo-lockup{display:flex;align-items:center;gap:13px}.aquo-mark{width:55px;height:55px;display:grid;place-items:center;color:#fff}.aquo-mark svg{width:100%;height:100%;fill:#12bbf2}.aquo-mark-wave{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round}.aquo-wordmark{font-size:clamp(1.8rem,2.7vw,2.9rem);font-weight:900;letter-spacing:.025em;line-height:1}.aquo-wordmark span,.form-brand em{color:#06d5f0;font-style:normal}.brand-edition{font-size:clamp(.55rem,.78vw,.82rem);font-weight:800;letter-spacing:.045em;margin-top:6px}
.brand-main{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;max-width:900px;padding:18px 0}.brand-kicker{align-self:flex-start;padding:7px 15px;border:1px solid #42e5fa;border-radius:99px;background:rgba(2,80,153,.45);font-size:clamp(.69rem,1vw,.9rem);font-weight:800;margin-bottom:20px}.brand-main h1{max-width:650px;margin:0 0 19px;font-size:clamp(2.35rem,4vw,4.9rem);line-height:1.06;letter-spacing:-.05em;font-weight:900;text-wrap:balance;text-shadow:0 2px 15px rgba(0,30,75,.12)}.brand-main h1 span{color:#43f1ff}.brand-main>p{max-width:540px;font-size:clamp(.88rem,1.14vw,1.14rem);line-height:1.48;color:#eafaff;margin:0 0 23px}
.aquo-ai-hero{position:absolute;right:-7%;bottom:0;width:clamp(190px,28vw,435px);height:min(70vh,660px);display:flex;align-items:end;justify-content:center;pointer-events:none;z-index:-1}.aquo-ai-halo,.aquo-ai-copy{display:none}.aquo-ai-portrait{height:100%;width:100%;display:flex;align-items:flex-end;justify-content:center;mask-image:linear-gradient(to bottom,#000 0%,#000 83%,transparent 100%)}.aquo-ai-portrait img{display:block;height:100%;width:100%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 18px 24px rgba(0,31,76,.28))}
.brand-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:520px;position:relative;z-index:2}.brand-feature{min-width:0;min-height:104px;padding:12px 7px 10px;text-align:center;border:1px solid rgba(93,232,255,.7);border-radius:19px;background:rgba(1,64,139,.52);backdrop-filter:blur(7px);display:flex;flex-direction:column;align-items:center;gap:8px}.feature-icon{font-size:1.7rem;color:#78f5ff;line-height:1}.brand-feature strong{display:block;color:#fff;font-size:clamp(.65rem,.9vw,.86rem);line-height:1.22}.brand-feature small{display:none}.brand-cta{align-self:flex-start;margin-top:23px;padding:11px 20px;border:1px solid #b4faff;border-radius:30px;color:white;background:rgba(0,55,133,.35);font-weight:800}.brand-cta span{margin-left:8px}.brand-footer{font-size:.8rem;color:#d7f2ff}
.login-panel{min-width:0;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px clamp(20px,4vw,65px)}.login-card{width:100%;max-width:560px;background:rgba(255,255,255,.96);border:2px solid #fff;border-radius:42px;padding:clamp(24px,3vw,45px);box-shadow:0 22px 80px rgba(0,39,91,.16);text-align:center;backdrop-filter:blur(8px)}
.form-brand{display:flex;justify-content:center;align-items:center;gap:12px;margin:0 0 22px}.form-brand-drop{width:49px;height:58px;color:#00bdf3}.form-brand-drop svg{width:100%;height:100%}.form-brand-text{text-align:left}.form-brand-text strong{display:block;font-size:clamp(1.5rem,2.5vw,2.45rem);line-height:1;font-weight:900;letter-spacing:-.03em}.form-brand-text small{display:block;font-size:clamp(.49rem,.64vw,.7rem);font-weight:800;letter-spacing:.025em;margin-top:7px}
.login-eyebrow{display:none}.login-card h2{font-size:clamp(2rem,2.65vw,2.85rem);font-weight:900;letter-spacing:-.035em;margin:0 0 8px;color:#082b67}.login-subtitle{max-width:390px;margin:0 auto 26px;font-size:clamp(.82rem,1vw,1rem);line-height:1.5;color:#244c7a}.login-card form{text-align:left}.login-card .mb-3{margin-bottom:14px!important}.login-card .mb-4{margin-bottom:20px!important}.form-label{display:none}.login-input{display:flex;align-items:center;position:relative;border:1.5px solid #a9ceff;background:#eff6ff;border-radius:19px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.login-input:focus-within{border-color:#1c80f1;box-shadow:0 0 0 4px rgba(48,143,245,.13)}.field-icon{width:62px;flex:0 0 62px;text-align:center;color:#0d4c9b;font-size:1.45rem}.login-input .form-control{min-width:0;width:100%;height:60px;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0;padding:0 12px 0 0;font-size:1rem;color:#082c65}.login-input .form-control::placeholder{color:#667d9b;opacity:1}.login-input-password .form-control{padding-right:5px}.password-toggle{border:0;background:transparent;color:#0c4d99;cursor:pointer;width:53px;height:54px;flex:0 0 53px;font-size:1.3rem}.login-submit{height:61px;border:0!important;border-radius:999px!important;background:linear-gradient(105deg,#0752ca,#008ce2 58%,#02d4e8)!important;color:white!important;font-size:1.04rem;font-weight:850;box-shadow:0 10px 25px rgba(0,100,185,.2)}.login-submit-label i{margin-right:8px;font-size:1.2rem}.login-register{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 0;margin-top:14px;border-bottom:1px solid #d7e9fa;font-weight:800;font-size:.89rem;text-align:left}.login-register small{display:none}.login-register a{color:#0755d3;white-space:nowrap;font-weight:900}.security-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;gap:0}.security-item{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;padding:4px 8px;font-size:.72rem;font-weight:650;line-height:1.25;color:#173b6c}.security-item+.security-item{border-left:1px solid #d6e6f7}.security-item span{font-size:1.65rem;color:#0a71e6;line-height:1.2}.login-meta{display:none}.login-alert{text-align:left}.mobile-aquo-hero,.aquo-guide-mobile,.mobile-quick-features{display:none}.install-banner{width:100%;max-width:560px;margin-top:12px;border:1px solid rgba(255,255,255,.6);border-radius:16px;padding:10px 13px;background:rgba(255,255,255,.83);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.install-banner[hidden],.install-help[hidden]{display:none!important}.install-copy{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.install-icon{width:26px;height:26px;color:#0679d2;flex:0 0 26px}.install-icon svg,.install-button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.install-copy strong{display:block;font-size:.76rem}.install-copy small{display:block;font-size:.65rem;color:#53728c}.install-button{border:0;border-radius:99px;background:#0861cb;color:#fff;padding:9px 12px;font-size:.72rem;font-weight:800;display:flex;align-items:center;gap:5px}.install-button svg{width:16px;height:16px}.install-help{flex-basis:100%;font-size:.73rem;color:#21476f}
@media(max-width:1280px) and (min-width:901px){.login-page{grid-template-columns:minmax(0,1.2fr) minmax(380px,.9fr)}.brand-main h1{max-width:470px}.brand-main>p{max-width:390px}.aquo-ai-hero{right:-12%;width:260px;opacity:.92}.brand-features{max-width:410px}.login-brand{padding:30px}.login-panel{padding:22px}.login-card{padding:27px}}
@media(max-height:740px) and (min-width:901px){.login-brand{gap:8px;padding-top:18px;padding-bottom:18px}.brand-main{padding:5px 0}.brand-main h1{font-size:clamp(2rem,3vw,3.4rem);margin-bottom:8px}.brand-main>p{margin-bottom:12px}.brand-kicker{margin-bottom:10px}.brand-feature{min-height:75px;padding:8px}.brand-cta{margin-top:12px}.login-card{padding:22px 26px}.form-brand{margin-bottom:12px}.login-subtitle{margin-bottom:14px}.login-input .form-control{height:49px}.login-submit{height:50px}.login-register{padding:10px 0}.security-row{margin-top:10px}}
@media(max-width:900px){html,body{min-height:100%;overflow-x:hidden}.login-page{display:block;min-height:100dvh;background:radial-gradient(circle at 50% 46%,#fff 0%,#fff 30%,#e9f8ff 80%);overflow:hidden}.login-page:before{background:none}.login-page:after{content:"";position:absolute;top:-140px;left:-25%;width:150%;height:210px;border-bottom:25px solid #11b6ee;border-radius:50%;background:linear-gradient(120deg,#004a9f,#09c7f3);transform:rotate(-8deg);z-index:0;pointer-events:none}.water-lines{z-index:0}.water-lines i{left:-30%;bottom:-165px;width:170%;height:220px;border-top-width:32px}.login-brand{display:none}.login-panel{padding:0 22px 110px;min-height:100dvh;justify-content:flex-start;background:none;gap:0}.mobile-aquo-hero{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;padding:68px 0 0;color:#082c66;position:relative;z-index:1}.mobile-aquo-brand{display:flex;align-items:center;justify-content:center;gap:12px}.aquo-mark-mobile{width:55px;height:55px}.mobile-aquo-brand strong{display:block;font-size:clamp(1.9rem,7.5vw,2.7rem);font-weight:900;letter-spacing:-.04em;line-height:1}.mobile-aquo-brand strong span{color:#02bfea}.mobile-aquo-brand small{display:block;font-size:clamp(.54rem,2.15vw,.73rem);font-weight:850;letter-spacing:.025em;text-transform:uppercase;margin-top:6px}.mobile-aquo-hero h1{font-size:clamp(2.3rem,9vw,3.65rem);font-weight:900;line-height:1.06;letter-spacing:-.05em;margin:45px 0 8px}.mobile-aquo-hero>p{max-width:450px;margin:0 auto 26px;font-size:clamp(.95rem,3.65vw,1.2rem);line-height:1.45;color:#23416e}.mobile-aquo-showcase,.mobile-feature-chips{display:none}.login-card{max-width:510px;width:100%;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;text-align:center;backdrop-filter:none}.form-brand,.login-card h2,.login-subtitle,.login-eyebrow{display:none}.login-input{border-radius:18px;background:#f0f6ff;border:1.5px solid #9fc5ff}.login-input .form-control{height:64px;font-size:1rem}.field-icon{width:57px;flex-basis:57px}.login-card .mb-3{margin-bottom:15px!important}.login-card .mb-4{margin-bottom:20px!important}.login-submit{height:66px;font-size:1.05rem}.login-register{margin-top:16px;padding:18px 4px;border-bottom:0;border-top:0;font-size:.89rem}.security-row{margin-top:25px}.security-item{font-size:.73rem;padding:7px}.security-item span{font-size:1.8rem}.install-banner{margin-top:30px;max-width:510px;background:rgba(255,255,255,.9)}.mobile-quick-features,.aquo-guide-mobile{display:none!important}}
@media(max-width:430px){.login-panel{padding-left:20px;padding-right:20px}.mobile-aquo-hero{padding-top:60px}.mobile-aquo-hero h1{margin-top:36px}.mobile-aquo-hero>p{margin-bottom:23px}.login-input .form-control{height:57px}.login-submit{height:59px}.security-item{font-size:.66rem;padding:5px}.login-register{font-size:.8rem}.install-copy small{font-size:.6rem}}
@media(max-width:360px){.mobile-aquo-brand strong{font-size:1.7rem}.mobile-aquo-hero h1{font-size:2.15rem}.login-register{font-size:.72rem}.security-item{font-size:.59rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* V3.1 — Recursos oficiales sin modificar, sin recuadro ni degradado sobre AQUO. */
.aquo-official-logo{display:block;max-width:100%;height:auto;object-fit:contain}
.aquo-official-logo-desktop{width:clamp(245px,24vw,410px);background:rgba(255,255,255,.96);padding:9px 17px;border-radius:16px;box-shadow:0 8px 24px rgba(0,28,70,.12)}
.aquo-official-logo-form{width:min(100%,300px);margin-inline:auto}
.aquo-official-logo-mobile{width:min(82vw,340px);margin-inline:auto}
.aquo-ai-hero{right:0;bottom:-5px;width:clamp(230px,27vw,440px);height:min(80vh,760px);z-index:0;overflow:visible}
.aquo-ai-portrait{mask-image:none!important;-webkit-mask-image:none!important;overflow:visible}
.aquo-ai-portrait img{width:100%;height:100%;object-fit:contain;object-position:bottom center;background:transparent;border:0;border-radius:0;filter:drop-shadow(0 15px 22px rgba(0,25,70,.22))}
.brand-kicker,.brand-main h1,.brand-main>p,.brand-features,.brand-cta{position:relative;z-index:1}
.brand-main h1{max-width:min(62%,640px)}
.brand-main>p{max-width:min(60%,540px)}
.brand-features{max-width:min(61%,520px)}
@media(min-width:901px) and (max-width:1280px){.aquo-ai-hero{right:-3%;width:clamp(190px,24vw,310px);height:min(70vh,630px)}.brand-main h1{max-width:68%;font-size:clamp(2rem,3vw,3.4rem)}.brand-main>p{max-width:67%}.brand-features{max-width:70%;grid-template-columns:repeat(2,minmax(0,1fr))}.brand-feature{min-height:64px}}
@media(max-width:900px){.aquo-official-logo-mobile{width:min(82vw,330px)}.mobile-aquo-brand{width:100%}.mobile-aquo-hero{padding-top:68px}}
@media(max-width:430px){.aquo-official-logo-mobile{width:min(83vw,310px)}}

/* V3.2 — ajustes puntuales solicitados, sin alterar el formulario ni su lógica */
@media (min-width:901px){
  .login-brand{gap:12px;padding-top:clamp(24px,3vw,44px);padding-bottom:clamp(20px,2.6vw,40px)}
  .brand-main{padding:0;justify-content:center}
  .brand-kicker{background:rgba(0,42,104,.38);border-color:rgba(113,244,255,.8);color:#e7fdff;letter-spacing:.015em}
  .brand-main h1{max-width:min(58%,560px);font-size:clamp(2.45rem,3.35vw,4.15rem);line-height:1.09;text-shadow:0 5px 24px rgba(0,35,88,.18)}
  .brand-main h1 span{color:#5df4fa}
  .brand-main>p{max-width:min(56%,520px);color:#f0fbff;line-height:1.57}
  .brand-features{max-width:min(57%,510px)}
  .brand-feature{background:rgba(0,63,139,.56);border-color:rgba(112,236,252,.65)}
  .aquo-ai-hero{right:-7%;bottom:0;width:clamp(275px,29vw,485px);height:min(83vh,770px);z-index:0}
  .aquo-ai-portrait img{filter:drop-shadow(0 18px 26px rgba(0,31,81,.26))}
  .brand-footer{position:relative;z-index:2}
  .login-page{background:linear-gradient(115deg,#034585 0%,#087ac4 46%,#94d5f4 72%,#e9f8ff 100%)}
}
@media (min-width:901px) and (max-width:1280px){
  .brand-main h1{max-width:61%;font-size:clamp(2rem,3vw,3.2rem)}
  .brand-main>p{max-width:59%}
  .brand-features{max-width:61%}
  .aquo-ai-hero{right:-8%;width:clamp(220px,25vw,345px);height:min(75vh,670px)}
}
@media (max-width:900px){
  .login-panel{padding-bottom:45px}
  .mobile-aquo-hero{padding-top:38px}
  .aquo-official-logo-mobile{width:min(72vw,285px)}
  .mobile-aquo-hero h1{margin-top:19px;margin-bottom:6px;font-size:clamp(2.1rem,8vw,3.1rem)}
  .mobile-aquo-hero>p{margin-bottom:15px;line-height:1.34;font-size:clamp(.88rem,3.3vw,1.08rem)}
  .login-input .form-control{height:54px}
  .login-card .mb-3{margin-bottom:11px!important}
  .login-card .mb-4{margin-bottom:14px!important}
  .login-submit{height:55px}
  .login-register{margin-top:8px;padding:11px 3px}
  .security-row{margin-top:12px}
  .security-item{gap:4px;padding:3px 5px}
  .security-item span{font-size:1.5rem}
  .install-banner{margin-top:16px}
}
@media (max-width:430px){
  .mobile-aquo-hero{padding-top:31px}
  .aquo-official-logo-mobile{width:min(70vw,265px)}
  .mobile-aquo-hero h1{margin-top:15px}
  .mobile-aquo-hero>p{margin-bottom:12px}
  .login-input .form-control{height:50px}
  .login-submit{height:53px}
  .security-item{font-size:.63rem}
}


/* V3.3 — piscina difuminada a pantalla completa y AQUO interactivo. */
@media (min-width:901px){
  .login-page{background:#07538c}
  .aquo-pool-backdrop{position:absolute;inset:-28px;z-index:-2;pointer-events:none;background-image:linear-gradient(100deg,rgba(0,35,85,.82) 0%,rgba(0,77,145,.75) 42%,rgba(47,149,199,.57) 70%,rgba(208,237,255,.66) 100%),url("images/aquo360-piscina-fondo.9ca0aef26a76.jpg");background-position:center;background-size:cover;filter:blur(19px) saturate(.9);transform:scale(1.035)}
  .login-page:before{z-index:-1;background:linear-gradient(115deg,rgba(0,45,101,.42),rgba(0,124,182,.17) 52%,rgba(224,245,255,.35))}
  .aquo-ai-hero{pointer-events:none}
  .aquo-thought{pointer-events:auto;position:absolute;top:12%;right:-9%;width:clamp(165px,15vw,235px);border:1px solid rgba(255,255,255,.8);border-radius:22px;padding:14px 16px 12px;background:rgba(255,255,255,.96);box-shadow:0 15px 36px rgba(0,38,91,.22);color:#0a3976;text-align:left;cursor:pointer;z-index:5;transition:transform .2s,box-shadow .2s}
  .aquo-thought:hover,.aquo-thought:focus-visible{transform:translateY(-4px);box-shadow:0 19px 40px rgba(0,38,91,.28)}
  .aquo-thought:after{content:'';position:absolute;bottom:-12px;left:24px;border-width:13px 13px 0 0;border-style:solid;border-color:rgba(255,255,255,.96) transparent transparent transparent}
  .aquo-thought-greeting{display:block;font-weight:900;font-size:clamp(.86rem,1.03vw,1.02rem);line-height:1.3}
  .aquo-thought-message{display:block;margin-top:6px;font-size:clamp(.77rem,.86vw,.9rem);line-height:1.36;font-weight:650}
  .aquo-thought-hint{display:block;margin-top:9px;font-size:.65rem;color:#1875b5;font-weight:750}
  .brand-kicker{background:rgba(0,53,115,.65)}
  .brand-feature{background:rgba(0,61,129,.72);backdrop-filter:blur(8px)}
  .brand-main h1{text-shadow:0 4px 24px rgba(0,27,73,.36)}
  .brand-main>p{text-shadow:0 2px 12px rgba(0,26,69,.3)}
  .login-card{box-shadow:0 22px 65px rgba(0,40,95,.16)}
}
@media (min-width:901px) and (max-width:1280px){
  .aquo-thought{top:13%;right:-7%;width:170px;padding:11px 12px}
  .aquo-thought-hint{font-size:.59rem}
}
@media (min-width:901px) and (max-height:700px){.aquo-thought{top:8%;padding:10px 12px}.aquo-thought-hint{margin-top:5px}}
@media (max-width:900px){
  .aquo-pool-backdrop,.aquo-thought{display:none!important}
  .mobile-aquo-hero{padding-top:clamp(51px,7.5vh,78px)}
}
@media (max-width:430px){.mobile-aquo-hero{padding-top:clamp(46px,7vh,67px)}}
@media (prefers-reduced-motion:reduce){.aquo-thought{transition:none}}

/* AQUO360 Login V3.4 — fondo tropical moderado, solo escritorio.
   La foto original se conserva intacta; filtros únicamente visuales. */
@media (min-width:901px){
  .aquo-pool-backdrop{
    background-image:linear-gradient(105deg,
      rgba(0,39,91,.77) 0%,
      rgba(0,79,141,.67) 43%,
      rgba(29,130,181,.55) 70%,
      rgba(202,234,249,.70) 100%),
      url("images/aquo360-piscina-tropical.a8e0183ba85c.webp");
    background-position:center center;
    background-size:cover;
    filter:blur(9px) saturate(.93);
    transform:scale(1.025);
  }
  .aquo-thought{min-height:129px;display:flex;flex-direction:column;justify-content:center}
  .aquo-thought-message{min-height:2.72em}
  .aquo-thought-hint{opacity:.82}
}
@media (min-width:901px) and (max-width:1280px){
  .aquo-thought{min-height:122px}
}
