.user-auth-light { margin:0; background:#f8f5f1; color:#352f2b; font-family:Inter,system-ui,sans-serif; }
.auth-nav { height:88px; max-width:1200px; margin:auto; padding:0 36px; display:flex; align-items:center; justify-content:space-between; }
.auth-brand { font:400 29px 'Cormorant Garamond',Georgia,serif; letter-spacing:2px; color:#c35f36; text-decoration:none; }
.auth-home { color:#817367; font-size:12px; text-decoration:none; }
.auth-home:hover { color:#c35f36; }
.auth-shell { display:grid; grid-template-columns:1fr 1fr; max-width:1040px; min-height:590px; margin:28px auto 55px; background:#fffcf8; border:1px solid #e4d7cb; border-radius:22px; overflow:hidden; box-shadow:0 15px 55px #78513407; }
.auth-visual { position:relative; min-width:0; background:#e8dfd3; }
.auth-visual>img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:center 20%; }
.auth-content { min-width:0; padding:52px 44px 36px; align-self:center; }
.auth-intro { text-align:left; margin-bottom:32px; }

.auth-content h1 { font:400 43px/1.08 'Cormorant Garamond',Georgia,serif; letter-spacing:-.7px; color:#352f2b; margin-bottom:12px; }
.auth-content p { line-height:1.7; }
.auth-content .text-gray-500,.auth-content .text-gray-600 { color:#8b7b6d; }
.auth-content .text-gray-200,.auth-content .text-gray-300,.auth-content .text-white { color:#51453b; }
.auth-analysis-note { padding:14px 16px; margin-bottom:24px; border-radius:11px; border:1px solid #e5d4c4; background:#f6ede3; font-size:12px; }
.auth-analysis-note p { font-size:12px; }
.auth-form-panel { padding:0; }
.auth-content label { color:#645447; font-size:12px; }
.auth-content input:not([type=hidden]) { background:#fffdf9; color:#352f2b; border:1px solid #dbcabc; border-radius:10px; box-shadow:none; }
.auth-content input[type=email] { width:100%; padding:14px 16px; font-size:14px; }
.auth-content input::placeholder { color:#b29d8d; }
.auth-content input:focus { border-color:#c35f36; outline:2px solid #c35f361a; outline-offset:1px; --tw-ring-color:transparent; }
.auth-content button[type=submit] { background:linear-gradient(135deg,#d47749,#b8532b); color:#fff; padding:14px 18px; border-radius:10px; font-size:13px; font-weight:500; box-shadow:0 5px 14px #ab5a2c18; }
.auth-content button[type=submit]:hover { filter:brightness(.96); }
.auth-content button[type=submit]:disabled { cursor:wait; opacity:.65; }
.auth-content button[type=submit] svg { color:#fff; }
.auth-content a:focus-visible,.auth-content button:focus-visible,.auth-home:focus-visible { outline:2px solid #c35f36; outline-offset:4px; }
.auth-content .bg-gray-900\/50 { background:#fffcf8; border-color:#e4d7cb; }
.auth-content .bg-gradient-to-br { background:#eddfcf; color:#b06b45; box-shadow:none; }
.auth-content .bg-gradient-to-br svg { color:#b06b45; }
#page-transition { background:#f8f5f1; }
#page-transition .bg-gradient-to-br { background:#c35f36; box-shadow:none; }
#page-transition p { color:#857468; }
@media(max-width:1100px) { .auth-shell { margin:24px 30px 45px; } .auth-content { padding:38px 30px; } .auth-content h1 { font-size:39px; } }
@media(max-width:700px) { .auth-nav { height:72px; padding:0 22px; } .auth-brand { font-size:25px; } .auth-home { font-size:10px; } .auth-shell { grid-template-columns:1fr; margin:18px 18px 35px; min-height:0; } .auth-visual { display:none; } .auth-content { padding:36px 26px 28px; } .auth-content h1 { font-size:41px; } .auth-intro { margin-bottom:26px; }  }

/* Quiet typographic introduction, without a decorative mail badge. */
.auth-intro { text-align:center; margin-bottom:28px; padding-bottom:25px; border-bottom:1px solid #eaded2; }
.auth-intro .auth-eyebrow { margin:0 0 14px; color:#b47754; font-size:10px; font-weight:500; letter-spacing:2px; text-transform:uppercase; }
.auth-intro h1 { font-size:clamp(32px,4vw,41px); margin-bottom:12px; }
.auth-intro>p:last-child { font-size:13px; color:#89776a; margin-top:0; }
@media(max-width:700px) { .auth-intro { margin-bottom:24px; padding-bottom:22px; } .auth-content { padding-top:32px; } .auth-intro h1 { font-size:clamp(32px,5vw,38px); } }

.auth-brand-group { display:flex; flex-direction:column; align-items:flex-start; gap:4px; }
.auth-section-label { margin:0; font:400 11px/1.4 Inter,Arial,sans-serif; color:#8b7666; letter-spacing:.4px; }
.auth-home { font:400 13px/1.4 Inter,Arial,sans-serif; color:#51453b; padding:10px 0; }
@media(max-width:700px) { .auth-nav { height:84px; } .auth-home { font-size:12px; } .auth-section-label { font-size:10px; } }
