/* styles-auth.css — extracted from styles.css (Auth Form) */

      /* ── TASK-1054: Auth Form (Login/Register) ── */
      .welcome-card--auth {
        max-width: 420px;
        width: 100%;
        padding: 48px 40px 36px;
      }
      .gn-auth-hidden { display: none !important; }
      .gn-auth-form {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-top: 24px;
        width: 100%;
      }
      .gn-auth-input {
        width: 100%;
        padding: 14px 16px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: var(--radius-md);
        color: var(--text-main);
        font-size: var(--fs-md);
        outline: none;
        transition: border-color 0.2s, box-shadow 0.2s;
        box-sizing: border-box;
        font-family: inherit;
      }
      .gn-auth-input:focus {
        border-color: rgba(var(--primary-rgb), 0.5);
        box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.1);
        outline: 2px solid transparent;
      }
      .gn-auth-input::placeholder {
        color: rgba(255, 255, 255, 0.25);
      }
      .gn-auth-error {
        color: var(--color-danger);
        font-size: var(--fs-base);
        min-height: 18px;
        text-align: left;
        padding-left: 4px;
      }
      .power-btn--wide {
        width: 100%;
        height: auto !important;
        padding: 14px 24px !important;
        border-radius: var(--radius-lg) !important;
        font-size: var(--fs-md) !important;
        font-weight: 600;
        letter-spacing: 0.02em;
        cursor: pointer;
        margin-top: 4px;
      }
      .power-btn--wide:disabled {
        opacity: 0.5;
        cursor: wait;
      }
      .gn-auth-toggle {
        text-align: center;
        margin-top: 8px;
      }
      .gn-auth-toggle a {
        color: rgba(var(--primary-rgb), 0.6);
        font-size: var(--fs-base);
        text-decoration: none;
        transition: color 0.2s;
      }
      .gn-auth-toggle a:hover {
        color: var(--primary-light);
      }
      .gn-auth-skip {
        text-align: center;
        margin-top: 4px;
      }
      .gn-auth-skip a {
        color: var(--text-muted);
        font-size: var(--fs-sm);
        text-decoration: none;
        transition: color 0.2s;
      }
      .gn-auth-skip a:hover {
        color: var(--text-dim);
      }
      /* Verification form */
      .gn-auth-verify-msg {
        color: var(--text-dim);
        font-size: var(--fs-base);
        text-align: center;
        margin-bottom: 16px;
      }
      .gn-auth-verify-msg--error { color: var(--color-danger); }
      .gn-auth-verify-code {
        text-align: center;
        font-size: var(--fs-xl);
        letter-spacing: 0.3em;
      }
      /* Light mode */
      body.light-mode .gn-auth-input {
        background: rgba(0, 0, 0, 0.04);
        border-color: rgba(0, 0, 0, 0.12);
      }
      body.light-mode .gn-auth-input::placeholder {
        color: rgba(0, 0, 0, 0.3);
      }
      body.light-mode .gn-auth-input:focus {
        box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.15);
      }
