
  :root { --bg-page:var(--bg-app); --bg-card:var(--bg-panel); --border-soft:var(--border); --radius:8px; --font:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; }
  *,*::before,*::after { box-sizing:border-box; }
  html,body { margin:0; padding:0; background:var(--bg-page); color:var(--text-primary); font-family:var(--font); -webkit-font-smoothing:antialiased; }
  .ftf-auth-wrap { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px 16px; }
  .ftf-auth-card { width:100%; max-width:420px; background:var(--bg-card); border:1px solid var(--border-soft); border-radius:var(--radius); padding:32px 28px; }
  .ftf-auth-brand { display:flex; align-items:center; gap:10px; margin-bottom:24px; }
  .ftf-auth-brand-mark { width:36px; height:36px; border-radius:8px; background:linear-gradient(135deg,var(--accent),#06b6d4); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; color:var(--text-on-accent); }
  .ftf-auth-brand-text { font-size:11px; letter-spacing:1.2px; color:var(--text-muted); text-transform:uppercase; }
  .ftf-auth-title { font-size:22px; font-weight:600; margin:0 0 6px 0; }
  .ftf-auth-sub { color:var(--text-muted); font-size:13px; margin:0 0 22px 0; }
  .ftf-auth-row { margin-bottom:14px; }
  .ftf-auth-label { display:block; font-size:11px; text-transform:uppercase; letter-spacing:0.8px; color:var(--text-muted); margin-bottom:6px; }
  .ftf-auth-input { width:100%; padding:10px 12px; background:var(--bg-app); border:1px solid var(--border-strong); border-radius:6px; color:var(--text-primary); font-family:var(--font); font-size:14px; outline:none; transition:border-color 0.15s; }
  .ftf-auth-input:focus { border-color:var(--accent); }
  .ftf-auth-button { width:100%; padding:11px 14px; background:var(--accent); border:none; border-radius:6px; color:var(--text-on-accent); font-family:var(--font); font-size:14px; font-weight:600; cursor:pointer; margin-top:10px; transition:background 0.15s; }
  .ftf-auth-button:hover:not(:disabled) { background:var(--accent-hover); }
  .ftf-auth-button:disabled { opacity:0.6; cursor:not-allowed; }
  .ftf-auth-link { color:var(--accent); text-decoration:none; font-size:13px; }
  .ftf-auth-link:hover { text-decoration:underline; }
  .ftf-auth-footer { margin-top:20px; padding-top:16px; border-top:1px solid var(--border-soft); text-align:center; color:var(--text-muted); font-size:13px; }
  .ftf-auth-error { display:none; margin-top:8px; padding:10px 12px; background:rgba(239,68,68,0.1); border:1px solid rgba(239,68,68,0.3); border-radius:6px; color:var(--danger-text); font-size:13px; }
  .ftf-auth-error.show { display:block; }
    .ftf-auth-brand-img { height: 27px; width: auto; display: block; }
