/* FutiaSpace — pages/auth.css (landing, login, signup, reset) */
.landing,.auth{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:calc(var(--safe-top) + 44px) var(--sp-6) calc(var(--safe-bottom) + 28px);
  background:radial-gradient(120% 55% at 50% -5%,rgba(45,125,50,.45),transparent 62%),radial-gradient(90% 40% at 100% 100%,rgba(232,119,34,.25),transparent 62%),var(--bg-base)}
body.light-mode .landing,body.light-mode .auth{background:radial-gradient(120% 55% at 50% -5%,rgba(87,187,97,.35),transparent 62%),radial-gradient(90% 40% at 100% 100%,rgba(232,119,34,.2),transparent 62%),var(--bg-base)}
.landing>*,.auth>*{width:100%;max-width:400px}

/* Landing */
.landing__brand,.auth__brand{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center;margin-bottom:var(--sp-8)}
.auth__brand{margin-bottom:var(--sp-5)}
.landing__logo,.auth__logo{display:grid;place-items:center;width:92px;height:92px;border-radius:30px;background:var(--gradient-story);color:#fff;
  box-shadow:0 20px 44px -12px rgba(232,119,34,.55),inset 0 1px 0 rgba(255,255,255,.35)}
.auth__logo{width:64px;height:64px;border-radius:20px}
.landing__brand h1{font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.04em;line-height:1}
.landing__tag{color:var(--text-secondary);font-size:var(--fs-md);font-weight:500}
.landing__features{display:flex;flex-direction:column;gap:var(--sp-3);margin-bottom:var(--sp-8)}
.landing__feature{display:flex;align-items:center;gap:var(--sp-3);padding:12px 14px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-surface) 82%,transparent);
  border:1px solid var(--border-subtle);backdrop-filter:blur(10px);font-size:var(--fs-sm);font-weight:600}
.landing__feature svg{padding:9px;box-sizing:content-box;border-radius:13px;background:var(--green-tint);color:var(--accent-text)}
.landing__feature:nth-child(even) svg{background:var(--orange-tint);color:var(--orange-text)}
.landing__feature:nth-child(3n) svg{background:var(--sea-tint);color:var(--sea-text)}
.landing__actions{display:flex;flex-direction:column;gap:var(--sp-3)}.landing__actions .btn{width:100%}
.landing__actions .btn-primary{background:var(--gradient-story);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 10px 28px -8px rgba(232,119,34,.6)}
.landing__actions .btn-primary:hover:not(:disabled){filter:brightness(1.08)}
.landing__footer{margin-top:auto;padding-top:var(--sp-8);text-align:center;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.6}
.landing__version{display:block;margin-top:4px;opacity:.7;font-weight:700}

/* Auth */
.auth>h1{text-align:center;font-size:var(--fs-2xl)}
.auth__sub{text-align:center;color:var(--text-secondary);font-size:var(--fs-sm);margin:6px 0 var(--sp-6)}
.auth__form{display:flex;flex-direction:column;padding:var(--sp-5);border-radius:var(--radius-xl);background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--highlight),var(--shadow-md)}
.auth__submit{width:100%;min-height:52px;margin-top:var(--sp-2);font-size:var(--fs-md);font-weight:800}
.auth__link{display:block;margin-top:var(--sp-4);text-align:center;font-size:var(--fs-sm);font-weight:700;color:var(--orange-text)}
.auth__link:hover{text-decoration:underline}
.auth__switch{margin-top:var(--sp-5);text-align:center;font-size:var(--fs-sm);color:var(--text-secondary)}
.auth__switch a{color:var(--accent-text);font-weight:800;margin-left:4px}
.auth__switch a:hover{text-decoration:underline}
.signup-photo{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px dashed var(--border-strong)}
.signup-photo__preview{display:grid;place-items:center;width:92px;height:92px;overflow:hidden;border-radius:50%;background:var(--bg-input);border:3px solid var(--bg-surface);box-shadow:0 0 0 2px var(--c-green-light);color:var(--text-muted);cursor:pointer;transition:box-shadow var(--t-fast)}
.signup-photo__preview:hover{box-shadow:0 0 0 3px var(--c-orange)}
.signup-photo__preview img{width:100%;height:100%;object-fit:cover}
@media (min-width:768px){.landing,.auth{justify-content:center}.landing__footer{margin-top:var(--sp-6)}}