:root{--red:#d4423b;--red2:#b9322d;--dark:#292c34;--ink:#111827;--muted:#667085;--line:#dfe3eb;--white:#fff}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink)}body{background:#fff}.login-layout{min-height:100vh;display:grid;grid-template-columns:55% 45%}.login-brand{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 25% 22%,rgba(255,255,255,.06),transparent 34%),linear-gradient(145deg,#343741,#252830);overflow:hidden}.brand-inner{width:min(620px,72%)}.brand-inner>img{display:block;width:min(430px,100%);margin:auto;filter:drop-shadow(0 20px 35px rgba(0,0,0,.22))}.brand-tag{max-width:470px;margin:70px auto 0;color:#fff}.brand-tag span,.eyebrow{display:block;color:#e96a63;font-size:12px;font-weight:900;letter-spacing:.18em;margin-bottom:14px}.brand-tag h2{font-size:clamp(28px,2.4vw,42px);line-height:1.15;margin:0 0 14px}.brand-tag p{color:rgba(255,255,255,.7);line-height:1.6}.login-panel{display:flex;align-items:center;justify-content:center;padding:55px}.login-card{width:min(430px,100%)}.mobile-logo{display:none}.login-card h1,.register-wrap h1{font-size:clamp(38px,3vw,52px);margin:0 0 10px}.intro,.register-wrap>p{color:var(--muted);line-height:1.65;margin:0 0 30px}.login-card label,.register-form label{display:block;font-size:14px;font-weight:700;margin:0 0 19px}.login-card input,.register-form input,.register-form select{display:block;width:100%;height:54px;border:1px solid var(--line);border-radius:14px;padding:0 16px;margin-top:9px;font:inherit;outline:none}.login-card input:focus,.register-form input:focus,.register-form select:focus{border-color:var(--red);box-shadow:0 0 0 4px rgba(212,66,59,.12)}.login-options{display:flex;justify-content:space-between;align-items:center;margin:-2px 0 24px;font-size:13px}.login-options .check{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-weight:500}.check input{width:auto;height:auto;margin:0}.login-options a{color:var(--red);text-decoration:none;font-weight:800}.login-card button,.register-form button{width:100%;height:55px;border:0;border-radius:14px;background:var(--red);color:#fff;font-weight:900;font-size:15px;box-shadow:0 12px 26px rgba(212,66,59,.24);cursor:pointer}.login-card button:hover,.register-form button:hover{background:var(--red2)}.login-error{padding:15px 17px;margin:0 0 20px;border:1px solid #fecaca;background:#fee2e2;color:#991b1b;border-radius:14px;font-weight:700}.register-box{border-top:1px solid #eceef2;margin-top:30px;padding-top:25px;text-align:center}.register-box span{display:block;color:var(--muted);font-size:14px;margin-bottom:13px}.register-box a,.success-card a{display:flex;justify-content:center;align-items:center;min-height:51px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);font-weight:900}.security{display:block;text-align:center;margin-top:24px;color:#98a2b3}.register-page{background:#f4f6f8;padding:40px 20px}.register-wrap{max-width:760px;margin:auto;background:#fff;padding:42px;border-radius:26px;box-shadow:0 25px 60px rgba(17,24,39,.08)}.register-wrap>img{width:180px;margin:24px 0 34px}.back-login{color:var(--muted);text-decoration:none;font-weight:700}.register-form .two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.register-form .terms{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-weight:500}.register-form .terms input{width:auto;height:auto;margin:3px 0 0}.success-card{padding:28px;background:#ecfdf3;border-radius:18px}.success-card h2{margin-top:0}@media(max-width:900px){.login-layout{display:block}.login-brand{display:none}.login-panel{min-height:100vh;padding:34px 22px}.mobile-logo{display:block;width:190px;margin-bottom:40px}.register-form .two{grid-template-columns:1fr}}@media(max-width:480px){.login-panel{align-items:flex-start}.login-card h1{font-size:38px}.login-options{align-items:flex-start;flex-direction:column;gap:12px}.register-wrap{padding:28px 22px;border-radius:20px}}
.field-help{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.45;font-weight:500}
.property-box{margin:8px 0 26px;padding:22px;background:#f8fafc;border:1px solid var(--line);border-radius:18px}.property-box .eyebrow{margin-bottom:18px}.property-hint{padding:13px 15px;background:#fff;border-radius:12px;color:var(--muted);font-size:12px;line-height:1.5;border:1px solid #edf0f3}

.password-field{position:relative;margin-top:9px}.password-field input{margin-top:0;padding-right:54px}.password-toggle{position:absolute;top:50%;right:9px;transform:translateY(-50%);width:38px!important;height:38px!important;min-height:38px;border:0!important;border-radius:10px!important;background:transparent!important;color:#667085!important;box-shadow:none!important;display:flex;align-items:center;justify-content:center;padding:0!important;cursor:pointer}.password-toggle:hover{background:#f2f4f7!important;color:var(--red)!important}.password-toggle:focus-visible{outline:2px solid var(--red);outline-offset:2px}.password-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-toggle .eye-closed{display:none}.password-toggle.is-visible .eye-open{display:none}.password-toggle.is-visible .eye-closed{display:block}
/* Nombre de propietario siempre visible en mayúsculas */
.uppercase-input{text-transform:uppercase;letter-spacing:.02em}
