:root { color-scheme: dark; --ink:#080a10; --surface:#11151e; --white:#fffdf7; --muted:#9ca5b2; --yellow:#f4c63d; --line:rgba(255,255,255,.13); }
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;min-width:280px;min-height:100%;background:var(--ink);color:var(--white);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%} button,input{font:inherit}[hidden]{display:none!important}
.login-shell{min-height:100svh;display:grid;grid-template-columns:minmax(480px,1.15fr) minmax(430px,.85fr)}
.login-visual{position:relative;overflow:hidden;min-height:720px;padding:38px clamp(30px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 70% 72%,rgba(232,78,57,.35),transparent 28%),radial-gradient(circle at 80% 35%,rgba(244,198,61,.2),transparent 23%),linear-gradient(140deg,#111827,#090b12 70%);isolation:isolate}
.visual-grid{position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(120deg,black,transparent 75%)}
.brand{display:flex;align-items:center;gap:10px;width:max-content;font-weight:800;letter-spacing:.14em}
.brand img{width:36px;height:36px;object-fit:contain;border-radius:8px}.brand em{margin-left:5px;padding-left:15px;border-left:1px solid rgba(255,255,255,.22);color:var(--yellow);font-size:.67rem;font-style:normal;font-weight:650;letter-spacing:.12em;text-transform:uppercase}
.visual-copy{position:relative;z-index:3;max-width:650px;margin:80px 0 70px}.visual-copy>p,.eyebrow{margin:0 0 17px;color:var(--yellow);font-size:.67rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.visual-copy h1{margin:0;font-size:clamp(4rem,7.5vw,7.5rem);line-height:.84;letter-spacing:-.075em}.visual-copy>span{display:block;max-width:450px;margin-top:28px;color:#aeb7c4;font-size:1rem;line-height:1.6}
.card-stack{position:absolute;right:-8%;bottom:-20%;width:min(520px,48vw);height:560px;opacity:.75;transform:rotate(8deg)}.card-stack img{position:absolute;left:50%;bottom:0;width:270px;max-height:500px;object-fit:contain;filter:drop-shadow(0 28px 25px rgba(0,0,0,.5));transform-origin:50% 100%}.card-stack img:nth-child(1){transform:translateX(-90%) rotate(-15deg)}.card-stack img:nth-child(2){z-index:2;transform:translateX(-50%)}.card-stack img:nth-child(3){transform:translateX(-10%) rotate(16deg)}
.login-panel{position:relative;min-height:720px;padding:38px clamp(32px,6vw,90px);display:flex;flex-direction:column;justify-content:center;background:#0a0c12}.back-link{position:absolute;top:42px;left:clamp(32px,6vw,90px);color:#9099a7;font-size:.78rem}.back-link:hover{color:#fff}
.form-wrap{width:min(100%,440px);margin:auto}.form-wrap h2{margin:0;font-size:clamp(2.8rem,5vw,4.7rem);line-height:.95;letter-spacing:-.065em}.form-intro{margin:22px 0 34px;color:var(--muted);font-size:.95rem;line-height:1.6}
form{display:grid;gap:18px}label{display:grid;gap:8px}label>span{color:#aeb6c1;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}input{width:100%;height:52px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#11151e;color:#fff;outline:0}input:focus{border-color:var(--yellow);box-shadow:0 0 0 2px rgba(244,198,61,.12)}
.password-field{position:relative}.password-field input{padding-right:70px}.password-field button{position:absolute;right:7px;top:7px;height:38px;padding:0 12px;border:0;border-radius:8px;background:rgba(255,255,255,.06);color:#bac2cd;cursor:pointer;font-size:.72rem}.password-field button:hover{background:rgba(255,255,255,.11);color:#fff}
.login-error{margin:0;padding:11px 13px;border:1px solid rgba(231,71,61,.28);border-radius:10px;background:rgba(231,71,61,.09);color:#ef7b73;font-size:.78rem}.login-button{min-height:54px;margin-top:4px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:13px;background:var(--yellow);color:#17140a;cursor:pointer;font-weight:800;transition:transform .2s ease,background .2s ease}.login-button:hover{background:#ffdc63;transform:translateY(-1px)}
.login-button:disabled{cursor:wait;opacity:.7;transform:none}.password-rules{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 18px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:11px;color:#7d8794;font-size:.69rem;list-style:none}.password-rules li::before{margin-right:7px;color:var(--yellow);content:'•'}.secondary-action{display:block;margin-top:-4px;color:#8f99a7;font-size:.76rem;text-align:center}.secondary-action:hover{color:#fff}.secondary-button{width:100%;padding:0;border:0;background:transparent;cursor:pointer}.local-note{margin:26px 0 0;color:#697382;font-size:.73rem}.local-note span{margin-right:7px;color:#4eae78}.copyright{position:absolute;bottom:28px;margin:0;color:#596270;font-size:.68rem}
:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}::selection{background:var(--yellow);color:#111}
@media(max-width:880px){.login-shell{display:block}.login-visual{min-height:400px;padding:28px 24px}.visual-copy{margin:80px 0 25px}.visual-copy h1{font-size:4.7rem}.visual-copy>span{max-width:360px}.card-stack{right:-10%;bottom:-48%;width:390px;opacity:.45}.login-panel{min-height:650px;padding:100px 24px 80px}.back-link{top:34px;left:24px}.copyright{left:24px}}
@media(max-width:520px){.login-visual{min-height:350px}.brand em{font-size:.54rem;padding-left:10px}.visual-copy h1{font-size:3.8rem}.visual-copy>span{font-size:.9rem}.card-stack{display:none}.login-panel{min-height:620px}.form-wrap h2{font-size:3rem}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
