.auth { background: radial-gradient(50rem 30rem at 85% -10%, var(--accent-soft), transparent 70%), radial-gradient(40rem 26rem at -10% 110%, var(--accent-soft), transparent 70%); min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.2rem; padding: 1rem; }
.auth-brand { display: flex; align-items: center; gap: .6rem; font-size: 1.6rem; font-weight: 800; letter-spacing: -.02em; } .auth-brand img { width: 2.6rem; height: 2.6rem; }
.auth-card { background: var(--panel); border: 1px solid var(--line); border-radius: 14px; padding: 1.8rem; width: min(26rem, 100%);
  box-shadow: var(--shadow-lg); display: flex; flex-direction: column; animation: pop .35s var(--ease); }
.auth-card h1 { margin: 0 0 .3rem; font-size: 1.35rem; } .auth-card .muted { margin: 0 0 1.2rem; }
.auth-card input { width: 100%; font-size: 1rem; }
.btn.big { padding: .75em 1em; font-size: 1rem; margin-top: .3rem; }
.auth-err { background: var(--bad-soft); color: var(--bad); border-radius: 8px; padding: .5rem .8rem; font-size: .9rem; margin: 0 0 .8rem; }
.auth-ok { background: var(--good-soft); color: var(--good); border-radius: 8px; padding: .6rem .8rem; font-size: .92rem; margin: 0 0 .8rem; line-height: 1.5; }
#foot a { color: var(--accent); font-weight: 600; }
.auth-lang button { border: 0; background: none; color: var(--muted); cursor: pointer; } .auth-lang button.on { color: var(--accent); font-weight: 600; }
#foot { margin: 1rem 0 0; }
.auth-legal { max-width: 26rem; text-align: center; margin: 1rem auto 0; line-height: 1.5; } .auth-legal a { color: var(--muted); text-decoration: underline; } .auth-legal a:hover { color: var(--accent); }
.cc-app { position: fixed; left: 16px; right: 16px; bottom: 16px; margin: 0 auto; max-width: 40rem; display: flex; gap: 1rem; align-items: center; background: var(--panel); border: 1px solid var(--line); border-radius: 14px; padding: .8rem 1rem; box-shadow: var(--shadow-lg); z-index: 50; font-size: .88rem; } .cc-app p { margin: 0; flex: 1; color: var(--muted); } .cc-app a { color: var(--accent); }
body:has(.cc-app) .auth { padding-bottom: 8rem; }
