:root{--bg:#090c10;--surface:#10151b;--raised:#151b22;--line:#29313a;--soft:#1d242c;--text:#f1f4f6;--text-muted:#9ba6b1;--faint:#788590;--accent:#e0ad45;--accent-strong:#f2c25f;--positive:#34c99a;--negative:#ef6b73;--sans:"Manrope",sans-serif;--mono:"IBM Plex Mono",monospace}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{min-height:100vh;margin:0;padding:48px 24px;display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}body::selection{background:var(--accent);color:#111}a{color:inherit}button,input{font:inherit}
.auth-wrapper{width:min(100%,1040px)!important;max-width:1040px!important;display:grid;grid-template-columns:minmax(300px,.82fr) minmax(420px,1.18fr);overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:8px}
.auth-brand{min-height:100%;padding:48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;position:relative;color:var(--text);text-decoration:none;background:#0c1015;border-right:1px solid var(--line)}
.auth-brand::before{content:"T2T";position:absolute;top:44px;left:48px;color:var(--accent);font:700 13px/1 var(--mono)}.auth-brand::after{content:"01 / TRADER WORKSPACE";position:absolute;top:44px;right:40px;color:var(--faint);font:500 10px/1 var(--mono)}
.auth-brand-badge{margin-bottom:18px;color:var(--accent-strong);font:700 11px/1.2 var(--mono);text-transform:uppercase}.auth-brand-title{max-width:330px;font-size:0}.auth-brand-title::before{content:"Data pasar untuk keputusan yang lebih terukur.";display:block;color:var(--text);font:700 38px/1.08 var(--sans);letter-spacing:-.03em}.auth-brand-title span{display:none}.auth-brand-sub{max-width:330px;margin-top:24px;color:var(--text-muted);font:400 13px/1.7 var(--sans)}
.auth-card{width:100%;padding:48px 52px;background:var(--surface);border:0;border-radius:0;box-shadow:none}.auth-card-title{margin:0;color:var(--text);font-size:29px;font-weight:700;line-height:1.2;letter-spacing:-.025em}.auth-card-desc{margin:10px 0 28px;color:var(--text-muted);font-size:13px;line-height:1.65}
.form-group{margin-bottom:17px;display:flex;flex-direction:column;gap:8px}.form-label{color:#c7cfd6;font:600 11px/1.4 var(--mono);text-transform:uppercase}.form-input,.search-input,select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;outline:none;background:#0c1116;color:var(--text);font-size:13px;transition:border-color .18s ease,background .18s ease}.form-input::placeholder,.search-input::placeholder{color:#626e78}.form-input:focus,.search-input:focus,select:focus{border-color:var(--accent);background:#0e141a;box-shadow:0 0 0 2px rgba(224,173,69,.12)}
.btn-primary,.btn-google,.social-card-btn,.btn-resend,.nav-btn,.btn-act{min-height:44px;border:1px solid var(--accent);border-radius:5px;cursor:pointer;font-size:12px;font-weight:800;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.btn-primary{width:100%;margin-top:8px;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent)!important;color:#17130a;box-shadow:none!important;letter-spacing:0}.btn-primary:hover{background:var(--accent-strong)!important;border-color:var(--accent-strong);transform:translateY(-1px);filter:none}.btn-primary:disabled,.btn-google:disabled,.btn-resend:disabled{opacity:.48;cursor:not-allowed;transform:none}
.btn-google{width:100%;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;color:var(--text);border-color:var(--line);box-shadow:none}.btn-google:hover{background:var(--raised);border-color:#485463;box-shadow:none;transform:none}
.auth-divider{margin:22px 0;display:flex;align-items:center;gap:12px;color:var(--faint);font:600 10px/1 var(--mono);text-transform:uppercase}.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:var(--line)}.auth-divider span{padding:0}.auth-footer-links{margin-top:24px;padding-top:20px;border-top:1px solid var(--soft);color:var(--text-muted);text-align:center;font-size:12px;line-height:1.8}.auth-footer-links a{color:var(--accent-strong);font-weight:700;text-decoration:none;text-underline-offset:4px}.auth-footer-links a:hover{text-decoration:underline}
.auth-alert{display:none;margin:0 0 18px;padding:11px 13px;border:1px solid;border-radius:5px;font-size:12px;line-height:1.5}.auth-alert.error{display:block;background:rgba(239,107,115,.08);border-color:rgba(239,107,115,.45);color:#ff9da3}.auth-alert.success{display:block;background:rgba(52,201,154,.08);border-color:rgba(52,201,154,.4);color:#75ddb9}
.otp-container{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:28px 0 20px}.otp-digit{width:100%;aspect-ratio:1;min-width:0;border:1px solid var(--line);border-radius:5px;outline:none;background:#0c1116;color:var(--text);text-align:center;font:700 22px/1 var(--mono)}.otp-digit:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(224,173,69,.12)}.email-badge{display:block;margin-top:9px;color:var(--accent-strong);font:600 12px/1.5 var(--mono);overflow-wrap:anywhere}.timer-info{margin-bottom:18px;color:var(--text-muted);text-align:center;font-size:11px}.timer-info .timer-digits{display:inline;margin:0;color:var(--text);font-size:inherit;letter-spacing:0}.btn-resend{width:100%;margin-top:10px;padding:0 14px;background:transparent;border-color:var(--line);color:var(--text-muted)}.btn-resend:not(:disabled):hover{border-color:var(--accent);color:var(--accent-strong)}
.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.social-card{min-height:150px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;border:1px solid var(--line)!important;border-radius:6px;background:#0c1116!important;color:var(--text);text-align:left}.social-card:hover{border-color:#46515c!important;background:#10171d!important}.social-card-header{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-bottom:16px}.social-card-tag{color:var(--accent);font:700 10px/1.2 var(--mono)}.social-card-title{color:var(--text);font-size:14px;font-weight:700}.social-card-desc{color:var(--text-muted);font-size:11px}.social-card-btn{width:100%;min-height:36px;padding:0 10px;display:flex;align-items:center;justify-content:center;border-color:var(--line);background:var(--raised);color:var(--text)}.social-card-btn:hover{border-color:var(--accent);color:var(--accent-strong)}
.timer-box{margin-bottom:22px;padding:22px;border:1px solid rgba(52,201,154,.36);border-radius:6px;background:rgba(52,201,154,.06);text-align:center}.timer-digits{margin:7px 0;color:var(--positive);font:700 28px/1.2 var(--mono);letter-spacing:0}.req-list{margin-bottom:22px;padding:18px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:6px;background:#0c1116}.req-item{display:flex;align-items:flex-start;gap:10px;color:#cbd2d8;font-size:12px;line-height:1.5}.req-badge{width:21px;height:21px;flex:0 0 21px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--accent);font:700 10px/1 var(--mono)}
:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}
@media(max-width:780px){body{padding:18px 14px;align-items:flex-start}.auth-wrapper{grid-template-columns:1fr}.auth-brand{min-height:210px;padding:78px 28px 28px;border-right:0;border-bottom:1px solid var(--line)}.auth-brand::before{top:26px;left:28px}.auth-brand::after{top:28px;right:28px}.auth-brand-title::before{font-size:29px}.auth-brand-sub{display:none}.auth-card{padding:32px 28px 36px}}
@media(max-width:480px){body{padding:0}.auth-wrapper{min-height:100vh;border:0;border-radius:0}.auth-brand{min-height:176px;padding:70px 22px 24px}.auth-brand::before{left:22px}.auth-brand::after{right:22px}.auth-brand-badge{margin-bottom:10px}.auth-brand-title::before{font-size:25px}.auth-card{padding:30px 22px 40px}.auth-card-title{font-size:25px}.social-grid{grid-template-columns:1fr}.social-card{min-height:132px}.otp-container{gap:5px}.otp-digit{font-size:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important}}
