/* 羊驼考务安全证书登录 · OIDC 统一登录按钮（V2 · Cinnabar Edge）
   规范来源：TYBMXTGL/forWebforClient-OIDCLoginButtonDesign.md（外部站点 · hex 回退值实现） */
:root {
  --yt-primary: #A63429; --yt-primary-dark: #842B21; --yt-primary-light: #F4DBD6;
  --yt-gold-deep: #4A3B22; --yt-gold-dark: #7D6232; --yt-gold-mid: #B08E4A;
  --yt-gold-pale: #F0E1B6; --yt-gold-cream: #F8EED4;
  --yt-radius-pill: 100px;
  --yt-shadow-sm: 0 2px 12px rgba(180,145,30,0.08);
  --yt-shadow-md: 0 4px 24px rgba(180,145,30,0.10);
  --yt-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --yt-dur-fast: 150ms; --yt-dur-base: 200ms;
  --yt-font-sans: "Plus Jakarta Sans", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
}

.yt-sso-btn {
  position: relative;
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  height: 44px; padding: 0 20px; box-sizing: border-box;
  border-radius: var(--yt-radius-pill);
  background: linear-gradient(135deg, var(--yt-gold-cream), var(--yt-gold-pale));
  border: 1px solid var(--yt-primary);
  box-shadow: var(--yt-shadow-sm), inset 0 1px 0 rgba(255,255,255,0.55);
  color: var(--yt-gold-deep);
  font-family: var(--yt-font-sans); font-size: 14px; font-weight: 600;
  white-space: nowrap; cursor: pointer; text-decoration: none;
  transition: transform var(--yt-dur-fast) var(--yt-ease-spring),
              box-shadow var(--yt-dur-base) var(--yt-ease-spring),
              border-color var(--yt-dur-base) ease, filter var(--yt-dur-base) ease;
}
.yt-sso-btn::after {
  content: ""; position: absolute; inset: 3px;
  border: 1px dashed rgba(176,142,74,0.45);
  border-radius: var(--yt-radius-pill); pointer-events: none;
}
.yt-sso-btn .yt-sso-accent { color: var(--yt-primary); }
.yt-sso-btn .yt-sso-logo { width: 22px; height: 22px; display: block; flex: none; filter: drop-shadow(0 1px 2px rgba(125,98,50,0.35)); }
.yt-sso-btn .yt-sso-chev { flex: none; }

.yt-sso-btn:hover { transform: translateY(-2px); box-shadow: var(--yt-shadow-md), inset 0 1px 0 rgba(255,255,255,0.55); border-color: var(--yt-primary-dark); filter: brightness(1.03); }
.yt-sso-btn:active { transform: scale(0.95); }
.yt-sso-btn:focus-visible { outline: none; border-color: var(--yt-primary-dark); box-shadow: 0 0 0 3px rgba(166,52,41,0.25), var(--yt-shadow-sm); }

.yt-sso-btn--block { width: 100%; }

.yt-sso-caption { margin: 8px 0 0; text-align: center; font-size: 12px; color: var(--yt-gold-dark); opacity: 0.85; }
