.account-page { max-width: 1180px; }
.account-heading { margin-bottom:24px; }
.account-heading h1 { margin:5px 0 7px; }
.account-heading p:last-child { color:var(--muted); margin:0; }
.account-overview { align-items:center; background:linear-gradient(105deg,rgba(232,97,45,.12),rgba(255,255,255,.018) 48%,transparent),var(--surface); display:flex; min-height:124px; overflow:hidden; padding:24px; position:relative; }
.account-overview::after { border:1px solid rgba(232,97,45,.13); border-radius:50%; content:""; height:180px; left:-80px; pointer-events:none; position:absolute; top:-105px; width:180px; }
.account-identity { align-items:center; display:flex; gap:16px; min-width:0; position:relative; z-index:1; }
.account-profile-avatar { background:linear-gradient(145deg,#f0844d,#a53f20); border:1px solid rgba(255,197,164,.6); border-radius:18px; box-shadow:0 12px 28px rgba(111,40,17,.28); color:#fff; display:grid; flex:0 0 76px; font-size:30px; font-weight:950; height:76px; place-items:center; }
.account-identity-copy { min-width:0; }
.account-identity-copy h2 { font-size:24px; margin:5px 0 3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.account-identity-copy p { color:var(--muted); font-size:11px; margin:0; }
.account-status { align-items:center; color:#c4d0df; display:flex; font-size:9px; font-weight:800; gap:6px; letter-spacing:.06em; text-transform:uppercase; }
.account-status i { background:#61d698; border-radius:50%; box-shadow:0 0 0 4px rgba(97,214,152,.1); height:7px; width:7px; }
.account-save-section { margin-top:30px; }
.account-section-heading { align-items:end; display:flex; gap:24px; justify-content:space-between; margin-bottom:12px; padding:0 2px; }
.account-section-heading h2 { margin:4px 0 0; }
.account-section-heading > p { color:var(--muted); font-size:11px; margin:0; }
.account-save-grid { display:grid; gap:12px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.account-save-card { background:var(--surface); border:1px solid var(--line); border-radius:14px; color:var(--text); display:grid; gap:7px; grid-template-columns:minmax(0,1fr) auto; min-height:122px; padding:15px 16px; position:relative; text-decoration:none; transition:border-color .16s ease,transform .16s ease; }
.account-save-card:hover { border-color:rgba(232,97,45,.55); transform:translateY(-2px); }
.account-save-card > div { align-items:center; display:flex; gap:8px; grid-column:1/-1; justify-content:space-between; }
.account-save-card span { font-size:10px; font-weight:850; letter-spacing:.04em; }
.account-save-card em { background:rgba(255,255,255,.055); border-radius:999px; color:var(--muted); font-size:8px; font-style:normal; padding:4px 7px; }
.account-save-card.has-save em { background:rgba(97,214,152,.1); color:#9de2bd; }
.account-save-card.is-warning em { background:rgba(232,97,45,.13); color:#f2a17a; }
.account-save-card strong { font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.account-save-card small { color:var(--muted); font-size:9px; grid-column:1; }
.account-save-card > b { align-self:end; color:var(--accent-strong); font-size:18px; grid-column:2; grid-row:2/4; }
.account-workspace { align-items:start; display:grid; gap:18px; grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr); margin-top:30px; }
.account-card { min-width:0; padding:22px; }
.account-card-heading { align-items:flex-start; display:flex; gap:13px; margin-bottom:20px; }
.account-card-heading > div { min-width:0; }
.account-card-heading h2 { margin:3px 0 4px; }
.account-card-heading p:last-child { color:var(--muted); font-size:11px; line-height:1.5; margin:0; }
.account-card-icon { background:var(--accent-soft); border:1px solid rgba(232,97,45,.3); border-radius:10px; color:var(--accent-strong); display:grid; flex:0 0 38px; font-size:13px; font-weight:900; height:38px; place-items:center; }
.redemption-form { align-items:end; display:grid; gap:10px; grid-template-columns:minmax(0,1fr) auto; margin-top:2px; }
.redemption-form label { min-width:0; }
.redemption-form input { letter-spacing:.08em; text-transform:uppercase; }
.account-form-note { border-top:1px solid var(--line); color:var(--muted); font-size:9px; line-height:1.55; margin:17px 0 0; padding-top:13px; }
.redemption-preview,.redemption-result { background:linear-gradient(135deg,rgba(255,255,255,.025),transparent 58%),var(--surface-soft); border:1px solid var(--line); border-radius:14px; margin-top:4px; padding:18px; }
.redemption-preview h3 { margin:10px 0 4px; }
.redemption-preview p { color:var(--muted); margin:0; }
.redemption-preview ul,.redemption-result ul { display:grid; gap:8px; list-style:none; margin:14px 0; padding:0; }
.redemption-preview li,.redemption-result li { align-items:center; background:rgba(255,255,255,.04); border-radius:10px; display:flex; gap:8px; padding:10px 12px; }
.redemption-preview li b,.redemption-result li b { color:var(--accent-strong); margin-left:auto; }
.redemption-result.is-success { border-color:rgba(75,212,138,.28); }
.redemption-result-heading { align-items:center; display:flex; gap:11px; }
.redemption-result-heading > div { display:grid; gap:3px; min-width:0; }
.redemption-result-heading strong { color:#b5f1ce; font-size:15px; }
.redemption-result-heading span { color:var(--muted); font-size:12px; }
.redemption-status-icon { background:rgba(75,212,138,.1); border:1px solid rgba(75,212,138,.42); border-radius:50%; color:#98e9ba; display:grid; flex:0 0 30px; font-weight:900; height:30px; place-items:center; width:30px; }
.redemption-result li small { color:var(--muted); margin-left:4px; }
.redemption-actions { align-items:center; display:flex; gap:15px; margin:0; }
.redemption-text-link { align-items:center; color:var(--muted); display:inline-flex; font-size:12px; font-weight:750; min-height:44px; text-decoration:none; }
.redemption-text-link:hover { color:var(--text); }
.mode-chip { background:var(--accent-soft); border-radius:999px; color:var(--accent-strong); display:inline-flex; font-size:11px; font-weight:800; padding:4px 8px; }
.redemption-chips { display:flex; flex-wrap:wrap; gap:6px; }
.mode-chip.is-neutral { background:rgba(255,255,255,.055); color:var(--muted); }
.account-password-form { gap:12px; }
.account-password-form label { position:relative; }
.account-password-form label small { color:var(--muted); display:block; font-size:9px; line-height:1.45; margin-top:5px; }
.account-password-form .primary { justify-self:start; margin-top:3px; min-width:132px; }
@media (max-width:900px) { .account-workspace { grid-template-columns:1fr; }.account-save-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:720px) { .account-page { padding-top:28px; }.account-heading { align-items:flex-start; }.account-save-grid { grid-template-columns:1fr; }.account-save-card { min-height:106px; }.account-section-heading { align-items:flex-start; flex-direction:column; gap:4px; } }
@media (max-width:560px) { .account-overview { min-height:98px; padding:18px; }.account-profile-avatar { border-radius:15px; flex-basis:62px; font-size:25px; height:62px; }.account-identity-copy h2 { font-size:21px; }.account-workspace { margin-top:24px; }.account-card { padding:17px; }.redemption-form { grid-template-columns:1fr; }.redemption-form .primary { width:100%; }.redemption-preview,.redemption-result { padding:15px; }.redemption-actions { align-items:stretch; flex-direction:column; gap:3px; }.redemption-actions .primary,.redemption-actions .primary-button { width:100%; }.redemption-text-link { justify-content:center; }.redemption-result li { flex-wrap:wrap; }.redemption-result li small { margin-left:0; width:100%; }.account-password-form .primary { justify-self:stretch; width:100%; } }
