:root{--ink:#101316;--panel:#181d21;--paper:#f1f4f5;--muted:#96a1a8;--line:rgba(228,235,238,.15);--orange:#f04b0f;--green:#53d68b}
*{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;color:var(--paper);background:var(--ink);font-family:"Arial Narrow","Aptos Narrow","Helvetica Neue",Arial,sans-serif}
.login-shell{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr);min-height:100vh}
.brand-panel,.form-panel{padding:clamp(2rem,5vw,5rem)}
.brand-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-right:1px solid var(--line);background:radial-gradient(circle at 82% 18%,rgba(240,75,15,.17),transparent 31%),linear-gradient(145deg,#151a1e,#0e1113 68%)}
.brand-panel:after{position:absolute;right:-12rem;bottom:-15rem;width:34rem;height:34rem;border:1px solid rgba(240,75,15,.2);border-radius:50%;content:"";box-shadow:0 0 0 5rem rgba(240,75,15,.025),0 0 0 10rem rgba(240,75,15,.018)}
.logo-link{position:relative;z-index:1;width:min(330px,75%)}.logo-link img{display:block;width:100%}
.brand-panel>div{position:relative;z-index:1;max-width:38rem;margin:5rem 0}
.eyebrow{margin:0 0 1rem;color:#ff6a2e;font-size:.75rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
h1,h2{margin:0;line-height:.95;letter-spacing:-.045em}h1{font-size:clamp(3.3rem,6.4vw,7.6rem)}h2{font-size:clamp(2.6rem,4vw,4.6rem)}
.brand-copy,.intro{color:var(--muted);line-height:1.6}.brand-copy{max-width:32rem;margin:1.8rem 0 0;font-size:1.05rem}
.security-note{position:relative;z-index:1;display:flex;align-items:center;gap:.65rem;margin:0;color:var(--muted);font-size:.85rem}.security-note span{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 15px var(--green)}
.form-panel{display:grid;place-items:center}.login-card{width:min(100%,480px)}.intro{margin:1rem 0 2.5rem}
form{display:grid;gap:1.2rem}label{display:grid;gap:.55rem}label span{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
input{width:100%;min-height:56px;padding:.9rem 1rem;border:1px solid var(--line);border-radius:3px;outline:0;color:var(--paper);background:var(--panel);font:inherit;font-size:1.05rem;transition:border-color .2s,box-shadow .2s}input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(240,75,15,.12)}
button{display:flex;align-items:center;justify-content:space-between;min-height:58px;margin-top:.4rem;padding:.9rem 1.2rem;border:0;border-radius:3px;color:white;background:var(--orange);font:inherit;font-size:1rem;font-weight:800;cursor:pointer;transition:filter .2s,transform .2s}button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px)}button span{font-size:1.35rem}
.privacy{margin:1.4rem 0 0;color:var(--muted);font-size:.8rem}.message{margin:0 0 1.2rem;padding:.85rem 1rem;border-left:3px solid}.message.error{border-color:#ff9b75;color:#ffd2c2;background:rgba(240,75,15,.1)}.message.success{border-color:var(--green);color:#baf0d0;background:rgba(83,214,139,.08)}
@media(max-width:850px){.login-shell{grid-template-columns:1fr}.brand-panel{min-height:40vh;border-right:0;border-bottom:1px solid var(--line)}.brand-panel>div{margin:4rem 0 2rem}.brand-copy{display:none}.form-panel{padding-top:3.5rem;padding-bottom:4rem}}
@media(max-width:520px){.brand-panel,.form-panel{padding:1.5rem}.brand-panel{min-height:34vh}.brand-panel>div{margin:3rem 0 1rem}h1{font-size:3rem}.security-note{display:none}.form-panel{padding-top:3rem;padding-bottom:3rem}}
