/* Norte Tech auth V3 — visual reproduction of the user-supplied split-screen reference. */
body.norte-reference-auth {margin:0!important;background:#fff!important;color:#111827!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;}
.norte-reference-auth *{box-sizing:border-box}
.norte-reference-auth .auth-layout{display:flex;min-height:100vh;width:100%;}
.norte-reference-auth .auth-visual{position:relative;flex:1 1 50%;min-height:100vh;overflow:hidden;background:linear-gradient(135deg,#100e24,#50349b,#151225)}
.norte-reference-auth .auth-artwork{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.norte-reference-auth .auth-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,9,34,.46),transparent 47%);pointer-events:none}
.norte-reference-auth .auth-back{position:absolute;z-index:2;top:24px;left:24px;display:flex;width:42px;height:42px;align-items:center;justify-content:center;color:#fff!important;background:rgba(0,0,0,.25);backdrop-filter:blur(7px);border-radius:50%;font-size:24px;text-decoration:none;transition:background .2s}
.norte-reference-auth .auth-back:hover{background:rgba(0,0,0,.46)}
.norte-reference-auth .auth-image-brand{position:absolute;z-index:2;bottom:34px;left:38px;color:#fff;letter-spacing:.16em;font-weight:800;font-size:18px;text-shadow:0 1px 12px #24124a}
.norte-reference-auth .auth-image-brand strong{color:#beadff}
.norte-reference-auth .auth-form-panel{flex:1 1 50%;min-width:0;background:#fff;display:flex;align-items:center;justify-content:center;padding:42px 34px}
.norte-reference-auth .auth-form-wrap{width:100%;max-width:448px;padding:0 8px}
.norte-reference-auth .auth-heading{margin-bottom:31px}
.norte-reference-auth .auth-kicker{display:block;font-size:11px;color:#7450cb;font-weight:800;letter-spacing:.18em;margin-bottom:12px}
.norte-reference-auth .auth-heading h1{font-size:30px;line-height:1.25;font-weight:750;letter-spacing:-.04em;margin:0 0 8px;color:#111827}
.norte-reference-auth .auth-heading p{font-size:15px;color:#626779;margin:0}
.norte-reference-auth a{color:#7554ca;text-decoration:none;font-weight:600}
.norte-reference-auth a:hover{text-decoration:underline}
.norte-reference-auth .auth-fields{display:flex;flex-direction:column;gap:20px;margin:0}
.norte-reference-auth .auth-field{display:flex;flex-direction:column;gap:8px}
.norte-reference-auth .auth-field label{font-size:14px;color:#374151;font-weight:600}
.norte-reference-auth .auth-input-wrap{position:relative}
.norte-reference-auth .auth-input{display:block;width:100%;min-height:49px;border:1px solid #d1d5db;border-radius:12px;background:#fff;color:#111827;padding:12px 16px;font:inherit;font-size:14px;outline:0;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.norte-reference-auth .auth-input::placeholder{color:#9499a5}
.norte-reference-auth .auth-input:focus{border-color:#8d69d9;box-shadow:0 0 0 3px rgba(130,89,220,.15)}
.norte-reference-auth .auth-input[type=password],.norte-reference-auth .auth-input[data-password-visible=true]{padding-right:52px}
.norte-reference-auth .password-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:39px;height:38px;border:0;border-radius:9px;background:transparent;color:#6b7280;cursor:pointer;font-size:19px}
.norte-reference-auth .password-toggle:hover{background:#f3f0fa}
.norte-reference-auth .auth-options{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:#626779}
.norte-reference-auth .remember-choice{display:flex;align-items:center;gap:8px;cursor:pointer}
.norte-reference-auth .remember-choice input{width:16px;height:16px;accent-color:#7450cb}
.norte-reference-auth .auth-submit{border:0;border-radius:12px;background:#171321;color:white;font:inherit;font-size:14px;font-weight:650;min-height:49px;cursor:pointer;transition:background .2s}
.norte-reference-auth .auth-submit:hover{background:#6640ba}
.norte-reference-auth .auth-submit:disabled{opacity:.65;cursor:wait}
.norte-reference-auth .auth-divider{position:relative;text-align:center;margin:25px 0;color:#818594;font-size:13px}
.norte-reference-auth .auth-divider:before{content:"";position:absolute;height:1px;background:#e5e7eb;left:0;right:0;top:50%}
.norte-reference-auth .auth-divider span{position:relative;background:white;padding:0 12px}
.norte-reference-auth .auth-social{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.norte-reference-auth .auth-social-btn{background:#fff;display:flex;align-items:center;justify-content:center;gap:9px;min-height:49px;padding:10px;border:1px solid #d1d5db;border-radius:12px;color:#374151;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}
.norte-reference-auth .auth-social-btn:hover{background:#f9f8fc}
.norte-reference-auth .google-g{font-weight:800;font-size:20px;color:#4285f4}
.norte-reference-auth .discord-g{font-weight:900;font-size:21px;color:#5865f2}
.norte-reference-auth .auth-postscript{margin-top:17px;color:#757989;font-size:12px;text-align:center}
.norte-reference-auth .referral-hint:not([hidden]){margin-top:-12px;display:block;color:#737b8e;font-size:11px}
.norte-reference-auth .notice:not(.show){display:none}
.norte-reference-auth .notice.show{display:block;margin-top:14px;border-radius:10px;padding:12px 14px;color:#374151;background:#f5f3fa;font-size:13px}
.norte-reference-auth .notice.error{color:#a12828;background:#fff1f1}
.norte-reference-auth .notice.success{color:#166446;background:#eefaf4}
@media(max-width:850px){.norte-reference-auth .auth-visual{flex-basis:40%}.norte-reference-auth .auth-form-panel{flex-basis:60%;padding:32px 20px}}
@media(max-width:680px){.norte-reference-auth .auth-layout{display:block}.norte-reference-auth .auth-visual{min-height:150px;height:150px}.norte-reference-auth .auth-form-panel{padding:32px 20px 45px;min-height:calc(100vh - 150px)}.norte-reference-auth .auth-heading h1{font-size:27px}.norte-reference-auth .auth-image-brand{right:20px;left:auto;bottom:20px;font-size:14px}}
@media(max-width:380px){.norte-reference-auth .auth-social{grid-template-columns:1fr}}
