.account-card { padding:28px; min-width:0; }
.account-card h2 { margin:10px 0 14px; font-size:23px; color:#000; }
.account-card p,.account-public p { line-height:1.65; }
.account-details { margin:22px 0; }
.account-details dt { color:#54585F; font-size:12px; margin-top:15px; }
.account-details dd { margin:5px 0 0; font-weight:600; overflow-wrap:anywhere; }
.account-tag { display:inline-flex; align-items:center; padding:5px 10px; background:#FFF7DA; border:1px solid #DDD2AE; color:#7F5A00; border-radius:20px; font-size:12px; font-weight:600; }
.account-check { display:flex; gap:12px; align-items:center; margin:24px 0; line-height:1.5; }
.account-check input { width:18px; height:18px; accent-color:#FFB600; flex-shrink:0; }
.account-password-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.account-password-grid .account-help { grid-column:1/-1; margin:0 0 8px; }
.account-help { font-size:12px; color:#54585F; line-height:1.6; }
.account-message { padding:13px 16px; margin:16px 0; background:#FAF6EA; border:1px solid #DDD2AE; border-radius:10px; color:#4D3700; overflow-wrap:anywhere; }
.account-error { border-color:#D6771F; color:#7A410D; background:#FCE9D6; }
.account-card > .btn { margin-top:16px; }
.account-public { min-height:100svh; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:24px; padding:40px 20px; background:radial-gradient(ellipse at top left,#FFF7DA,transparent 60%),#F5F0E0; }
.account-public-brand { font-size:36px; font-weight:800; font-style:italic; color:#000; }
.account-public-brand span { color:#B07D00; }
.account-public-card { width:100%; max-width:500px; padding:36px; border-color:#DDD2AE; }
.account-public-card h1 { font-size:30px; margin:0 0 16px; color:#000; }
.account-public-card .field { margin:18px 0; }
.account-public-card .btn { margin:12px 8px 0 0; }
.account-public > a { color:#7F5A00; font-size:13px; text-decoration:underline; }
.account-notification-head { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; }
.account-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.account-notification-list { margin-top:16px; }
.account-notification { padding:24px 0; display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid #EBE3CC; }
.account-notification > div:first-child { min-width:0; }
.account-notification h3 { font-size:17px; margin:12px 0 8px; }
.account-notification p { margin:0 0 10px; overflow-wrap:anywhere; }
.account-notification small { color:#54585F; }
.account-notification .account-actions { flex-shrink:0; max-width:210px; }
.account-unread { border-left:3px solid #FFB600; padding-left:18px; }
.account-empty { padding:32px 0 12px; max-width:760px; }
.account-empty h3 { font-size:20px; }
@media(max-width:1000px) { .account-password-grid { grid-template-columns:minmax(0,1fr); } .account-notification-head,.account-notification { flex-direction:column; align-items:stretch; } .account-notification .account-actions { max-width:none; } }
@media(max-width:650px) { .account-card,.account-public-card { padding:22px; } .account-public { padding:24px 16px; } .account-public-card h1 { font-size:26px; } }

[data-notification-count][hidden] { display:none !important; }

.account-card form > .field { margin:18px 0; }
.account-current-email { font-weight:600; overflow-wrap:anywhere; }
.account-email-change { margin-top:24px; padding-top:20px; border-top:1px solid #EBE3CC; }
.account-email-change summary { cursor:pointer; font-weight:600; color:#7F5A00; }
.account-email-change summary:focus-visible { outline:3px solid #FFB600; outline-offset:4px; }

.account-workspace { overflow:hidden; padding:0; }
.account-tabs { display:flex; align-items:stretch; gap:8px; padding:16px 24px 0; border-bottom:1px solid #EBE3CC; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#DDD2AE transparent; }
.account-tab { appearance:none; flex:none; padding:14px 20px; border:0; border-bottom:3px solid transparent; border-radius:8px 8px 0 0; background:transparent; color:#54585F; font-size:14px; font-weight:600; line-height:1.4; white-space:nowrap; }
.account-tab:hover { background:#FAF6EA; color:#000; }
.account-tab[aria-selected="true"] { background:#FFF7DA; border-bottom-color:#FFB600; color:#000; }
.account-tab:focus-visible { outline:2px solid #B07D00; outline-offset:-4px; }
.account-context { margin:0; padding:14px 32px; border-bottom:1px solid #EBE3CC; background:#FAF6EA; color:#7F5A00; font-size:12px; line-height:1.5; }
.account-panels { min-height:340px; }
.account-tabpanel { padding:32px; border:0; border-radius:0; box-shadow:none; background:transparent; outline-offset:-4px; }
.account-tabpanel[hidden] { display:none!important; }
.account-tabpanel > p,.account-tabpanel > dl,.account-tabpanel > form,.account-tabpanel > details { max-width:820px; }
.account-tabpanel [data-account-form="profile"],.account-tabpanel [data-account-form="organization-profile"] { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; align-items:start; }
.account-tabpanel [data-account-form="profile"] > .field:first-child,.account-tabpanel [data-account-form="organization-profile"] > .field:first-child { grid-column:1/-1; }
.account-tabpanel [data-account-form="profile"] > button,.account-tabpanel [data-account-form="organization-profile"] > button { grid-column:1/-1; justify-self:start; margin-top:6px; }
.account-tabpanel [data-account-status] { grid-column:1/-1; }
@media(max-width:650px) {
  .account-tabs { gap:2px; padding:10px 12px 0; }
  .account-tab { padding:13px 16px; }
  .account-tabpanel { padding:24px 20px; }
  .account-context { padding:12px 20px; }
  .account-panels { min-height:280px; }
  .account-tabpanel [data-account-form="profile"],.account-tabpanel [data-account-form="organization-profile"] { grid-template-columns:minmax(0,1fr); gap:0; }
}
