    /* Page-scoped layout for a comfy, centered sign-in */
    html, body{ height:100%; background:var(--bg); color:var(--text); }
    .auth-wrap{
      min-height:100dvh;
      display:grid;
      place-items:center;
      padding:1.25rem;
    }
    .auth-card{
      width:min(420px, 100%);
      padding:1.1rem 1rem 1rem;
      background:var(--bg-elev);
      border:1px solid var(--border);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }
    .auth-card h1{ margin:.25rem 0 .25rem; font-size:1.35rem; }
    .auth-sub{ margin:0 0 .6rem; color:var(--muted); }

    /* Form */
    .form{ display:grid; gap:.8rem; margin-top:.2rem; }
    .form label span{ display:block; margin-bottom:.25rem; color:var(--text-soft); font-size:.92rem; }
    input[type="text"], input[type="password"]{
      width:100%;
      background:var(--bg-elev-2);
      color:var(--text);
      border:1px solid var(--border);
      border-radius:var(--radius-sm);
      padding:.45rem .55rem;
    }

    /* Password reveal control */
    .input-row{ position:relative; display:flex; align-items:center; }
    .input-row input{ padding-right:3.25rem; } /* room for toggle */
    .pw-toggle{
      position:absolute; right:.35rem; top:50%; transform:translateY(-50%);
      padding:.25rem .45rem; font-size:.82rem; border-radius:6px;
      background:var(--bg-elev-2); border:1px solid var(--border); color:var(--text);
      cursor:pointer;
    }
    .pw-toggle:hover{ background: color-mix(in srgb, var(--bg-elev-2), white 6%); }

    /* Alerts */
    .alert{
      color:var(--danger); background:color-mix(in srgb, var(--danger), transparent 90%);
      border:1px solid color-mix(in srgb, var(--danger), transparent 55%);
      border-radius:10px; padding:.6rem .7rem; margin:.6rem 0 .4rem;
    }

    .actions{ display:flex; align-items:center; gap:.6rem; margin-top:.25rem; }
    .actions .muted{ font-size:.92rem; color:var(--muted); }

    /* Use the same ghost-style theme button used on other pages */
    .login-theme {
      position:fixed; top:.75rem; right:.75rem; z-index:3000;
      display:inline-flex; align-items:center; justify-content:center; gap:.35rem;
      background:transparent;
      border:1px solid var(--border);
      color:var(--text);
      padding:.35rem .5rem;
      border-radius:8px;
    }
    .login-theme:hover{ background: color-mix(in srgb, var(--bg-elev-2), white 6%); }
    .login-theme svg{ width:18px; height:18px; display:block; }
    .auth-brand{ font-weight:700; color:var(--brand); letter-spacing:.01em; margin-bottom:.35rem; }
