:root{--auth-primary: #6b5334;--auth-primary-hover: #83683f;--auth-primary-ring: rgba(139, 111, 71, .22);--auth-primary-soft: rgba(139, 111, 71, .1);--auth-bg: #ffffff;--auth-input-bg: #ffffff;--auth-border: #e8dfd2;--auth-border-strong: #d3c4ae;--auth-text: #1a1412;--auth-text-secondary: #6f5f50;--auth-text-muted: #98836a;--auth-danger: #b23a26;--auth-danger-bg: #fbeae6;--auth-success: #4f7d54;--auth-success-bg: #eaf3ea;--auth-warning: #a1671b;--auth-warning-bg: #fbf1e2;--auth-info: #6b5334;--auth-info-bg: #f5efe6;--auth-serif: Georgia, "Times New Roman", serif;--auth-sans: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}body.auth-body{font-family:var(--auth-sans);color:var(--auth-text);background:var(--auth-bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-split{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.auth-brand{position:relative;overflow:hidden;color:#fff;background:linear-gradient(160deg,#3b2e21,#241b14 55%,#140f0c);display:flex;flex-direction:column;padding:48px 56px}.auth-brand:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 70% 80%,rgba(196,149,106,.12),transparent 60%);pointer-events:none}.auth-brand-head{position:relative;z-index:2;display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff}.auth-brand-mark{width:46px;height:46px;border-radius:11px;background:#c4956a38;box-shadow:inset 0 1px #f5efe638;display:flex;align-items:center;justify-content:center}.auth-brand-mark i{font-size:1.625rem;line-height:1;color:#f5efe6}.auth-brand-name{font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.auth-brand-logo{height:32px;max-width:180px;object-fit:contain}.auth-brand-body{position:relative;z-index:2;margin-top:auto;display:flex;flex-direction:column;gap:16px}.auth-brand-quote{font-family:var(--auth-serif);font-style:italic;font-weight:500;font-size:2.125rem;line-height:1.2;letter-spacing:-.01em;max-width:16em;color:#f5efe6}.auth-brand-sub{font-size:.8125rem;letter-spacing:.06em;color:#c4956ad9;text-transform:uppercase;font-weight:600}.auth-tiles{position:absolute;top:13%;right:-40px;width:64%;max-width:440px;display:grid;grid-template-columns:repeat(8,1fr);gap:6px;transform:rotate(-6deg);pointer-events:none;z-index:1}.auth-tiles i{aspect-ratio:1;border-radius:5px;background:#f5efe60d;border:1px solid rgba(245,239,230,.05)}.auth-tiles i.on{background:#c4956a57;border-color:#d4a57473}.auth-tiles i.pulse{background:#f5efe633;border-color:#f5efe647;animation:authTilePulse 3.6s ease-in-out infinite}@keyframes authTilePulse{0%,to{background:#c4956a24}50%{background:#f5efe647}}.auth-form-side{display:flex;flex-direction:column;padding:28px 24px;background:var(--auth-bg)}.auth-form-head{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--auth-text-secondary)}.auth-form-head>i{font-size:.9375rem}.auth-form-head a.link-back{display:inline-flex;align-items:center;gap:6px;color:var(--auth-text-secondary);text-decoration:none;font-weight:600}.auth-form-head a.link-back:hover{color:var(--auth-text)}.auth-form-main{flex:1;display:flex;align-items:center;justify-content:center;padding:24px 0}.auth-card-tight{width:100%;max-width:420px}.auth-card-tight h1{font-size:2rem;font-weight:600;letter-spacing:-.02em;line-height:1.12;margin:0 0 10px;color:var(--auth-text)}.auth-card-tight h1 em{display:block;font-family:var(--auth-serif);font-style:italic;font-weight:500}.auth-sub{font-size:.9375rem;line-height:1.5;color:var(--auth-text-secondary);margin:0 0 26px}.form-group{margin-bottom:18px}.form-label{display:block;font-size:.78rem;font-weight:600;color:var(--auth-text-secondary);margin-bottom:6px}.form-control{width:100%;height:44px;background:var(--auth-input-bg);border:1px solid var(--auth-border-strong);color:var(--auth-text);padding:0 14px;border-radius:9px;font-size:.9375rem;font-family:inherit;transition:border-color .12s ease,box-shadow .12s ease}.form-control::placeholder{color:var(--auth-text-muted)}.form-control:focus{outline:none;border-color:var(--auth-primary);box-shadow:0 0 0 3px var(--auth-primary-ring)}.form-control.is-invalid{border-color:var(--auth-danger)}.form-control.is-invalid:focus{box-shadow:0 0 0 3px #b23a2626}.form-control.is-valid{border-color:var(--auth-success)}.input-group{position:relative}.input-group .form-control{padding-right:44px}.input-group-append{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.btn-toggle-password{background:transparent;border:none;color:var(--auth-text-muted);cursor:pointer;padding:6px;line-height:1;border-radius:6px}.btn-toggle-password:hover{color:var(--auth-text)}.btn-toggle-password i{font-size:1.05rem}.form-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.form-check{display:flex;align-items:center;gap:8px}.form-check-input{width:16px;height:16px;accent-color:var(--auth-primary);cursor:pointer}.form-check-label{font-size:.875rem;color:var(--auth-text-secondary);cursor:pointer}.form-hint{font-size:.75rem;color:var(--auth-text-muted);margin-top:6px}.link{color:var(--auth-primary);text-decoration:none;font-size:.875rem;font-weight:500}.link:hover{text-decoration:underline}.btn-primary{width:100%;height:46px;background:var(--auth-primary);border:none;color:#fff;border-radius:10px;font-size:.9375rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s ease,box-shadow .12s ease;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn-primary:hover{background:var(--auth-primary-hover)}.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px var(--auth-primary-ring)}.btn-primary:disabled{opacity:.65;cursor:not-allowed}.btn-primary .spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:authSpin .7s linear infinite}.btn-primary.loading .spinner{display:block}.btn-primary.loading .btn-text{display:none}@keyframes authSpin{to{transform:rotate(360deg)}}.divider{display:flex;align-items:center;gap:12px;margin:24px 0;color:var(--auth-text-muted);font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--auth-border)}.sso-buttons{display:flex;flex-direction:column;gap:10px}.btn-sso{width:100%;height:44px;background:#fff;border:1px solid var(--auth-border-strong);color:var(--auth-text);border-radius:9px;font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:background .12s ease,border-color .12s ease}.btn-sso:hover{background:#faf7f2;border-color:var(--auth-text-muted)}.btn-sso i{font-size:1.15rem}.alert{padding:11px 13px;border-radius:9px;font-size:.875rem;margin-bottom:18px;display:flex;align-items:flex-start;gap:9px}.alert i{font-size:1rem;flex-shrink:0;margin-top:1px}.alert a{color:inherit;font-weight:600}.alert-danger{background:var(--auth-danger-bg);border:1px solid rgba(178,58,38,.2);color:var(--auth-danger)}.alert-success{background:var(--auth-success-bg);border:1px solid rgba(79,125,84,.2);color:var(--auth-success)}.alert-warning{background:var(--auth-warning-bg);border:1px solid rgba(161,103,27,.2);color:var(--auth-warning)}.alert-info{background:var(--auth-info-bg);border:1px solid rgba(139,111,71,.25);color:var(--auth-info)}.field-error{font-size:.75rem;color:var(--auth-danger);margin-top:5px;display:none}.field-error.show{display:block}.language-selector{position:relative}.language-selector.ms-auto{margin-left:auto}.language-btn{background:transparent;border:none;color:var(--auth-text-secondary);font-size:.78rem;font-weight:600;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:7px;transition:background .12s ease,color .12s ease}.language-btn:hover{background:var(--auth-primary-soft);color:var(--auth-primary)}.language-btn i{font-size:.95rem}.language-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:6px;background:#fff;border:1px solid var(--auth-border);border-radius:9px;box-shadow:0 8px 24px #1a14121f;min-width:170px;max-height:320px;overflow-y:auto;z-index:100;padding:4px}.language-dropdown.show{display:block}.language-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:transparent;border:none;padding:8px 10px;border-radius:7px;font-size:.875rem;color:var(--auth-text);cursor:pointer;text-align:left;text-decoration:none}.language-option:hover{background:#faf7f2}.language-option.active{background:var(--auth-primary-soft);color:var(--auth-primary)}.language-option .check{color:var(--auth-primary);font-size:.95rem}.password-strength{margin-top:10px}.strength-bar{height:4px;background:var(--auth-border);border-radius:2px;overflow:hidden;margin-bottom:5px}.strength-fill{height:100%;width:0;border-radius:2px;transition:width .3s ease,background .3s ease}.strength-fill.weak{width:25%;background:var(--auth-danger)}.strength-fill.fair{width:50%;background:var(--auth-warning)}.strength-fill.good{width:75%;background:var(--auth-primary)}.strength-fill.strong{width:100%;background:var(--auth-success)}.strength-text{font-size:.75rem;color:var(--auth-text-muted)}.strength-text.weak{color:var(--auth-danger)}.strength-text.fair{color:var(--auth-warning)}.strength-text.good{color:var(--auth-primary)}.strength-text.strong{color:var(--auth-success)}.password-requirements{margin-top:12px;padding:12px;background:var(--auth-info-bg);border:1px solid var(--auth-border);border-radius:9px}.requirement{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--auth-text-muted);padding:3px 0}.requirement i{font-size:.9rem}.requirement.met{color:var(--auth-success)}.success-section{display:none;text-align:center}.success-section.show{display:block}.request-section.hide,.reset-section.hide,.login-section.hide{display:none}.success-icon,.error-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.success-icon{background:var(--auth-success-bg)}.success-icon i{font-size:2rem;color:var(--auth-success)}.error-icon{background:var(--auth-danger-bg)}.error-icon i{font-size:2rem;color:var(--auth-danger)}.invalid-token-section{text-align:center}.success-title,.error-title{font-size:1.125rem;font-weight:600;margin-bottom:8px}.success-message,.error-message{font-size:.875rem;color:var(--auth-text-secondary);line-height:1.6;margin-bottom:16px}.success-email{font-family:SFMono-Regular,SF Mono,Menlo,monospace;color:var(--auth-primary)}.auth-foot{text-align:center;margin-top:22px;font-size:.875rem;color:var(--auth-text-muted)}.auth-foot a{color:var(--auth-primary);text-decoration:none;font-weight:500}.auth-foot a:hover{text-decoration:underline}.version-badge{font-size:.6875rem;color:var(--auth-text-muted);margin-top:8px}.is-hidden{display:none!important}.u-mt-16{margin-top:16px}.auth-status{text-align:center}.auth-status .auth-sub{margin-bottom:20px}.auth-status .alert{text-align:left}.warning-icon,.info-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.warning-icon{background:var(--auth-warning-bg)}.warning-icon i{font-size:2rem;color:var(--auth-warning)}.info-icon{background:var(--auth-info-bg)}.info-icon i{font-size:2rem;color:var(--auth-info)}.auth-spinner{width:44px;height:44px;margin:0 auto 20px;border:3px solid var(--auth-border);border-top-color:var(--auth-primary);border-radius:50%;animation:authSpin .8s linear infinite}.btn-secondary,.btn-back{width:100%;height:46px;background:var(--auth-bg);border:1px solid var(--auth-border);color:var(--auth-text);border-radius:10px;font-size:.9375rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn-secondary:hover,.btn-back:hover{background:#faf7f2;border-color:var(--auth-border-strong)}.btn-secondary:focus-visible,.btn-back:focus-visible{outline:none;box-shadow:0 0 0 3px var(--auth-primary-ring)}.auth-actions{display:grid;gap:10px;margin-top:20px}@media(max-width:992px){.auth-split{grid-template-columns:1fr}.auth-brand{display:none}.auth-form-side{padding:24px 18px}}@media(prefers-reduced-motion:reduce){.auth-tiles i.pulse{animation:none;background:#c4956a33}}
