:root{--forest:#12372a;--deep:#09251c;--gold:#d6a735;--gold-light:#f1d87d;--cream:#f8f4e9;--ink:#15251e;--muted:#69746e;--line:#d9d7ca}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--cream)}body{font-family:"DM Sans",Arial,sans-serif;color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}.auth-layout{display:grid;min-height:100dvh}.auth-visual{display:none}.auth-content{min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom));background:radial-gradient(circle at 100% 0,rgba(214,167,53,.16),transparent 32%),var(--cream)}.mobile-brand{display:flex;align-items:center;justify-content:space-between;max-width:520px;margin:0 auto 38px}.mobile-brand>a:first-child,.visual-brand{display:flex;align-items:center;gap:10px}.brand-logo{display:grid;place-items:center;width:46px;height:46px;overflow:hidden;border:1px solid rgba(214,167,53,.45);border-radius:50%;background:#fff;box-shadow:0 8px 24px rgba(17,55,42,.12)}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.mobile-brand strong,.visual-brand strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:17px;line-height:1;letter-spacing:.02em}.mobile-brand small,.visual-brand small{display:block;margin-top:4px;color:#9b741b;font-size:7px;font-weight:700;letter-spacing:.27em}.home-button{display:grid!important;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#ffffffa6;font-size:18px}.form-wrap{width:100%;max-width:520px;margin:auto}.form-kicker,.section-number{color:#9b741b;font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.form-wrap h1{margin:9px 0 10px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(34px,10vw,46px);line-height:1.05;letter-spacing:-.035em}.form-intro{max-width:430px;margin:0 0 28px;color:var(--muted);font-size:13px;line-height:1.65}.auth-alert{margin:0 0 18px;padding:13px 15px;border-left:3px solid #b44b36;border-radius:4px 12px 12px 4px;color:#783323;background:#f5dfd8;font-size:12px;line-height:1.5}.auth-form{display:grid;gap:18px}.field>span{display:block;margin-bottom:8px;font-size:11px;font-weight:700}.field-box{display:flex;align-items:center;height:54px;border:1px solid var(--line);border-radius:5px;background:#ffffffbf;transition:.2s}.field-box:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(214,167,53,.13);background:#fff}.field-box>b{padding-left:16px;color:#8d6b1c;font-size:12px}.field-box input{width:100%;height:100%;min-width:0;padding:0 15px;border:0;outline:0;color:var(--ink);background:transparent;font-size:13px}.field-box input::placeholder{color:#9da39f}.password-toggle{align-self:stretch;padding:0 15px;border:0;color:#876718;background:transparent;font-size:10px;font-weight:700;cursor:pointer}.invite-box>span{padding-left:16px;color:#9b741b}.captcha-row{display:grid;grid-template-columns:125px 1fr;gap:10px}.captcha-code{display:flex;align-items:center;justify-content:center;min-height:54px;border:1px dashed #b58c29;border-radius:5px;color:#173a2e;background:repeating-linear-gradient(135deg,#f0dfa8 0,#f0dfa8 7px,#faf4df 7px,#faf4df 14px);font-family:ui-monospace,monospace;font-size:18px;font-weight:800;letter-spacing:.22em;text-indent:.22em}.primary-action{display:flex;align-items:center;justify-content:space-between;min-height:56px;margin-top:4px;padding:0 7px 0 20px;border:0;border-radius:5px;color:#fff;background:var(--forest);box-shadow:0 14px 28px rgba(9,37,28,.18);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:.2s}.primary-action b{display:grid;place-items:center;width:42px;height:42px;border-radius:3px;color:#19392e;background:var(--gold-light);font-size:16px}.primary-action:hover{background:var(--deep);transform:translateY(-1px)}.primary-action:disabled{opacity:.45;cursor:not-allowed;transform:none}.auth-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);font-size:11px}.auth-switch span{color:var(--muted)}.auth-switch a{color:#80600f;font-weight:700}.security-note{text-align:center;margin:24px 0 0;color:#818a85;font-size:9px}.security-note span{color:#b98c20}.field-pair{display:grid;gap:18px}@media(max-width:370px){.auth-content{padding-inline:14px}.mobile-brand{margin-bottom:28px}.form-wrap h1{font-size:32px}.captcha-row{grid-template-columns:110px 1fr}.auth-switch{align-items:flex-start;flex-direction:column;gap:6px}}@media(min-width:720px){.auth-content{display:flex;flex-direction:column;padding:28px 7vw}.mobile-brand{width:100%;max-width:620px}.form-wrap{max-width:620px}.field-pair{grid-template-columns:1fr 1fr}.register-page .auth-form{gap:15px}}@media(min-width:1024px){.auth-layout{grid-template-columns:minmax(430px,46%) 1fr}.auth-visual{position:sticky;top:0;display:flex;flex-direction:column;justify-content:space-between;min-height:100dvh;padding:44px clamp(34px,5vw,76px);overflow:hidden;color:#fff;background:url('../images/freeport-mine-hero.png') center/cover no-repeat}.visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,28,20,.2),rgba(5,28,20,.72) 72%,rgba(5,28,20,.92)),linear-gradient(90deg,rgba(6,35,25,.55),transparent)}.visual-brand,.visual-copy,.visual-foot{position:relative;z-index:1}.visual-brand .brand-logo{width:54px;height:54px}.visual-brand strong{font-size:20px}.visual-brand small{color:#f1cf70}.visual-copy{max-width:560px}.visual-copy .section-number{color:#efd16f}.visual-copy h2{margin:15px 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(42px,4.7vw,72px);line-height:.98;letter-spacing:-.045em}.visual-copy h2 em{color:#efd16f}.visual-copy p{max-width:450px;margin:0;color:#d6ded9;font-size:14px;line-height:1.75}.visual-foot{display:flex;align-items:center;gap:14px;color:#d8c276;font-size:8px;font-weight:700;letter-spacing:.2em}.visual-foot i{width:34px;height:1px;background:#ffffff59}.auth-content{display:flex;align-items:center;padding:36px clamp(55px,8vw,130px);background:radial-gradient(circle at 95% 8%,rgba(214,167,53,.18),transparent 27%),var(--cream)}.mobile-brand{display:none}.form-wrap{max-width:550px}.register-form-wrap{max-width:620px}.register-page .auth-content{padding-block:24px}.register-page .form-wrap h1{font-size:40px}.register-page .form-intro{margin-bottom:18px}.register-page .auth-form{gap:13px}.register-page .field-box{height:49px}.register-page .primary-action{min-height:52px}.register-page .auth-switch{margin-top:16px;padding-top:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
