/* Account dropdown — premium redesign (routes / auth / balance hooks untouched) */

.tf-account-menu{
  --am-bg:#FFFFFF;
  --am-border:#D5D8D5;
  --am-text:#1A1F1C;
  --am-muted:#66706A;
  --am-soft:rgba(26,31,28,.045);
  --am-green:#2F9E63;
  --am-green-soft:rgba(47,158,99,.1);
  --am-green-border:rgba(47,158,99,.22);
  --am-shadow:0 18px 40px rgba(26,31,28,.14);
  --am-ease:cubic-bezier(.22,1,.36,1);
  --am-danger:#C44B4B;
  --am-danger-soft:rgba(196,75,75,.1);
}
html[data-theme="dark"] .tf-account-menu{
  --am-bg:#1A1C1A;
  --am-border:rgba(255,255,255,.1);
  --am-text:#E8ECE9;
  --am-muted:#9AA39D;
  --am-soft:rgba(255,255,255,.045);
  --am-green:#4CAF78;
  --am-green-soft:rgba(76,175,120,.12);
  --am-green-border:rgba(76,175,120,.24);
  --am-shadow:0 22px 48px rgba(0,0,0,.45);
  --am-danger:#E07070;
  --am-danger-soft:rgba(224,112,112,.12);
}

.tf-account-trigger{
  width:46px!important;
  height:46px!important;
  border:1px solid var(--am-border)!important;
  background:var(--am-soft)!important;
  box-shadow:none!important;
  transition:border-color .2s ease, transform .2s var(--am-ease), box-shadow .2s ease!important;
}
.tf-account-trigger:hover,
.tf-account-trigger[aria-expanded="true"]{
  border-color:var(--am-green-border)!important;
  box-shadow:0 0 0 3px var(--am-green-soft)!important;
  transform:translateY(-1px);
}
.tf-account-avatar{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  overflow:hidden!important;
  background:linear-gradient(145deg,#3BA56C,#2F9E63)!important;
  color:#FFFFFF!important;
  font-family:"Space Grotesk",Inter,system-ui,sans-serif!important;
  font-weight:700!important;
  font-size:.85rem!important;
  letter-spacing:0!important;
  line-height:1!important;
  text-align:center!important;
}
html[data-theme="dark"] .tf-account-avatar{
  background:linear-gradient(145deg,#4CAF78,#3A9B62)!important;
  color:#FFFFFF!important;
}
.tf-account-avatar-lg,
.tf-account-head .tf-account-avatar{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  flex:0 0 48px!important;
  font-size:1.15rem!important;
  color:#FFFFFF!important;
}
.tf-account-status{
  background:var(--am-green)!important;
  border-color:var(--am-bg)!important;
  box-shadow:0 0 0 1px rgba(47,158,99,.25);
}

.tf-account-dropdown{
  top:calc(100% + 12px)!important;
  right:0!important;
  width:min(340px,calc(100vw - 28px))!important;
  padding:0!important;
  border:1px solid var(--am-border)!important;
  border-radius:20px!important;
  background:var(--am-bg)!important;
  box-shadow:var(--am-shadow)!important;
  overflow:hidden;
  backdrop-filter:none!important;
  animation:am-pop .22s var(--am-ease) both;
  transform-origin:top right;
}
.tf-account-dropdown[hidden]{display:none!important;animation:none}

.tf-account-head{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  padding:16px 16px 14px!important;
  border-bottom:1px solid var(--am-border)!important;
  background:
    linear-gradient(180deg,var(--am-green-soft),transparent 70%);
}
.tf-account-identity{min-width:0;flex:1}
.tf-account-identity strong{
  display:block;
  color:var(--am-text)!important;
  font-family:"Space Grotesk",Inter,system-ui,sans-serif;
  font-size:1.05rem;
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.2;
}
.tf-account-identity span{
  display:block;
  margin-top:3px;
  color:var(--am-muted)!important;
  font-size:.82rem!important;
  font-weight:500!important;
  word-break:break-all;
  line-height:1.35;
}

.tf-account-summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;
  gap:10px!important;
  padding:14px 16px!important;
  border-bottom:1px solid var(--am-border)!important;
  background:transparent!important;
  align-items:stretch;
}
.tf-account-stat{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  padding:12px!important;
  border:1px solid var(--am-border)!important;
  border-radius:14px!important;
  background:var(--am-soft)!important;
  min-width:0;
  overflow:hidden;
  box-sizing:border-box;
}
.tf-account-stat > span{
  display:block!important;
  color:var(--am-muted)!important;
  font-size:.68rem!important;
  font-weight:750!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.tf-account-stat > strong,
.tf-account-stat-balance > strong{
  display:block!important;
  margin:0!important;
  color:var(--am-text)!important;
  font-family:"Space Grotesk",Inter,system-ui,sans-serif;
  font-size:.98rem!important;
  font-weight:700!important;
  letter-spacing:-.02em;
  line-height:1.15;
  word-break:break-word;
}
.tf-account-stat-balance > strong{color:var(--am-green)!important}
.tf-account-deposit{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  max-width:100%;
  margin-top:2px;
  padding:5px 10px!important;
  border-radius:999px!important;
  border:1px solid var(--am-green-border)!important;
  background:var(--am-green-soft)!important;
  color:var(--am-green)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap;
  box-sizing:border-box;
  transition:background .15s ease;
}
.tf-account-deposit:hover{
  background:rgba(47,158,99,.18)!important;
}

.tf-account-links{
  display:grid!important;
  gap:2px!important;
  padding:10px 10px 12px!important;
}
.tf-account-group-label{
  margin:8px 8px 4px;
  color:var(--am-muted);
  font-size:.68rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.tf-account-group-label:first-child{margin-top:2px}
.tf-account-links a,
.tf-account-links button{
  display:flex!important;
  align-items:center;
  gap:10px;
  width:100%;
  padding:11px 12px!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--am-text)!important;
  font:inherit;
  font-size:.92rem!important;
  font-weight:650!important;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
  transition:background .15s ease, color .15s ease, transform .15s var(--am-ease);
}
.tf-account-links a:hover,
.tf-account-links button:hover{
  background:var(--am-soft)!important;
  color:var(--am-green)!important;
}
.tf-account-links a.active{
  background:var(--am-green-soft)!important;
  color:var(--am-green)!important;
  box-shadow:inset 0 0 0 1px var(--am-green-border);
}
.tf-account-link-icon{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:8px;
  background:var(--am-soft);
  color:var(--am-green);
  font-size:12px;
  font-weight:800;
  flex-shrink:0;
}
.tf-account-links a.active .tf-account-link-icon,
.tf-account-links a:hover .tf-account-link-icon{
  background:var(--am-green-soft);
}
.tf-account-logout{
  margin-top:4px!important;
  padding-top:10px!important;
  border-top:1px solid var(--am-border)!important;
  border-radius:0 0 12px 12px!important;
  color:var(--am-danger)!important;
}
.tf-account-logout .tf-account-link-icon{
  color:var(--am-danger);
  background:var(--am-danger-soft);
}
.tf-account-logout:hover{
  background:var(--am-danger-soft)!important;
  color:var(--am-danger)!important;
}

@keyframes am-pop{
  from{opacity:0;transform:translateY(-6px) scale(.98)}
  to{opacity:1;transform:none}
}

@media (max-width:520px){
  .tf-account-dropdown{
    width:min(100vw - 20px,340px)!important;
    right:-8px!important;
  }
  .tf-account-summary{
    grid-template-columns:1fr!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .tf-account-dropdown,
  .tf-account-trigger{animation:none!important;transition:none!important}
  .tf-account-trigger:hover{transform:none}
}
