
:root{--copper:#c45f15;--copper-dark:#8f3f0e;--copper-hover:#9d4a0d;--navy:#1a2744;--navy-dark:#0f1724;--ink:#1a1a1a;--ink-secondary:#555;--ink-muted:#6b7280;--border:#e0e0e0;--surface:#fff;--bg-right:#faf9f6;--error-bg:#fef2f2;--error-border:#fecaca;--error-text:#dc2626;--google-hover:#f5f5f5}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;color:var(--ink);height:100vh;display:flex;background:var(--surface)}
.split{display:flex;width:100%;min-height:100vh}
.split-left{flex:1;background:linear-gradient(135deg,var(--navy-dark) 0,var(--navy) 100%);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px;position:relative;overflow:hidden}
.split-left::before{content:'';position:absolute;top:-50%;right:-30%;width:600px;height:600px;background:radial-gradient(circle,rgba(196,95,21,.15) 0,transparent 70%);border-radius:50%}
.split-left::after{content:'';position:absolute;bottom:-30%;left:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(196,95,21,.1) 0,transparent 70%);border-radius:50%}
.left-content{position:relative;z-index:1;max-width:480px}
.left-logo{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:800;margin-bottom:40px}
.left-logo .accent{color:var(--copper)}
.left-content h2{font-size:32px;line-height:1.2;margin-bottom:16px;font-weight:800}
.left-content p{font-size:15px;color:rgba(255,255,255,.65);line-height:1.6;margin-bottom:36px}
.benefits{display:grid;gap:20px}
.benefit-row{display:flex;align-items:center;gap:14px}
.benefit-icon{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.benefit-text{font-size:14px;line-height:1.4}
.benefit-text strong{display:block;color:#fff;font-weight:600}
.benefit-text span{color:rgba(255,255,255,.55);font-size:13px}
.split-right{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;background:var(--surface)}
.auth-card{width:100%;max-width:400px}
.auth-card .logo{margin-bottom:32px}
.auth-card .logo h1{font-size:28px;font-weight:800;color:var(--navy);letter-spacing:-.5px}
.auth-card .logo h1 span{color:var(--copper)}
.auth-card .logo p{font-size:14px;color:var(--ink-muted);margin-top:4px}
.auth-card h2{font-size:22px;font-weight:700;margin-bottom:4px;color:var(--ink)}
.auth-card .sub{font-size:14px;color:var(--ink-muted);margin-bottom:28px}
.input{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;transition:.2s;background:var(--surface);font-family:inherit;color:var(--ink)}
.input:focus{outline:2px solid var(--copper);outline-offset:2px;border-color:var(--copper);box-shadow:0 0 0 3px rgba(196,95,21,.12)}
.input::placeholder{color:var(--ink-muted)}
label{display:block;font-size:13px;font-weight:600;color:var(--ink-secondary);margin-bottom:4px}
label:not(:first-of-type){margin-top:16px}
.input-group{display:flex;align-items:center;gap:0}
.input-group .input{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}
.input-group .toggle-password{width:44px;height:44px;border:1.5px solid var(--border);border-left:none;border-radius:0 10px 10px 0;background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink-muted);transition:.2s;flex-shrink:0}
.input-group .toggle-password:hover{color:var(--copper)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px;border-radius:10px;font-size:15px;font-weight:700;border:none;cursor:pointer;transition:.2s;font-family:inherit;text-decoration:none}
.btn-primary{background:var(--copper);color:#fff}
.btn-primary:hover{background:var(--copper-hover);transform:translateY(-1px)}
.btn-google{background:var(--surface);color:var(--ink-secondary);border:1.5px solid var(--border);margin-bottom:16px;gap:10px}
.btn-google:hover{background:var(--google-hover)}
.divider{display:flex;align-items:center;gap:12px;margin:20px 0;font-size:13px;color:var(--ink-muted)}
.divider::before,.divider::after{content:'';flex:1;border-bottom:1px solid var(--border)}
.forgot{text-align:center;margin-top:12px;font-size:13px}
.forgot a{color:var(--ink-muted);text-decoration:none;display:inline-block;padding:12px 8px}
.forgot a:hover{color:var(--copper)}
.signup{text-align:center;margin-top:16px;font-size:14px;color:var(--ink-muted)}
.signup a{color:var(--copper);font-weight:700;text-decoration:none}
.error{border:1px solid var(--error-border);background:var(--error-bg);color:var(--error-text);padding:12px 14px;border-radius:10px;font-size:13px;margin-bottom:20px;font-weight:500}
@media(max-width:900px){
.split-left{display:none}
.split-right{padding:24px}
.auth-card{margin:0 auto}
body{background:var(--bg-right)}
.split-right{background:var(--bg-right)}
.auth-card .logo{text-align:center}
.forgot a{padding:14px 8px}
.signup a{padding:14px 4px;display:inline-block}
}
#login-loading{position:fixed;inset:0;z-index:10000;background:rgba(15,23,36,.55);display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
#login-loading.active{display:flex}
#login-loading .ll-card{background:#fff;border-radius:16px;padding:28px 36px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 16px 48px rgba(15,23,42,.25)}
#login-loading .spinner{width:34px;height:34px;border:3px solid rgba(196,95,21,.2);border-top-color:#c45f15;border-radius:50%;animation:af-spin .7s linear infinite}
#login-loading p{margin:0;font-size:14px;font-weight:600;color:#1a2744}
@keyframes af-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#login-loading .spinner{animation:none}}

.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9000;background:#1a2744;color:rgba(255,255,255,.85);padding:14px 20px;display:none;box-shadow:0 -4px 20px rgba(0,0,0,.2);text-align:center;font-size:13px;line-height:1.6}.cookie-banner a{color:#c45f15;font-weight:600}.cookie-banner .cookie-actions{display:inline-flex;gap:10px;margin-left:12px;vertical-align:middle}.btn-cookie{background:#c45f15;color:#fff;border:none;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px}.btn-cookie:hover{background:#9d4a0d}.btn-cookie-ghost{background:transparent;color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.35)}.btn-cookie-ghost:hover{background:rgba(255,255,255,.08);color:#fff}@media(max-width:600px){.cookie-banner .cookie-actions{display:flex;justify-content:center;gap:10px;margin-left:0;margin-top:8px}}