.account-widget{position:relative;display:flex;align-items:center}
.account-guest-actions,.account-member-actions{display:flex;align-items:center;gap:8px}
.account-guest-actions{padding:5px 6px 5px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:var(--shadow-soft)}
.account-guest-copy{display:grid;gap:3px;min-width:132px}
.account-guest-copy b{color:var(--ink);font:800 13px var(--sans)}
.account-guest-copy small{color:var(--muted);font:600 10px var(--sans);white-space:nowrap}
.account-link-button,.account-login-button,.account-primary-button,.account-summary-button,.account-avatar-button{font:800 14px var(--sans);cursor:pointer}
.account-login-button{min-width:64px;min-height:44px;padding:0 17px;border:1px solid var(--line-strong);border-radius:10px;color:var(--ink);background:var(--surface-2)}
.account-login-button:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}
.account-primary-button{min-width:64px;min-height:44px;padding:0 18px;border:1px solid rgba(109,74,255,.3);border-radius:10px;color:var(--brand);background:rgba(109,74,255,.08)}
.account-primary-button:hover{border-color:var(--brand);background:rgba(109,74,255,.14)}
.account-summary-button{min-width:116px;min-height:44px;padding:6px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);text-align:right}
.account-summary-button span{display:grid;gap:3px}
.account-summary-button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.15}
.account-summary-button small{color:var(--success);font:800 12px var(--mono);line-height:1.15}
.account-avatar-button{width:44px;height:44px;padding:0;border:0;border-radius:12px;color:#fff;background:linear-gradient(145deg,var(--brand),#352285);box-shadow:0 8px 18px rgba(109,74,255,.24)}
.account-menu{position:absolute;z-index:80;right:0;top:calc(100% + 10px);width:156px;padding:6px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow-soft)}
.account-menu button{display:block;width:100%;padding:10px 11px;border:0;border-radius:8px;background:transparent;color:var(--ink);text-align:left;font:700 11px var(--sans);cursor:pointer}
.account-menu button:hover{background:var(--surface-3);color:var(--brand)}
.account-menu button:last-child{margin-top:4px;border-top:1px solid var(--line);border-radius:0 0 8px 8px;color:var(--danger)}
.account-dialog{width:min(520px,calc(100vw - 28px));padding:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.32)}
.account-dialog::backdrop{background:rgba(7,11,20,.54);backdrop-filter:blur(5px)}
.account-dialog-shell{padding:23px}
.account-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.account-dialog-head>div{display:flex;align-items:flex-start;gap:11px}
.account-dialog-head h2{margin:2px 0 4px;font:700 20px var(--display)}
.account-dialog-head p{margin:0;color:var(--muted);font-size:11px}
.account-dialog-body{min-height:120px}
.account-auth-tabs{display:flex;gap:4px;margin-bottom:18px;padding:4px;border-radius:12px;background:var(--surface-3)}
.account-auth-tabs button{flex:1;border:0;border-radius:9px;padding:9px;background:transparent;color:var(--muted);font:800 11px var(--sans);cursor:pointer}
.account-auth-tabs button.active{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-soft)}
.account-form{display:grid;gap:2px}
.account-form .primary-button{width:100%;margin-top:7px}
.account-form-error{margin:8px 0 0;color:var(--danger);font-size:11px;line-height:1.5}
.account-content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
.account-content-stat{padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}
.account-content-stat small{display:block;color:var(--muted);font-size:10px}
.account-content-stat strong{display:block;margin-top:5px;font:700 20px var(--display)}
.account-section-title{display:flex;justify-content:space-between;gap:12px;margin:18px 0 9px;font:800 11px var(--display)}
.account-section-title span{color:var(--muted);font-weight:500}
.account-list{display:grid;gap:7px;max-height:240px;overflow:auto}
.account-list-row{display:flex;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:11px}
.account-list-row b{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-list-row small{display:block;margin-top:3px;color:var(--muted)}
.account-list-row .positive{color:var(--success)}.account-list-row .negative{color:var(--danger)}
.account-redeem-form{display:grid;gap:10px}
.account-redeem-form button{width:100%}
.account-notice{padding:13px;border:1px solid rgba(245,158,66,.25);border-radius:12px;background:rgba(245,158,66,.08);color:var(--muted);font-size:11px;line-height:1.6}
.account-back-button{margin-bottom:14px;border:0;background:transparent;color:var(--brand);font:800 11px var(--sans);cursor:pointer}
@media(max-width:780px){
  .account-guest-actions{padding:4px}
  .account-guest-copy{display:none}
  .account-login-button,.account-primary-button{min-width:58px;min-height:42px;padding:0 13px;font-size:13px}
  .account-summary-button{display:none}
  .account-avatar-button{width:42px;height:42px}
  .account-dialog-shell{padding:18px}
  .account-content-grid{grid-template-columns:repeat(2,1fr)}
}
