/* 로그인 화면. 기존 색과 글꼴(styles.css의 변수)을 그대로 쓴다. */
[hidden] { display: none !important; }
.auth-main { min-height: 100svh; display: grid; place-items: center; padding: 120px 1rem 4rem; background: linear-gradient(rgba(6,7,9,.75), rgba(6,7,9,.97)), url('assets/andras-hero.webp') center 30% / cover; }
.auth-card { width: min(100%, 460px); padding: 2.6rem 2.2rem; border: 1px solid rgba(184,154,96,.28); background: rgba(8,9,11,.82); backdrop-filter: blur(14px); }
.auth-card h1 { font-size: clamp(1.8rem, 5vw, 2.4rem); margin: .4rem 0 .6rem; }
.auth-lead, .auth-note { color: var(--muted); font-size: .9rem; }
.auth-preview { border: 1px dashed rgba(184,154,96,.5); color: var(--gold); padding: .6rem .8rem; font-size: .8rem; }
.auth-message { padding: .7rem .9rem; font-size: .88rem; border-left: 3px solid #a64043; background: rgba(140,31,36,.18); }
.auth-message.ok { border-color: var(--gold); background: rgba(184,154,96,.12); }
.auth-card form { display: flex; flex-direction: column; gap: .45rem; margin-top: 1rem; }
.auth-card label { font-size: .85rem; }
.auth-card label small { color: var(--muted); margin-left: .4rem; }
.auth-card input:not([type=checkbox]) { background: #111216; border: 1px solid #3a3a3a; color: white; padding: .8rem; margin-bottom: .5rem; }
.auth-card input:focus-visible, .auth-tabs button:focus-visible, .auth-card .button:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.auth-card .button { width: 100%; min-width: 0; margin-top: .6rem; opacity: 1; }
.auth-card .button[disabled] { opacity: .5; cursor: wait; }
.google-button { background: #fff; color: #1f1f1f; border-color: #fff; font-weight: 600; gap: .7rem; }
.google-logo { width: 20px; height: 20px; flex: none; }
.auth-fine { color: var(--muted); font-size: .74rem; line-height: 1.6; margin: .6rem 0 0; }
.auth-divider { display: flex; align-items: center; gap: .8rem; color: var(--muted); font-size: .78rem; margin: 1.2rem 0 .4rem; }
.auth-divider::before, .auth-divider::after { content: ''; flex: 1; height: 1px; background: var(--line); }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); margin-top: 1rem; }
.auth-tabs button { background: none; border: 0; color: var(--muted); padding: .8rem; cursor: pointer; border-bottom: 2px solid transparent; }
.auth-tabs button[aria-selected=true] { color: var(--paper); border-color: var(--gold); }
.auth-consent { font-size: .78rem; color: var(--muted); border: 1px solid var(--line); padding: .7rem .8rem; margin-top: .4rem; }
.auth-consent p { margin: 0 0 .5rem; }
.auth-check { display: flex; gap: .5rem; align-items: center; color: var(--paper); }
.auth-welcome { font-size: 1.15rem; margin-top: 1.4rem; }
.auth-welcome strong { color: var(--gold); }
.auth-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
@media (max-width: 760px) {
  .auth-card { padding: 2rem 1.2rem; }
  .auth-actions { grid-template-columns: 1fr; }
}
