.giw-sso-modal[hidden],.giw-sso-launcher[hidden]{display:none!important}

.giw-sso-modal{
  position:fixed;inset:0;z-index:12000;
  display:grid;place-items:center;padding:24px;
}
.giw-sso-backdrop{
  position:absolute;inset:0;border:0;
  background:rgba(1,8,15,.58);
  backdrop-filter:blur(6px) saturate(112%);
  cursor:default;
}
.giw-sso-card{
  position:relative;
  width:min(520px,calc(100vw - 32px));
  padding:30px;
  overflow:hidden;
  border:1px solid rgba(120,203,222,.28);
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 8%,rgba(72,167,191,.13),transparent 15rem),
    linear-gradient(180deg,rgba(8,28,41,.985),rgba(3,15,25,.985));
  box-shadow:0 34px 96px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.015) inset;
  color:#d9edf2;
  font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.giw-sso-card::before{
  content:"";position:absolute;left:30px;right:30px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(119,215,234,.55),transparent);
}
.giw-sso-close{
  position:absolute;right:14px;top:13px;
  width:34px;height:34px;
  border:1px solid rgba(150,205,220,.18);
  border-radius:50%;
  background:rgba(255,255,255,.035);
  color:#bcd6dd;font-size:21px;line-height:1;
  cursor:pointer;transition:.16s ease;
}
.giw-sso-close:hover,.giw-sso-close:focus-visible{
  color:#fff;border-color:rgba(143,220,236,.38);background:rgba(94,181,203,.09)
}
.giw-sso-brand{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.giw-sso-brand-mark{
  width:31px;height:31px;border-radius:50%;
  border:1px solid rgba(119,207,227,.46);
  box-shadow:inset 0 0 16px rgba(62,166,193,.15),0 0 22px rgba(62,166,193,.08);
  position:relative;
}
.giw-sso-brand-mark::before,.giw-sso-brand-mark::after{
  content:"";position:absolute;border:1px solid rgba(119,207,227,.28);border-radius:50%;
}
.giw-sso-brand-mark::before{inset:6px -4px;transform:rotate(27deg)}
.giw-sso-brand-mark::after{inset:-4px 7px;transform:rotate(-17deg)}
.giw-sso-brand strong,.giw-sso-brand small{display:block}
.giw-sso-brand strong{color:#e8f7fa;font-size:.88rem;letter-spacing:-.01em}
.giw-sso-brand small{margin-top:1px;color:#6e929d;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.giw-sso-eyebrow{
  display:flex;align-items:center;gap:8px;margin-bottom:10px;
  color:#72acba;font-size:10px;letter-spacing:.15em;font-weight:750;
}
.giw-sso-eyebrow span{width:22px;height:1px;background:currentColor}
.giw-sso-card h2{
  margin:0 42px 9px 0;
  color:#f2fbfd;font-size:27px;line-height:1.12;letter-spacing:-.035em;
}
.giw-sso-lead{margin:0;color:#94b0b9;line-height:1.66;font-size:.85rem}
.giw-sso-benefits{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;margin:21px 0 14px;
}
.giw-sso-benefits>span{
  min-height:78px;padding:11px 12px;
  border:1px solid rgba(123,185,202,.12);
  border-radius:12px;background:rgba(255,255,255,.022);
}
.giw-sso-benefits b,.giw-sso-benefits small{display:block}
.giw-sso-benefits b{color:#cce6eb;font-size:.72rem;font-weight:700}
.giw-sso-benefits small{margin-top:5px;color:#718f99;font-size:.61rem;line-height:1.4}
.giw-sso-status{min-height:20px;margin:4px 0 10px;color:#88aeb8;font-size:11px}
.giw-sso-status[data-state="error"]{color:#e9a9a9}
.giw-sso-status[data-state="busy"]{color:#b8dce5}
.giw-sso-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}
.giw-sso-primary,.giw-sso-guest{
  min-height:46px;border-radius:12px;
  font:650 12px system-ui;cursor:pointer;transition:.16s ease;
}
.giw-sso-primary{
  border:1px solid rgba(124,210,232,.4);
  background:linear-gradient(135deg,rgba(63,155,181,.32),rgba(32,103,124,.28));
  color:#e8fbff;
}
.giw-sso-primary:hover,.giw-sso-primary:focus-visible{
  background:linear-gradient(135deg,rgba(70,171,198,.4),rgba(34,115,137,.36));
  border-color:rgba(135,224,242,.55);
}
.giw-sso-guest{
  padding:0 15px;border:1px solid rgba(135,183,196,.15);
  background:rgba(255,255,255,.025);color:#91aeb7;
}
.giw-sso-guest:hover,.giw-sso-guest:focus-visible{color:#d8edf2;background:rgba(255,255,255,.045)}
.giw-sso-links{display:flex;justify-content:center;gap:18px;margin:15px 0 5px}
.giw-sso-links a{color:#96c4cf;text-decoration:none;font-size:11px}
.giw-sso-links a:hover{text-decoration:underline;color:#ccecf2}
.giw-sso-privacy{
  margin:14px 0 0;padding-top:13px;
  border-top:1px solid rgba(130,190,205,.1);
  color:#668893;font-size:10px;line-height:1.55;
}

.giw-sso-launcher{
  position:fixed;right:18px;bottom:24px;z-index:11000;
  display:grid;grid-template-columns:9px auto 18px;align-items:center;gap:9px;
  min-width:176px;padding:9px 11px;
  border:1px solid rgba(105,190,214,.22);border-radius:14px;
  background:rgba(5,22,33,.68);
  box-shadow:0 14px 38px rgba(0,0,0,.24);
  backdrop-filter:blur(12px) saturate(115%);
  color:#d7eef3;cursor:pointer;opacity:.76;
  transition:opacity .16s ease,transform .16s ease,border-color .16s ease,background .16s ease;
}
.giw-sso-launcher:hover,.giw-sso-launcher:focus-visible{
  opacity:1;transform:translateY(-2px);
  border-color:rgba(119,213,231,.42);
  background:rgba(7,29,42,.93);
}
.giw-sso-launcher-mark{
  width:7px;height:7px;border-radius:50%;
  background:#78a9b5;box-shadow:0 0 0 4px rgba(120,169,181,.1);
}
.giw-sso-launcher-copy{display:grid;text-align:left}
.giw-sso-launcher-copy strong{font-size:.67rem;line-height:1.15;font-weight:700}
.giw-sso-launcher-copy small{margin-top:2px;font-size:.55rem;line-height:1.15;color:#7596a0}
.giw-sso-launcher-arrow{color:#759ba5;font-size:.8rem}

@media(max-width:650px){
  .giw-sso-modal{padding:12px}
  .giw-sso-card{padding:23px 20px}
  .giw-sso-card::before{left:22px;right:22px}
  .giw-sso-benefits{grid-template-columns:1fr}
  .giw-sso-benefits>span{min-height:auto}
  .giw-sso-actions{grid-template-columns:1fr}
  .giw-sso-launcher{right:10px;bottom:18px;min-width:164px}
}
