/* Public landing page, scoped to the signed-out view. */
#login-view { --landing-gold:#e8cb75; --landing-ink:#f0f0ec; --landing-muted:#9b9ca3; position:fixed!important; inset:0!important; display:block!important; width:100%!important; height:100%!important; height:100dvh!important; padding:0!important; overflow-x:hidden!important; overflow-y:auto!important; background:#090a0c!important; color:var(--landing-ink); text-align:left; scroll-behavior:smooth; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
#login-view.hidden { display:none!important; }
#login-view::before,#login-view::after,#login-view .login-box::before,#login-view .login-box::after { content:none!important; }
#login-view .landing-shell { width:min(1200px,100%); margin:0 auto; padding:0 40px; }
#login-view a { color:inherit; text-decoration:none; }
#login-view a,#login-view button,#login-view summary { -webkit-tap-highlight-color:transparent; }
#login-view a:focus-visible,#login-view button:focus-visible,#login-view summary:focus-visible { outline:2px solid var(--landing-gold); outline-offset:5px; }
#login-view .landing-header { min-height:100px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid #25262b; }
#login-view .landing-brand { font-family:'Space Grotesk',sans-serif; font-size:29px; font-weight:700; letter-spacing:-1.3px; }
#login-view .landing-brand span { color:var(--landing-gold); }
#login-view .landing-nav { display:flex; align-items:center; gap:30px; font-size:12px; }
#login-view .landing-nav a { display:inline-flex; align-items:center; min-height:44px; color:#aaaab1; }
#login-view .landing-nav a:hover { color:var(--landing-ink); }
#login-view .landing-nav .landing-login-link { color:var(--landing-ink); gap:18px; }
#login-view .login-stage { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr); gap:clamp(40px,7vw,96px); width:100%; min-height:0; padding:74px 0 80px; align-items:center; place-items:unset; }
#login-view .landing-eyebrow { display:flex; align-items:center; gap:9px; font-size:10px; font-weight:700; letter-spacing:1.4px; line-height:1.6; color:var(--landing-muted); margin:0 0 22px; }
#login-view .landing-eyebrow>span { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--landing-gold); }
#login-view .landing-intro h1 { font-size:clamp(40px,4.7vw,64px); line-height:1.1; letter-spacing:-3px; font-weight:500; color:var(--landing-ink); margin:0 0 24px; text-shadow:none; }
#login-view .landing-intro h1 em { color:var(--landing-gold); font-style:normal; }
#login-view .landing-lead { max-width:465px; font-size:14px; line-height:1.85; color:var(--landing-muted); margin-bottom:22px; }
#login-view .landing-text-link { display:inline-flex; align-items:center; gap:24px; font-size:12px; font-weight:700; min-height:44px; }
#login-view .landing-preview { margin-top:36px; max-width:520px; border:1px solid #2a2b30; border-radius:14px; overflow:hidden; background:#101114; }
#login-view .landing-preview-top { display:flex; gap:12px; align-items:center; justify-content:space-between; padding:14px 18px; border-bottom:1px solid #24252a; font-size:11px; }
#login-view .landing-preview-top>span:first-child { display:flex; align-items:center; gap:9px; }
#login-view .landing-preview-icon { display:grid; place-items:center; width:22px; height:22px; background:#27241a; border-radius:5px; color:var(--landing-gold); font-weight:700; }
#login-view .landing-preview-caption { font-size:7px; letter-spacing:1px; color:#888a94; }
#login-view .landing-preview-body { display:grid; grid-template-columns:1.2fr 1fr; gap:18px; padding:21px 18px; }
#login-view .landing-preview-label { display:block; color:#92949c; font-size:8px; letter-spacing:1.4px; font-weight:700; margin-bottom:15px; }
#login-view .landing-preview-tasks>div { display:flex; align-items:center; gap:9px; font-size:10px; margin-top:12px; color:#b6b7be; }
#login-view .landing-task-check { flex:0 0 14px; height:14px; border-radius:4px; display:grid; place-items:center; background:#2f2b1c; border:1px solid #5c5031; color:var(--landing-gold); font-size:9px; }
#login-view .landing-task-check--open { background:none; border-color:#44464e; }
#login-view .landing-preview-note { border-left:1px solid #2a2b30; padding-left:19px; }
#login-view .landing-preview-note p { font-size:15px; line-height:1.5; letter-spacing:-.35px; }
#login-view .landing-preview-note>span:last-child { display:block; margin-top:10px; font-size:8px; color:#92949c; }
#login-view .landing-preview-island { display:flex; align-items:center; justify-content:center; gap:9px; padding:11px 14px; margin:0 auto 16px; width:max-content; max-width:calc(100% - 24px); border:1px solid #34353b; border-radius:30px; font-size:9px; background:#191a1e; }
#login-view .landing-island-dot { width:5px; height:5px; background:var(--landing-gold); border-radius:50%; }
#login-view .landing-island-separator { height:10px; width:1px; background:#45464b; margin:0 3px; }
#login-view .landing-preview-island>span:last-child { color:#a5a6ad; }
#login-view .login-box { width:100%!important; max-width:none!important; margin:0!important; padding:34px!important; background:#111215!important; border:1px solid #2a2b30!important; border-radius:18px!important; box-shadow:none!important; text-align:left; overflow:visible; align-self:center; }
#login-view .login-head { margin-bottom:30px; }
#login-view .login-head .landing-eyebrow { font-size:9px; margin-bottom:15px; }
#login-view .login-head h2 { font-size:24px; letter-spacing:-.8px; line-height:1.3; color:var(--landing-ink); margin-bottom:10px; }
#login-view .login-head>p:last-child { font-size:12px; line-height:1.8; color:var(--landing-muted); }
#login-view .form-group { display:flex; flex-direction:column-reverse; gap:9px; position:relative; margin-bottom:20px; }
#login-view .form-group label,#login-view .form-group input:focus+label,#login-view .form-group input:not(:placeholder-shown)+label { position:static; color:#b8b9c0; font-size:11px; font-weight:500; text-transform:none; pointer-events:auto; }
#login-view .form-group input { width:100%; min-height:48px; padding:12px 14px; border:1px solid #34353d; border-radius:8px; background:#0c0d10; color:#f0f0ec; font-size:16px; line-height:1.4; box-shadow:none; }
#login-view .form-group input:focus { border-color:var(--landing-gold); outline:2px solid #e8cb7520; outline-offset:1px; box-shadow:none; }
#login-view .landing-auth-actions { display:grid; gap:8px; }
#login-view .btn-primary.i2-btn-glow { display:flex; justify-content:space-between; align-items:center; width:100%; min-height:48px; border:1px solid var(--landing-gold); border-radius:8px; padding:13px 16px; background:var(--landing-gold)!important; color:#15140e!important; box-shadow:none!important; font-size:12px; font-weight:700; letter-spacing:0; text-transform:none; cursor:pointer; }
#login-view .btn-primary.i2-btn-glow:hover { background:#f0d991!important; transform:none; }
#login-view .btn-ghost { font-size:11px; line-height:1.5; min-height:44px; color:#b3b4bb!important; cursor:pointer; }
#login-view .landing-forgot { background:none; border:none; }
#login-view .landing-signup { border-top:1px solid #2a2b30; margin-top:10px; padding-top:18px; }
#login-view .landing-signup summary { font-size:10px; color:var(--landing-muted); cursor:pointer; min-height:44px; line-height:1.8; }
#login-view .landing-signup summary span { color:var(--landing-ink); }
#login-view .landing-signup>p { font-size:11px; line-height:1.8; color:var(--landing-muted); margin:0 0 18px; }
#login-view .btn-ghost.landing-register { width:100%; display:flex; justify-content:space-between; align-items:center; background:#1b1c21; border:1px solid #393a43!important; border-radius:8px; padding:12px 14px; color:var(--landing-ink)!important; }
#login-view .landing-login-note { font-size:9px; text-align:center; letter-spacing:.8px; color:#9698a1; margin-top:18px; }
#login-view .landing-features { padding:55px 0 60px; border-top:1px solid #25262b; scroll-margin-top:25px; }
#login-view .landing-section-heading .landing-eyebrow,#login-view .landing-about .landing-eyebrow { margin-bottom:14px; }
#login-view .landing-section-heading h2,#login-view .landing-about h2 { font-size:28px; font-weight:500; line-height:1.4; letter-spacing:-1px; color:var(--landing-ink); }
#login-view .landing-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:40px; }
#login-view .landing-feature-number { font-size:9px; letter-spacing:1px; color:var(--landing-gold); }
#login-view .landing-feature-grid h3 { font-size:15px; margin:16px 0 12px; font-weight:500; line-height:1.5; }
#login-view .landing-feature-grid p,#login-view .landing-about p:not(.landing-eyebrow) { font-size:12px; line-height:1.95; color:var(--landing-muted); }
#login-view .landing-about { padding:48px 0; border-top:1px solid #25262b; display:grid; grid-template-columns:1fr 1fr; gap:70px; scroll-margin-top:25px; }
#login-view .landing-about p+p { margin-top:20px; }
#login-view .landing-about strong { color:#c3c4ca; font-weight:500; }
#login-view .landing-roadmap { display:block; font-size:8px; font-weight:700; letter-spacing:1px; color:var(--landing-gold); margin-bottom:7px; }
#login-view .landing-footer { display:flex; align-items:center; justify-content:space-between; gap:22px; border-top:1px solid #25262b; padding:28px 0; color:#a0a1aa; font-size:10px; }
#login-view .landing-footer .landing-brand { color:var(--landing-ink); font-size:23px; }
#login-view .landing-footer a { min-height:44px; display:inline-flex; align-items:center; }
#login-view .landing-noscript { padding:20px 0; font-size:12px; color:#c3c4ca; line-height:1.8; }
@media(max-width:950px) {
    #login-view .landing-shell { padding:0 28px; }
    #login-view .login-stage { gap:34px; padding:48px 0 60px; grid-template-columns:minmax(0,1fr) minmax(300px,.92fr); }
    #login-view .landing-intro h1 { font-size:44px; letter-spacing:-2px; }
    #login-view .login-box { padding:25px!important; }
    #login-view .landing-preview-caption { display:none; }
    #login-view .landing-preview-body { grid-template-columns:1fr; }
    #login-view .landing-preview-note { display:none; }
    #login-view .landing-feature-grid { gap:22px; }
}
@media(max-width:700px) {
    #login-view .landing-shell { padding-left:max(22px,env(safe-area-inset-left)); padding-right:max(22px,env(safe-area-inset-right)); padding-bottom:env(safe-area-inset-bottom); }
    #login-view .landing-header { min-height:78px; gap:12px; }
    #login-view .landing-brand { font-size:26px; }
    #login-view .landing-nav { gap:14px; }
    #login-view .landing-nav a:not(.landing-login-link) { display:none; }
    #login-view .login-stage { grid-template-columns:minmax(0,1fr); gap:32px; padding:38px 0 42px; }
    #login-view .landing-intro h1 { font-size:clamp(38px,9.8vw,56px); letter-spacing:-2px; margin-bottom:20px; }
    #login-view .landing-lead { font-size:13px; max-width:520px; margin-bottom:12px; }
    #login-view .landing-intro .landing-eyebrow { margin-bottom:20px; font-size:9px; }
    #login-view .landing-preview { display:none; }
    #login-view .login-box { padding:26px 22px!important; max-width:none!important; border-radius:14px!important; scroll-margin-top:22px; }
    #login-view .login-head { margin-bottom:25px; }
    #login-view .landing-features { padding:36px 0; }
    #login-view .landing-section-heading h2,#login-view .landing-about h2 { font-size:25px; }
    #login-view .landing-feature-grid { grid-template-columns:minmax(0,1fr); margin-top:28px; gap:26px; }
    #login-view .landing-feature-grid article+article { border-top:1px solid #25262b; padding-top:25px; }
    #login-view .landing-feature-grid h3 { margin-top:10px; }
    #login-view .landing-about { grid-template-columns:minmax(0,1fr); gap:24px; padding:36px 0; }
    #login-view .landing-footer { flex-wrap:wrap; gap:10px 22px; padding:22px 0; }
    #login-view .landing-footer>span { flex-basis:calc(100% - 110px); text-align:right; }
}
@media(prefers-reduced-motion:reduce) { #login-view { scroll-behavior:auto; } #login-view * { animation:none!important; transition:none!important; } }
