.account-status-float { position:fixed; z-index:25; right:22px; top:82px; width:264px; max-width:calc(100vw - 32px); border:1px solid #cdd8cb; border-radius:10px; background:#fffefa; color:#183c2d; box-shadow:0 8px 24px #183c2d1a; font:13px/1.45 "DM Sans",Arial,sans-serif; }
.account-status-float[hidden], .account-status-float [hidden] { display:none !important; }
.account-status-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; border:0; border-radius:10px; background:transparent; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.account-status-toggle small { font-size:10px; color:#58695e; }
.account-status-toggle strong { display:block; font-size:13px; }
.account-status-toggle [data-remaining] { display:block; font-size:12px; }
#account-status-detail { padding:0 14px 14px; max-height:calc(100dvh - 240px); overflow:auto; border-top:1px solid #e0e6dc; }
#account-status-detail p { margin:10px 0; font-size:12px; color:#526258; line-height:1.5; }
#account-status-detail .account-credit { font-weight:700; color:#183c2d; }
#account-status-detail a, #account-status-detail button { display:block; padding:9px 0; border:0; background:transparent; color:#183c2d; font:700 12px/1.4 "DM Sans",Arial,sans-serif; text-align:left; text-decoration:underline; cursor:pointer; }
.account-status-float :focus-visible { outline:3px solid #82a46d; outline-offset:3px; }
.public-mode .account-status-float { display:none !important; }
@media(max-width:600px) { .account-status-float { right:16px; width:224px; } .account-status-toggle { padding:8px 12px; } .account-status-toggle small { display:none; } }
@media(max-width:600px) { .has-account-status main.wrap { padding-top:82px; } }
@media print { .account-status-float { display:none !important; } }
