/* Sign-in screens (sign in, two-factor, password links, Choose an organisation, the one-time agreement). The same page
   on app.falconplm.com and test.falconplm.com. A plain light page; the card's logo band, heading and button in navy and silver from the Falcon PLM | CRM logo; the shared type scale
   and 32px controls from tokens.css. Only .falcon-auth-* and the password box: nothing here reaches the app's screens. */
.falcon-auth-page{min-height:100vh;min-height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px 16px;
  background:#f1f4f8;color:#111827}
.falcon-auth-card{width:min(420px,100%);box-sizing:border-box;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(15,23,42,.10),0 0 0 1px #e2e7ee;display:flex;flex-direction:column}
.falcon-auth-card.wide{width:min(560px,100%)}

/* The logo band: the white text logo (FALCON on top, a line, PLM | CRM below; no bird), small (40px high), on navy. */
.falcon-auth-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 24px 16px;text-align:center;
  background:radial-gradient(320px 140px at 30% 0%,#173a7e 0%,transparent 75%),linear-gradient(160deg,#0b1e46 0%,#04102b 100%);border-bottom:1px solid #c7ced9}
.falcon-auth-logo{display:block;height:40px;width:auto;max-width:100%;user-select:none;-webkit-user-drag:none}
.falcon-auth-tagline{font-size:var(--fs-label,12px);color:#aab6cb;letter-spacing:.4px}

.falcon-auth-body{padding:24px 24px 26px;min-width:0}
.falcon-auth-page .falcon-auth-body h1{font-size:20px!important;font-weight:600!important;line-height:1.25;color:#0b1730;margin:0 0 6px;letter-spacing:-.1px}
.falcon-auth-sub{margin:0 0 18px;color:var(--fg-secondary,#6b7280);font-size:var(--fs-field,13px);line-height:1.5}
.falcon-auth-form{display:flex;flex-direction:column;gap:14px}
.falcon-auth-form .form-group{display:flex!important;flex-direction:column;gap:5px;margin:0}
.falcon-auth-form .form-group>label{font-size:var(--fs-label,12px);font-weight:500;color:var(--fg-secondary,#6b7280)}
.falcon-auth-page .falcon-auth-form input:not([type=checkbox]):not([type=radio]){width:100%;box-sizing:border-box;height:var(--ctl-h,32px);min-height:var(--ctl-h,32px);padding:var(--ctl-pad,5px 9px);font-size:var(--fs-field,13px)!important;line-height:1.3;
  border:1px solid #cbd2dc;border-radius:7px;background:#fff;color:#111827;transition:border-color .15s,box-shadow .15s}
.falcon-auth-page .falcon-auth-form input:not([type=checkbox]):not([type=radio]):focus{outline:none!important;border-color:#1d4ed8!important;box-shadow:0 0 0 3px rgba(29,78,216,.15)!important}
.falcon-auth-form input[readonly]{background:#f3f5f9;color:#4b5563}
.falcon-auth-form small{color:var(--fg-secondary,#6b7280);font-size:var(--fs-label,12px);line-height:1.4}
.falcon-auth-submit{width:100%;min-height:40px;margin-top:4px;border-radius:8px;font-size:var(--fs-field,13px);letter-spacing:.2px;transition:filter .15s,box-shadow .15s}
/* Navy like the logo panel (the app's blue Primary buttons are left as they are). */
.falcon-auth-page .falcon-auth-form button.falcon-auth-submit,.falcon-auth-page .falcon-auth-form button.falcon-auth-submit:hover{
  background:linear-gradient(180deg,#1a3a7c 0%,#0b1e46 100%)!important;border:1px solid #0b1e46!important;color:#fff!important;font-weight:600!important}
.falcon-auth-page .falcon-auth-form button.falcon-auth-submit:hover:not([disabled]){filter:brightness(1.18)}
.falcon-auth-page .falcon-auth-form button.falcon-auth-submit:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(29,78,216,.35)!important}
.falcon-auth-submit[disabled]{opacity:.7;cursor:wait}
.falcon-auth-link{display:block;text-align:center;font-size:var(--fs-label,12px);color:#1d4ed8;margin-top:10px;background:none;border:0;width:100%;cursor:pointer;text-decoration:none}
.falcon-auth-link:hover{text-decoration:underline}
.falcon-auth-foot{color:#6b7280;font-size:var(--fs-label,12px);margin:0;text-align:center}

/* Password with a Show / Hide button inside the box. */
.falcon-password-box{position:relative}
.falcon-auth-form .falcon-password-box input:not([type=checkbox]){padding-right:58px}
.falcon-password-show{position:absolute;top:50%;right:4px;transform:translateY(-50%);height:24px;min-height:0;padding:0 8px;border:0;border-radius:5px;background:transparent;color:#1d4ed8;font-size:var(--fs-label,12px);font-weight:500;cursor:pointer}
.falcon-password-show:hover,.falcon-password-show:focus-visible{background:#eef2fb;outline:none}

@media print{.falcon-auth-page{background:#fff}}

/* Sign in with Google, Microsoft or Apple (web/src/signin.ts): white buttons with each company's own mark, above the
   email and password, and the "or …" line between them. Only shown when the Falcon owner has switched them on. */
.falcon-auth-sso-list{display:flex;flex-direction:column;gap:8px}
.falcon-auth-sso-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:40px;box-sizing:border-box;padding:0 12px;border:1px solid #c9d2e0;border-radius:8px;
  background:#fff;color:#0b1730;font-size:var(--fs-field,13px);font-weight:500;text-decoration:none;transition:background .15s,border-color .15s}
.falcon-auth-sso-btn:hover{background:#f4f7fb;border-color:#9aa8bf;text-decoration:none}
.falcon-auth-sso-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(29,78,216,.35)}
.falcon-auth-sso-btn svg{width:18px;height:18px;flex:none;color:#000}
.falcon-auth-sso-or{display:flex;align-items:center;gap:10px;margin:6px 0 2px;color:var(--fg-secondary,#6b7280);font-size:var(--fs-label,12px);text-align:center}
.falcon-auth-sso-or::before,.falcon-auth-sso-or::after{content:"";flex:1;height:1px;background:#e2e8f0}
.falcon-auth-sso-note{margin:0;font-size:var(--fs-label,12px);color:var(--fg-secondary,#6b7280);line-height:1.45}
.falcon-auth-sso-invited{display:flex;flex-direction:column;gap:2px;background:#f1f5fb;border:1px solid #dbe3ef;border-radius:8px;padding:8px 10px;min-width:0}
.falcon-auth-sso-invited-email{font-size:var(--fs-field,13px);color:#0b1730;overflow-wrap:anywhere}
