.account-dialog { color:var(--ink,#352b26); background:var(--paper,#fffdf9); border:5px solid #f2d0af; border-radius:20px; box-shadow:inset 0 0 0 1px #fff,0 7px 0 #d7aa83,0 24px 100px #352b2633; padding:36px; width:min(440px,calc(100vw - 28px)); max-height:calc(100dvh - 40px); overflow:auto; }
.account-dialog::backdrop { background:#3e2b2066; backdrop-filter:blur(4px); }
.account-dialog[open] { animation:account-in .18s ease-out; }
.account-dialog h2 { margin:8px 0 6px; font-size:28px; letter-spacing:-.8px; }
.account-dialog-heading p,.account-footnote { color:#837162; font-size:12px; margin:0; }
.account-eyebrow { color:var(--orange-dark,#b84516); font-size:11px; font-weight:700; letter-spacing:1.3px; }
.account-close { position:absolute; right:14px; top:10px; width:36px; height:36px; background:none; border:0; font-size:26px; color:#8b7e73; }
.account-tabs { display:flex; gap:28px; border-bottom:1px solid #e9e1d7; margin:23px 0; }
.account-tabs button { border:0; border-bottom:3px solid transparent; background:none; padding:0 1px 10px; color:#8b7e73; }
.account-tabs button[aria-pressed=true] { color:var(--orange-dark,#b84516); border-color:var(--orange,#e76e32); font-weight:700; }
#account-form label { display:block; margin-bottom:15px; font-size:13px; font-weight:600; }
#account-form label small { color:#8b7e73; font-weight:400; }
#account-form input { display:block; width:100%; height:44px; margin-top:6px; border:1px solid #ded3c7; border-radius:8px; color:#352b26; background:white; padding:0 12px; font-size:13px; }
#account-form input::placeholder { color:#a49a90; }
.account-submit { width:100%; justify-content:center; margin:6px 0 18px; min-height:46px; }
.account-error { padding:10px 12px; background:#fff0e6; color:#a4381c; border-radius:7px; font-size:12px; }
.account-wallet { border:1px solid #efc7a5; background:#fff0e4; color:#a7471e; border-radius:9px; padding:7px 12px; display:flex; align-items:baseline; gap:5px; }
.account-wallet b { font-family:var(--font-display,inherit); font-size:18px; }.account-wallet span { font-size:11px; }
.account-name { max-width:90px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.account-library { font-size:12px; font-weight:700; white-space:nowrap; padding:9px 0; color:#a64b25; }
.account-library[aria-current=page] { color:var(--orange); }
.account-logout { background:none; border:0; color:#837162; font-size:12px; padding:9px 0; }
.wallet-totals { display:flex; gap:46px; margin:25px 0 17px; }.wallet-totals div { display:grid; }.wallet-totals strong { font:600 46px/1.2 var(--font-display,inherit); color:var(--orange-dark,#b84516); }.wallet-totals div+div strong { color:#a29585; }.wallet-totals span { color:#837162; font-size:12px; margin-top:5px; }
.wallet-rule { font-size:12px; color:#837162; border-bottom:1px solid #e9e1d7; padding-bottom:22px; }
.wallet-ledger-heading { display:flex; align-items:center; justify-content:space-between; }.wallet-ledger-heading h3 { font-size:14px; margin:14px 0; }.wallet-ledger-heading button,.wallet-more { border:0; background:none; color:var(--orange-dark,#b84516); font-size:12px; padding:8px; }
.wallet-ledger { list-style:none; padding:0; margin:0; }.wallet-ledger li { display:flex; justify-content:space-between; gap:12px; border-top:1px solid #eee6dd; padding:13px 0; font-size:12px; }.wallet-ledger time { display:block; font-size:10px; color:#8b7e73; margin-top:3px; }.wallet-ledger b { white-space:nowrap; font-weight:600; }.wallet-more { width:100%; margin-top:8px; }
.credit-quote { margin:12px 0; border-top:1px dashed #e6ccb4; padding-top:13px; }.credit-quote label { display:flex; gap:8px; align-items:center; font-size:12px; }.credit-quote select { flex:1; min-width:0; padding:6px; border:1px solid #ded3c7; border-radius:5px; background:white; color:#352b26; }.credit-quote p { font-size:12px; color:#776553; margin:7px 0 3px; }.credit-quote small { display:block; font-size:10px; color:#948476; line-height:1.7; }.credit-quote strong { color:#b84516; }
@keyframes account-in { from { opacity:0; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:640px) { .account-dialog { padding:28px 24px; }.account-name { display:none; }#account-member { gap:10px; }.account-wallet { padding:5px 8px; }.account-logout { font-size:11px; } }
@media(prefers-reduced-motion:reduce) { .account-dialog[open] { animation:none; } }
