/* LitiGauge — shared styles for the standalone pre-login pages: sign in, forgot /
   reset password, email verification, signup-complete.

   Two layouts, chosen by a class on <body>:
     body.auth    a form card (sign in, password reset)
     body.status  a centred message card (verification results, confirmations)

   Kept in one file so a visual or accessibility fix lands on every page at once.
   Text is never smaller than 12px. */
:root{color-scheme:dark}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;background:#141416;color:#e8e9f0;
     min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
a{color:#3b82f6;text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ── shared pieces ─────────────────────────────────────────── */
.box{background:#1c1c1e;border:1px solid #3a3a3c;border-radius:16px}
.btn{padding:12px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:700;
     cursor:pointer;font-family:inherit;transition:filter .15s}
.btn:hover{filter:brightness(1.12)}
.btn:disabled{opacity:.6;cursor:default}
.err{background:rgba(255,95,110,.1);border:1px solid rgba(255,95,110,.3);color:#ff8791;padding:10px 12px;
     border-radius:8px;font-size:13px;line-height:1.5}
.ok{background:rgba(52,199,89,.1);border:1px solid rgba(52,199,89,.3);color:#34c759;padding:10px 12px;
    border-radius:8px;font-size:13px;line-height:1.5}

/* ── body.auth : form card ─────────────────────────────────── */
.auth .box{padding:44px 40px;width:380px;max-width:100%;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.auth .logo{font-size:24px;font-weight:800;color:#3b82f6;margin-bottom:4px}
.auth .sub{font-size:12px;color:#8e91a6;text-transform:uppercase;letter-spacing:1px;margin-bottom:24px}
.auth .lead{font-size:13px;color:#9a9db0;margin-bottom:20px;line-height:1.5}
.auth .fld{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.auth .fld label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#8e91a6}
.auth .fld input{background:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#e8e9f0;padding:11px 13px;
                 font-size:14px;outline:none;font-family:inherit}
.auth .fld input:focus{border-color:#3b82f6}
.auth .btn{width:100%;margin-top:6px}
.auth .err,.auth .ok{margin-bottom:14px}
.auth .hint{font-size:12px;color:#8e91a6;text-align:center;margin-top:18px;line-height:1.6}
.auth .idhint{font-size:12px;color:#ffb454;margin-top:6px;line-height:1.5}
.auth .back{font-size:12px;color:#8e91a6;text-align:center;margin-top:18px}
.linkbtn{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-align:inherit}
.auth .back a,.auth .back .linkbtn{color:#9a9db0}
.auth .back a:hover,.auth .back .linkbtn:hover{color:#3b82f6;text-decoration:none}
.auth .totp-icon{font-size:36px;text-align:center;margin-bottom:16px}
.auth .totp-hint{font-size:13px;color:#9a9db0;text-align:center;margin-bottom:20px;line-height:1.6}
.auth .totp-input{text-align:center;font-size:28px;font-weight:700;letter-spacing:8px;color:#3b82f6;background:#1c1c1e;
                  border:1px solid #3a3a3c;border-radius:8px;padding:14px;width:100%;outline:none}
.auth .totp-input:focus{border-color:#3b82f6}

/* ── body.status : centred message card ────────────────────── */
.status .box{max-width:460px;width:100%;padding:40px;text-align:center}
.status .icon{font-size:48px;margin-bottom:16px}
.status h1{font-size:20px;font-weight:700;margin-bottom:10px}
.status p{font-size:14px;color:#9a9db0;margin-bottom:20px;line-height:1.6}
.status .email{color:#e8e9f0;font-weight:600}
.status .btn{display:inline-block;padding:11px 28px;text-decoration:none}
.status .btn:hover{text-decoration:none}
.status .btn-g{background:#1c1c1e;border:1px solid #3a3a3c;color:#9a9db0;margin-right:8px}
.status .spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;
                 border-radius:50%;animation:lg-spin .7s linear infinite;vertical-align:middle;margin-right:5px}
@keyframes lg-spin{to{transform:rotate(360deg)}}
.status #msg{margin-top:16px;font-size:13px;display:none}
