/* SORA Project v129 — compact profile frames, clean OAuth icons and registration guard UI. */

/* The new PNG assets already contain transparency, so they are rendered normally. */
.avatar-frame[class*="avatar-frame-art-"] {
  position:relative !important;
  overflow:visible !important;
  border-color:transparent !important;
  outline:0 !important;
  box-shadow:none !important;
}

.avatar-frame[class*="avatar-frame-art-"]::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:4 !important;
  inset:-8% !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  transform:none !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--frame-asset) center / contain no-repeat !important;
  color:transparent !important;
  filter:drop-shadow(0 0 5px rgba(71,174,255,.2)) !important;
  mix-blend-mode:normal !important;
  pointer-events:none !important;
}

.avatar-frame[class*="avatar-frame-art-"]::after { display:none !important; }
.avatar-frame-compact[class*="avatar-frame-art-"]::before { inset:-7% !important; }
.avatar-frame-preview[class*="avatar-frame-art-"]::before { inset:-8% !important; }

.profile-public-card .profile-title-block {
  padding-bottom:0 !important;
  transform:translateY(8px);
}

.profile-public-card .avatar-presence .online-dot {
  right:-3px !important;
  bottom:-3px !important;
  z-index:8 !important;
  width:17px !important;
  height:17px !important;
  border:3px solid #081421 !important;
  box-shadow:0 0 0 1px rgba(111,232,181,.2),0 0 12px rgba(38,218,139,.42) !important;
}

.profile-public-card .avatar-presence .online-dot.is-offline {
  box-shadow:0 0 0 1px rgba(138,157,178,.15) !important;
}

.auth-social-icons {
  display:flex !important;
  grid-template-columns:none !important;
  align-items:center !important;
  justify-content:center !important;
  gap:11px !important;
}

.auth-provider-icon {
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 48px !important;
  width:48px !important;
  height:48px !important;
  padding:0 !important;
  border:1px solid rgba(110,174,221,.24) !important;
  border-radius:14px !important;
  background:#13263a !important;
  color:#f7fbff !important;
  font-size:19px !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:0 8px 20px rgba(0,0,0,.2) !important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease !important;
}

.auth-provider-icon.provider-vk { background:#2787f5 !important; border-color:#4a9df9 !important; }
.auth-provider-icon.provider-shikimori { background:#f5f0e7 !important; border-color:#fff !important; color:#5e4635 !important; }
.auth-provider-icon.provider-google { background:#fff !important; border-color:#fff !important; color:#1f2937 !important; }
.auth-provider-icon:not(.is-disabled):hover,
.auth-provider-icon:not(.is-disabled):focus-visible {
  transform:translateY(-2px) !important;
  border-color:#68c9ff !important;
  box-shadow:0 11px 26px rgba(20,129,211,.28) !important;
}
.auth-provider-icon.is-disabled {
  opacity:.48 !important;
  filter:saturate(.45) !important;
  cursor:not-allowed !important;
  box-shadow:none !important;
}

.registration-honeypot {
  position:absolute !important;
  left:-10000px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

@media (max-width:680px) {
  .profile-public-card .profile-title-block { transform:translateY(5px); }
  .profile-public-card .avatar-presence .online-dot {
    right:-2px !important;
    bottom:-2px !important;
    width:15px !important;
    height:15px !important;
  }
  .auth-social-icons { display:flex !important; grid-template-columns:none !important; }
  .auth-provider-icon { flex-basis:46px !important; width:46px !important; height:46px !important; }
}

@media (prefers-reduced-motion:reduce) {
  .auth-provider-icon { transition:none !important; }
}
