/* ─────────────────────────────────────────────────────────────────────────────
   BigCRM UI – gemeinsame Design-Tokens & Bausteine (BigSolutions-Look)
   Abgeleitet vom BigSolutions-Logo: Orange #D86B30, Dunkel #202020 / #141414, Poppins.
   Verwendet von: Anmeldemaske (auth), Konsole/Master-Admin (admin-shell).
   ───────────────────────────────────────────────────────────────────────────── */

@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/Poppins-Regular.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/Poppins-Medium.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/Poppins-SemiBold.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/Poppins-Bold.woff2") format("woff2")}

:root{
  --bc-orange:#D86B30;
  --bc-orange-hover:#C45F29;
  --bc-orange-soft:rgba(216,107,48,.12);
  --bc-orange-ring:rgba(216,107,48,.35);
  --bc-black:#141414;
  --bc-dark:#202020;
  --bc-dark-2:#2A2A2A;
  --bc-ink:#1d1d1f;
  --bc-muted:#6e6e73;
  --bc-faint:#8e8e93;
  --bc-line:#e5e5ea;
  --bc-line-soft:#f0f0f2;
  --bc-surface:#ffffff;
  --bc-bg:#f5f5f7;
  --bc-green:#34c759;
  --bc-red:#ff3b30;
  --bc-amber:#ff9500;
  --bc-font-brand:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --bc-font-body:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --bc-radius:12px;
  --bc-radius-sm:8px;
  --bc-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06);
  --bc-shadow-lg:0 2px 4px rgba(0,0,0,.06),0 24px 60px rgba(0,0,0,.18);
}

/* ── Auth-Seiten (Login, Passwort vergessen, Passwort setzen) ─────────────── */
.bc-auth{min-height:100vh;margin:0;background:var(--bc-black);color:var(--bc-ink);font-family:var(--bc-font-body);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column}
.bc-auth-bg{position:fixed;inset:0;pointer-events:none;background:
  radial-gradient(900px 500px at 15% -10%,rgba(216,107,48,.22),transparent 60%),
  radial-gradient(700px 500px at 100% 110%,rgba(216,107,48,.12),transparent 60%)}
.bc-auth-main{position:relative;flex:1;display:flex;align-items:center;justify-content:center;padding:48px 20px}
.bc-auth-box{width:100%;max-width:420px}
.bc-auth-brand{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:28px}
.bc-auth-brand img{height:52px;width:auto;display:block}
.bc-auth-brand .bc-auth-sub{font-family:var(--bc-font-brand);font-size:13px;font-weight:500;letter-spacing:.2px;color:rgba(255,255,255,.62)}
.bc-card{background:var(--bc-surface);border-radius:16px;box-shadow:var(--bc-shadow-lg);overflow:hidden}
.bc-card-head{padding:18px 24px 0}
.bc-card-head h1{font-family:var(--bc-font-brand);font-size:20px;font-weight:600;letter-spacing:-.2px;margin:0;color:var(--bc-ink)}
.bc-card-head p{margin:4px 0 0;font-size:13px;color:var(--bc-muted)}
.bc-card-body{padding:20px 24px 24px}
.bc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.bc-label{font-size:13px;font-weight:600;color:var(--bc-ink)}
.bc-input{appearance:none;width:100%;box-sizing:border-box;height:44px;padding:0 14px;font:inherit;font-size:15px;color:var(--bc-ink);background:#fff;border:1px solid #d1d1d6;border-radius:10px;outline:none;transition:border-color .15s,box-shadow .15s}
.bc-input:focus{border-color:var(--bc-orange);box-shadow:0 0 0 4px var(--bc-orange-ring)}
.bc-input.bc-input-code{font-family:var(--bc-font-brand);font-size:24px;font-weight:600;letter-spacing:6px;text-align:center;height:52px}
.bc-hint{font-size:12px;color:var(--bc-faint);line-height:1.45}
.bc-check{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--bc-muted);cursor:pointer;user-select:none;margin:2px 0 18px}
.bc-check input{appearance:none;width:18px;height:18px;margin:0;border:1.5px solid #c7c7cc;border-radius:6px;background:#fff;display:grid;place-items:center;cursor:pointer;transition:background .15s,border-color .15s}
.bc-check input:checked{background:var(--bc-orange);border-color:var(--bc-orange)}
.bc-check input:checked::before{content:"";width:10px;height:6px;border:2px solid #fff;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}
.bc-check input:focus-visible{box-shadow:0 0 0 4px var(--bc-orange-ring)}
.bc-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 18px;border-radius:12px;border:1px solid transparent;font:inherit;font-family:var(--bc-font-brand);font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,transform .05s,box-shadow .15s}
.bc-btn:active{transform:translateY(1px)}
.bc-btn-primary{background:var(--bc-orange);color:#fff;width:100%}
.bc-btn-primary:hover{background:var(--bc-orange-hover)}
.bc-btn-primary:focus-visible{outline:none;box-shadow:0 0 0 4px var(--bc-orange-ring)}
.bc-link{color:var(--bc-orange);text-decoration:none;font-size:13px;font-weight:500}
.bc-link:hover{text-decoration:underline}
.bc-link-muted{color:var(--bc-muted)}
.bc-links{display:flex;justify-content:center;gap:18px;margin-top:18px}
.bc-notice{border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.45;margin-bottom:16px;border:1px solid transparent}
.bc-notice-error{background:#fff2f1;border-color:#ffd5d2;color:#b3261e}
.bc-notice-success{background:#eefaf1;border-color:#c9efd4;color:#1f7a3a}
.bc-notice-info{background:#fff6f0;border-color:#f6d9c8;color:#8a4418}
.bc-auth-footer{position:relative;text-align:center;padding:18px 20px 26px;font-size:12px;color:rgba(255,255,255,.45)}
.bc-auth-footer a{color:rgba(255,255,255,.7);text-decoration:none;font-weight:600}
.bc-auth-footer a:hover{color:#fff}
.bc-auth-footer .bc-version{display:block;margin-top:4px;font-size:11px;letter-spacing:.3px;color:rgba(255,255,255,.3)}
@media (max-width:480px){.bc-auth-main{padding:28px 14px}.bc-card-body,.bc-card-head{padding-left:18px;padding-right:18px}.bc-auth-brand img{height:38px}}
