/* Lifted verbatim from templates/base.html. Edit here, not there.
   Load position in base.html is load-bearing: see the note at the
   <link> that pulls this file in. */
/* --- base.html line 4284 --- */
/* ── card shell ─────────────────────────────────────────── */
#gsi-nudge{
  position:fixed;top:76px;right:20px;z-index:10000;
  width:320px;
  background:#fff;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 1px 3px rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.10),0 24px 48px rgba(0,0,0,.07);
  overflow:hidden;
  opacity:0;
  transform:translateY(-18px) scale(.97);
  transition:opacity .28s ease, transform .32s cubic-bezier(.22,.68,0,1.15);
  pointer-events:none;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
}
#gsi-nudge.gsi--on{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}

/* ── header bar ─────────────────────────────────────────── */
#gsi-nudge .gsi-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 14px 0 16px;
}
#gsi-nudge .gsi-brand{display:flex;align-items:center;gap:7px}
#gsi-nudge .gsi-brand-text{font-size:.72rem;font-weight:600;color:#5f6368;letter-spacing:.01em}
#gsi-nudge .gsi-close{
  width:28px;height:28px;border-radius:50%;border:none;background:none;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  color:#80868b;font-size:.85rem;transition:background .15s,color .15s;
  flex-shrink:0;
}
#gsi-nudge .gsi-close:hover{background:rgba(0,0,0,.06);color:#202124}

/* ── avatar area ────────────────────────────────────────── */
#gsi-nudge .gsi-body{padding:16px 20px 0;text-align:center}
#gsi-nudge .gsi-av{
  width:56px;height:56px;border-radius:50%;
  margin:0 auto 10px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;font-weight:700;color:#fff;
  background:linear-gradient(135deg,#4285f4 0%,#34a3ff 100%);
  box-shadow:0 2px 8px rgba(66,133,244,.35);
  overflow:hidden;flex-shrink:0;
}
#gsi-nudge .gsi-av img{width:100%;height:100%;display:block;border-radius:50%}
#gsi-nudge .gsi-av.gsi-av--logo{
  background:#fff;
  border:1.5px solid rgba(0,0,0,.08);
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
#gsi-nudge .gsi-name{font-size:.9375rem;font-weight:600;color:#202124;line-height:1.3;margin-bottom:2px;word-break:break-all}
#gsi-nudge .gsi-email{font-size:.78rem;color:#5f6368;margin-bottom:0;word-break:break-all}

/* ── action area ─────────────────────────────────────────── */
#gsi-nudge .gsi-actions{padding:16px 20px 20px}
#gsi-nudge .gsi-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;padding:11px 16px;
  background:#fff;
  border:1px solid #dadce0;
  border-radius:8px;
  font-size:.875rem;font-weight:600;color:#3c4043;
  text-decoration:none;cursor:pointer;
  transition:background .15s,box-shadow .15s;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  box-sizing:border-box;
}
#gsi-nudge .gsi-btn:hover{background:#f8f9fa;box-shadow:0 2px 6px rgba(0,0,0,.13)}
#gsi-nudge .gsi-btn.gsi-btn--account{
  background:#1a73e8;border-color:#1a73e8;color:#fff;
  box-shadow:0 1px 3px rgba(26,115,232,.3),0 4px 12px rgba(26,115,232,.2);
}
#gsi-nudge .gsi-btn.gsi-btn--account:hover{background:#1765cc;box-shadow:0 2px 6px rgba(26,115,232,.4)}
#gsi-nudge .gsi-alt{
  text-align:center;margin-top:10px;
  font-size:.72rem;color:#80868b;
}
#gsi-nudge .gsi-alt a{color:#1a73e8;text-decoration:none;font-weight:500}
#gsi-nudge .gsi-alt a:hover{text-decoration:underline}

/* ── footer note ─────────────────────────────────────────── */
#gsi-nudge .gsi-foot{
  padding:10px 20px 14px;
  border-top:1px solid rgba(0,0,0,.06);
  font-size:.67rem;color:#80868b;line-height:1.5;text-align:center;
}
#gsi-nudge .gsi-foot a{color:#1a73e8;text-decoration:none}

/* ── dark mode ───────────────────────────────────────────── */
[data-theme="dark"] #gsi-nudge{
  background:#1e2936;border-color:rgba(255,255,255,.1);
  box-shadow:0 1px 3px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.4),0 24px 48px rgba(0,0,0,.3);
}
[data-theme="dark"] #gsi-nudge .gsi-brand-text{color:#9aa0a6}
[data-theme="dark"] #gsi-nudge .gsi-close{color:#9aa0a6}
[data-theme="dark"] #gsi-nudge .gsi-close:hover{background:rgba(255,255,255,.08);color:#e8eaed}
[data-theme="dark"] #gsi-nudge .gsi-name{color:#e8eaed}
[data-theme="dark"] #gsi-nudge .gsi-email{color:#9aa0a6}
[data-theme="dark"] #gsi-nudge .gsi-btn{background:#2d3748;border-color:rgba(255,255,255,.15);color:#e8eaed;box-shadow:none}
[data-theme="dark"] #gsi-nudge .gsi-btn:hover{background:#374151}
[data-theme="dark"] #gsi-nudge .gsi-btn.gsi-btn--account{background:#1a73e8;border-color:#1a73e8;color:#fff}
[data-theme="dark"] #gsi-nudge .gsi-alt{color:#9aa0a6}
[data-theme="dark"] #gsi-nudge .gsi-foot{border-top-color:rgba(255,255,255,.08);color:#9aa0a6}

/* ── mobile: compact top-right card ─────────────────── */
@media(max-width:600px){
  #gsi-nudge{
    width:auto;max-width:232px;
    top:66px;right:10px;left:auto;
    border-radius:14px;
  }
  /* hide verbose footer on mobile */
  #gsi-nudge .gsi-foot{display:none}
  /* tighten body padding */
  #gsi-nudge .gsi-body{padding:10px 14px 0}
  #gsi-nudge .gsi-actions{padding:10px 14px 14px}
  /* smaller avatar */
  #gsi-nudge .gsi-av{width:40px;height:40px;font-size:1rem;margin-bottom:6px}
  /* slightly smaller text */
  #gsi-nudge .gsi-name{font-size:.82rem}
  #gsi-nudge .gsi-email{font-size:.7rem}
  /* compact button */
  #gsi-nudge .gsi-btn{padding:9px 12px;font-size:.8rem;gap:7px}
  /* header tighter */
  #gsi-nudge .gsi-head{padding:10px 10px 0 12px}
  #gsi-nudge .gsi-brand-text{font-size:.67rem}
}
