.login-page{--cream:#fbfbf7;--cream-2:#f0f2ea;--sand:#dfe6d5;--clay:#3f6b4b;--clay-d:#2d5138;--brick:#1c3a26;--ink:#162218;--ink-2:#455549;--ink-3:#7a8a7f;--gold:#7c9c6e;--accent:#c67650;--line:rgba(22,34,24,.12);min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--cream);color:var(--ink);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased}@media(max-width:900px){.login-page{grid-template-columns:1fr}}.login-page a{color:inherit;text-decoration:none}.login-page .mono{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.login-page .form-side{display:flex;flex-direction:column;justify-content:space-between;padding:44px 60px;position:relative}@media(max-width:900px){.login-page .form-side{padding:32px 28px}}.login-page .topbar{display:flex;align-items:center;justify-content:space-between}.login-page .logo{font-family:Fraunces,serif;font-weight:400;font-size:28px;letter-spacing:-.01em;display:flex;align-items:baseline;gap:10px;line-height:1}.login-page .logo .j{font-style:italic;font-weight:300;font-size:38px;color:var(--ink);font-family:Kaushan Script,cursive}.login-page .logo .el{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.3em;color:var(--ink-2);text-transform:uppercase;font-weight:500}.login-page .topbar .back{font-size:12px;color:var(--ink-2);display:flex;align-items:center;gap:8px;transition:color .2s}.login-page .topbar .back:hover{color:var(--clay)}.login-page .form-wrap{max-width:440px;margin:0 auto;width:100%;padding:32px 0}.login-page .idx{color:var(--clay);margin-bottom:18px;display:flex;gap:14px;align-items:center}.login-page .idx .bar{width:28px;height:1px;background:var(--clay)}.login-page h1{font-family:Fraunces,serif;font-weight:300;font-size:clamp(38px,4.6vw,50px);line-height:.98;letter-spacing:-.025em;margin:0 0 14px}.login-page h1 em{font-style:italic;color:var(--clay)}.login-page .sub{color:var(--ink-2);font-size:14px;line-height:1.55;max-width:400px;margin:0 0 28px}.login-page .roles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:24px}.login-page .role{border:1px solid var(--line);background:transparent;border-radius:6px;padding:14px 12px;cursor:pointer;text-align:left;transition:all .2s;display:flex;flex-direction:column;gap:6px;position:relative;font-family:Inter,sans-serif;color:var(--ink)}.login-page .role:hover{border-color:var(--ink-2);background:hsla(75,24%,93%,.4)}.login-page .role.active{border-color:var(--ink);background:var(--ink);color:var(--cream)}.login-page .role.active .r-sub{color:hsla(60,33%,98%,.7)}.login-page .role.active .r-tag{color:var(--gold)}.login-page .role .r-tag{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--clay)}.login-page .role .r-name{font-family:Fraunces,serif;font-weight:300;font-size:18px;letter-spacing:-.01em;line-height:1}.login-page .role .r-sub{font-size:10px;color:var(--ink-3);line-height:1.3}.login-page form{display:flex;flex-direction:column;gap:18px}.login-page .field{display:flex;flex-direction:column;gap:6px;position:relative}.login-page .field label{font-size:11px;font-family:JetBrains Mono,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.login-page .field input{background:transparent;border:none;border-bottom:1px solid var(--line);padding:10px 0 12px;font-size:16px;color:var(--ink);font-family:Inter,sans-serif;outline:none;transition:border-color .2s;font-weight:400}.login-page .field input:focus{border-bottom-color:var(--clay)}.login-page .field input::placeholder{color:rgba(69,85,73,.45)}.login-page .field .reveal{position:absolute;right:0;bottom:12px;font-size:11px;color:var(--ink-2);cursor:pointer;background:none;border:none;padding:4px;font-family:Inter,sans-serif}.login-page .field .reveal:hover{color:var(--clay)}.login-page .row{display:flex;align-items:center;justify-content:space-between;margin-top:2px;flex-wrap:wrap;gap:12px}.login-page .check{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.login-page .check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border:1px solid var(--ink-2);border-radius:2px;position:relative;cursor:pointer;margin:0}.login-page .check input:checked{background:var(--clay);border-color:var(--clay)}.login-page .check input:checked:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid var(--cream);border-width:0 2px 2px 0;transform:rotate(45deg)}.login-page .forgot{font-size:13px;color:var(--clay);border-bottom:1px solid transparent;transition:border .2s}.login-page .forgot:hover{border-bottom-color:var(--clay)}.login-page .login-error{font-size:13px;color:#b1442a;background:rgba(198,118,80,.08);border:1px solid rgba(198,118,80,.3);padding:10px 14px;border-radius:4px}.login-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 28px;border-radius:999px;font-size:14px;font-weight:500;transition:all .25s ease;cursor:pointer;border:none;font-family:Inter,sans-serif}.login-page .btn.primary{background:var(--ink);color:var(--cream);width:100%;margin-top:8px}.login-page .btn.primary:hover:not(:disabled){background:var(--clay);transform:translateY(-1px)}.login-page .btn.primary:disabled{opacity:.6;cursor:not-allowed}.login-page .btn .arrow{transition:transform .2s}.login-page .btn:hover:not(:disabled) .arrow{transform:translateX(4px)}.login-page .signup{font-size:13px;color:var(--ink-2);text-align:center;margin-top:16px}.login-page .signup a{color:var(--clay);border-bottom:1px solid transparent;transition:border .2s}.login-page .signup a:hover{border-bottom-color:var(--clay)}.login-page .footmeta{display:flex;justify-content:space-between;align-items:center;color:var(--ink-2);font-size:11px;font-family:JetBrains Mono,monospace;letter-spacing:.14em;text-transform:uppercase;gap:10px;flex-wrap:wrap}.login-page .visual-side{background:var(--clay-d);color:var(--cream);padding:44px 60px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}@media(max-width:900px){.login-page .visual-side{display:none}}.login-page .visual-side:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 80% 20%,rgba(124,156,110,.35),transparent 60%),radial-gradient(ellipse 70% 50% at 10% 90%,rgba(28,58,38,.8),transparent 70%),linear-gradient(160deg,#3f6b4b,#2d5138 50%,#1c3a26)}.login-page .visual-side:after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,hsla(38,50%,91%,.04) 0 1px,transparent 1px 24px)}.login-page .visual-side>*{position:relative;z-index:2}.login-page .vmeta{display:flex;justify-content:space-between;color:hsla(60,33%,98%,.7);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.login-page .visual-core{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:60px 0}.login-page .plan-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid hsla(60,33%,98%,.25);border-radius:999px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:hsla(60,33%,98%,.9);margin-bottom:28px;align-self:flex-start}.login-page .plan-chip .dot{width:6px;height:6px;border-radius:99px;background:var(--gold);box-shadow:0 0 12px var(--gold);animation:login-pulse 2.4s ease-in-out infinite}@keyframes login-pulse{0%,to{opacity:.6}50%{opacity:1}}.login-page .quote{font-family:Fraunces,serif;font-weight:300;font-size:clamp(30px,3.2vw,42px);line-height:1.08;letter-spacing:-.02em;color:var(--cream);max-width:540px;margin:0}.login-page .quote em{font-style:italic;color:var(--gold)}.login-page .quote-by{margin-top:28px;display:flex;align-items:center;gap:14px;color:hsla(60,33%,98%,.75);font-size:13px}.login-page .quote-by .avatar{width:36px;height:36px;border-radius:99px;background:linear-gradient(135deg,var(--gold),var(--clay));display:flex;align-items:center;justify-content:center;font-size:18px}.login-page .qname,.login-page .quote-by .avatar{font-family:Fraunces,serif;font-style:italic;color:var(--cream)}.login-page .qname{font-size:15px}.login-page .metric-card{position:absolute;right:60px;top:140px;background:hsla(60,33%,98%,.06);border:1px solid hsla(60,33%,98%,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:18px 22px;border-radius:2px;width:240px}.login-page .metric-card .mc-label{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:hsla(60,33%,98%,.6);margin-bottom:6px}.login-page .metric-card .mc-val{font-family:Fraunces,serif;font-weight:300;font-size:34px;line-height:1;color:var(--cream);letter-spacing:-.02em}.login-page .metric-card .mc-val .unit{font-size:13px;color:var(--gold);margin-left:4px}.login-page .metric-card .mc-trend{margin-top:8px;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--gold)}.login-page .metric-card .mc-bars{display:flex;align-items:flex-end;gap:3px;height:28px;margin-top:12px}.login-page .metric-card .mc-bars span{flex:1 1;background:hsla(60,33%,98%,.28);border-radius:1px}.login-page .metric-card .mc-bars span:first-child{height:28%}.login-page .metric-card .mc-bars span:nth-child(2){height:38%}.login-page .metric-card .mc-bars span:nth-child(3){height:34%}.login-page .metric-card .mc-bars span:nth-child(4){height:52%}.login-page .metric-card .mc-bars span:nth-child(5){height:48%}.login-page .metric-card .mc-bars span:nth-child(6){height:70%}.login-page .metric-card .mc-bars span:nth-child(7){height:82%}.login-page .metric-card .mc-bars span:nth-child(8){height:100%;background:var(--gold)}.login-page .vfoot{display:flex;justify-content:space-between;align-items:flex-end;color:hsla(60,33%,98%,.7);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;gap:20px}.login-page .vfoot .vf-label{margin-bottom:8px}.login-page .vfoot .big{font-family:Fraunces,serif;font-style:italic;font-weight:300;font-size:56px;color:var(--cream);letter-spacing:-.02em;line-height:1;text-transform:none}