/* A compact, two-column collector profile. Auth pages keep their existing theme. */
.account-page:has(#profile-panel:not([hidden])) { background: #09090b !important; color: #efedf6; font-family: Arial, sans-serif !important; }
.account-page:has(#profile-panel:not([hidden]))::before,
.account-page:has(#profile-panel:not([hidden]))::after,
.account-page:has(#profile-panel:not([hidden])) .ash-particle { display: none; }
.account-page:has(#profile-panel:not([hidden])) .account-shell { max-width: 1120px; padding-top: 112px; }
.account-page:has(#profile-panel:not([hidden])) .account-heading { display: none; }
#profile-panel { --violet: #a36cff; --muted: #a4a0b1; --line: #ffffff16; display: grid; grid-template-columns: minmax(0,2.1fr) minmax(280px,1fr); gap: 18px 22px; align-items: start; grid-template-areas: 'cover cover' 'level tools' 'stats tools' 'awards history' 'favorites history' 'reading history' 'personal personal' 'settings settings' 'sync sync'; }
#profile-panel .profile-content { display: contents; }
#profile-panel .profile-cover { grid-area: cover; min-height: 205px; padding: 32px 26px; margin-bottom: 10px; border: 1px solid #ffffff12; border-radius: 16px; align-items: center; background-position: center; }
#profile-panel .cover-identity { gap: 25px; }
#profile-panel #profile-avatar { width: 112px; height: 112px; flex-basis: 112px; padding: 3px; border: 2px solid #aca0c1; box-shadow: 0 0 0 5px #ffffff07; }
#profile-panel #profile-name { font: 900 clamp(28px,4vw,42px)/1.12 Arial,sans-serif; letter-spacing: -.055em; margin: 10px 0; color: #fff; }
#profile-panel .cover-identity .account-eyebrow { font: 11px/1.5 Arial,sans-serif; letter-spacing: .15em; color: #b5aabf; }
#profile-panel .profile-rank { font: 700 12px/1.5 Arial,sans-serif; letter-spacing: .03em; color: #88d7ee; background: #0e879720; border: 1px solid #4dc5e93d; border-radius: 6px; padding: 3px 9px; }
#profile-panel #profile-bio-display { color: #ccc6d4; font: 16px/1.5 Arial,sans-serif; max-width: 600px; margin: 12px 0 6px; }
#profile-panel #profile-character-display { font: 13px/1.5 Arial,sans-serif; color: #a7a0b1; }
#profile-panel .cover-edit { align-self: end; font-size: 13px; border-color: #ffffff24; color: #d9c4ff; background: #0c0b10b8; }
#profile-panel .account-card { background: #111113; border: 1px solid var(--line); border-radius: 14px; box-shadow: none; }
#profile-panel h2,#profile-panel h3,#profile-panel h4,#profile-panel button { font-family: Arial,sans-serif !important; }
#profile-panel a { color: #bd94ff; }
#profile-panel button { min-height: 42px; border-color: #ffffff24; background: #19171f; color: #ded9e8; font: 600 14px/1.4 Arial,sans-serif; }
#profile-panel button:hover:not(:disabled) { border-color: #ac78ff; background: #282032; }
#profile-panel :focus-visible { outline: 2px solid #b187ff; outline-offset: 4px; }
#profile-panel .account-primary,#profile-panel #profile-edit { background: linear-gradient(105deg,#7522ea,#a15dff); border: 1px solid #b081ff7d; color: #fff; box-shadow: 0 2px 16px #7c36eb30; border-radius: 8px; }
#profile-panel .account-identity { grid-area: tools; padding: 13px; text-align: left; background: #111113; }
#profile-panel #profile-edit { width: 100%; margin: 0 0 10px; min-height: 44px; font-size: 14px; }
#profile-panel .profile-navigation { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; border: 0; padding: 0; }
#profile-panel .profile-navigation a { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 8px 5px; min-height: 38px; border: 1px solid var(--line); border-radius: 7px; color: #b4a9c7; font: 12px/1.4 Arial,sans-serif; text-decoration: none; }
#profile-panel .profile-navigation a>span { color: #9e7dcc; font-size: 15px; width: auto; }
#profile-panel .profile-navigation a[aria-current] { background: #8c49e516; border-color: #9561d735; box-shadow: none; color: #d4b8ff; }
#profile-panel .profile-navigation a:last-child { grid-column: 1 / -1; }
#profile-panel .profile-sidebar-bottom { display: flex; justify-content: end; margin: 8px 0 0; border: 0; padding: 0; }
#profile-panel .profile-sidebar-bottom p { display: none; }
#profile-panel #sign-out { margin: 0; padding: 6px; min-height: 32px; color: #aaa2b6; font-size: 12px; background: transparent; border: 0; }
#profile-panel .journey-level { grid-area: level; gap: 16px; padding: 18px; border: 1px solid #9161af38; border-radius: 13px; background: linear-gradient(100deg,#17121f,#101012 60%,#281726); min-width: 0; }
#profile-panel .journey-level-seal { width: 64px; height: 64px; flex-basis: 64px; border-radius: 12px; border: 1px solid #b69ae4; background: linear-gradient(145deg,#7346a9,#321455); box-shadow: inset 0 0 0 4px #170e3380,0 0 17px #8a3be52b; }
#profile-panel .journey-level-seal span { font: 10px/1.4 Arial,sans-serif; color: #d8bafc; }
#profile-panel #journey-level { font: 900 29px/1.15 Arial,sans-serif; color: #f1e6ff; }
#profile-panel .level-heading { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
#profile-panel .journey-level-copy h3 { color: #f4eafa; font: 800 18px/1.2 Arial,sans-serif; margin: 0; }
#journey-percent { color: #b875ff; font: 800 14px Arial,sans-serif; }
#profile-panel .journey-level-copy p { color: #a9a0b5; font: 12px/1.5 Arial,sans-serif; margin: 6px 0 0; }
#profile-panel #journey-progress { height: 7px; margin: 8px 0 0; accent-color: #a355ff; }
#profile-panel #journey-progress::-webkit-progress-bar { background: #08080b; }
#profile-panel #journey-progress::-webkit-progress-value { background: linear-gradient(90deg,#7625ef,#be73ff); }
#profile-panel .profile-stats { grid-area: stats; gap: 12px; }
#profile-panel .profile-stats a { position: relative; justify-content: center; padding: 23px 10px 17px; min-height: 106px; box-sizing: border-box; border-radius: 12px; background: radial-gradient(ellipse at 50% 0,#23528c26,transparent 80%),#0d0f13; border: 1px solid #61779833; }
#profile-panel .profile-stats a:nth-child(2) { background: radial-gradient(ellipse at 50% 0,#248b7026,transparent 80%),#0d1111; border-color: #57928030; }
#profile-panel .profile-stats a:nth-child(3) { background: radial-gradient(ellipse at 50% 0,#008ca92b,transparent 80%),#0d1113; border-color: #51909b33; }
#profile-panel .profile-stats a>span { display: block; position: absolute; right: 10px; top: 8px; width: auto; height: auto; background: none; font-size: 17px; color: #93abd1; }
#profile-panel .profile-stats a>div { text-align: center; gap: 9px; }
#profile-panel .profile-stats strong { font: 900 34px/1 Arial,sans-serif; letter-spacing: -.04em; color: #fff; text-shadow: 0 2px 12px #7394e633; }
#profile-panel .profile-stats div>span { font: 11px/1.4 Arial,sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #a39bb0; }
#profile-panel .profile-achievements { grid-area: awards; padding: 20px; border-color: #a56ede2b; background: linear-gradient(140deg,#19131c,#111113 40%); }
#profile-panel .profile-section-heading { padding-bottom: 13px; margin-bottom: 18px; border-bottom: 1px solid var(--line); }
#profile-panel .profile-section-heading h2 { font: 700 18px/1.4 Arial,sans-serif; color: #eae5f2; margin: 0; }
#profile-panel .profile-section-heading h2>span { color: #ae85ed; margin-right: 6px; }
#profile-panel #journey-count { font: 12px Arial,sans-serif; color: #a092b4; }
.achievement-rank { display: flex; align-items: center; gap: 15px; padding: 4px 0 19px; border-bottom: 1px solid #ffffff12; }
.rank-emblem { display: grid; place-items: center; width: 64px; height: 64px; flex: 0 0 64px; font-size: 34px; color: #ffcdb9; border: 1px solid #d680737d; border-radius: 16px; background: radial-gradient(ellipse,#a93638a0,#432625); box-shadow: inset 0 0 0 5px #9b665e30,0 0 28px #ff673d20; }
.achievement-rank>div { min-width: 0; }
#profile-panel .achievement-rank .account-eyebrow { font: 10px/1.5 Arial,sans-serif; letter-spacing: .18em; color: #bd9caf; }
#profile-panel #profile-rank-title { font: 900 clamp(20px,2.3vw,30px)/1.1 Arial,sans-serif; color: #fff; text-transform: uppercase; margin: 5px 0; letter-spacing: -.04em; }
.achievement-rank p { font: 12px/1.5 Arial,sans-serif; color: #b3aaba; margin: 5px 0 0; }
.achievement-score { margin-left: auto; text-align: right; flex-shrink: 0; }
.achievement-score strong { display: block; font: 900 34px/1.1 Arial,sans-serif; letter-spacing: -.06em; color: #fce4a8; }
.achievement-score>span { display: block; margin-top: 5px; font: 10px/1.5 Arial,sans-serif; letter-spacing: .13em; color: #d4bc82; }
#profile-panel #journey-status { display: inline-block; font: 12px/1.5 Arial,sans-serif; color: #9c90aa; margin: 12px 12px 0 0; }
#profile-panel #journey-refresh { padding: 5px 8px; min-height: 30px; font-size: 12px; color: #b799dc; background: transparent; border: 0; }
#profile-panel .trophy-heading { margin-top: 22px; padding: 0; border: 0; }
#profile-panel .trophy-heading h3,.recent-title { color: #a8a0b3; font: 700 11px/1.5 Arial,sans-serif; letter-spacing: .12em; text-transform: uppercase; margin: 0; }
#profile-panel .trophy-heading a { font: 12px/1.5 Arial,sans-serif; }
#profile-panel .profile-trophies { gap: 10px; grid-template-columns: repeat(3,minmax(0,1fr)); }
#profile-panel .trophy { display: block; padding: 18px 10px 14px; text-align: center; border: 1px solid #ffffff16; border-radius: 12px; background: #111113; }
#profile-panel .trophy.earned { background: radial-gradient(ellipse at 50% 20%,#ae7a302b,transparent 70%),#121213; border-color: #9470494f; }
#profile-panel .trophy.earned:nth-child(2) { background: radial-gradient(ellipse at 50% 20%,#cb345331,transparent 70%),#121213; border-color: #b155654f; }
#profile-panel .trophy.earned:nth-child(3) { background: radial-gradient(ellipse at 50% 20%,#08a2be2b,transparent 70%),#121213; border-color: #399ab44f; }
#profile-panel .trophy-seal { width: 54px; height: 54px; margin: 0 auto 16px; border-radius: 13px; outline-offset: -5px; font-size: 27px; color: #f7ddba; border-color: #d9ac7890; background: #775c4133; box-shadow: 0 0 19px #cda55922; }
#profile-panel .trophy:nth-child(2) .trophy-seal { border-color: #de718490; color: #ffd5df; background: #a8354c25; box-shadow: 0 0 19px #c7304930; }
#profile-panel .trophy:nth-child(3) .trophy-seal { border-color: #68c9e190; color: #bfefff; background: #2298af25; box-shadow: 0 0 19px #27c8df30; }
#profile-panel .trophy h4 { font: 700 14px/1.35 Arial,sans-serif; color: #eee9f5; min-height: 38px; margin: 0 0 8px; }
#profile-panel .trophy p { font: 12px/1.6 Arial,sans-serif; color: #a89bb2; }
#profile-panel .recent-title { margin: 24px 0 12px; }
.profile-recent-awards { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.profile-recent-awards li { display: flex; align-items: center; gap: 12px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff02; }
.recent-medal { display: grid; place-items: center; width: 32px; height: 36px; flex-shrink: 0; border: 1px solid #917ba05e; border-radius: 7px; background: #82608720; color: #c2a5d7; }
.profile-recent-awards li>div { min-width: 0; }
.profile-recent-awards strong { display: block; font: 700 14px/1.4 Arial,sans-serif; color: #ded9e5; }
.profile-recent-awards li>div>span { font: 12px/1.5 Arial,sans-serif; color: #958a9e; }
.profile-recent-awards b { margin-left: auto; white-space: nowrap; font: 600 12px Arial,sans-serif; color: #eac87c; }
#profile-panel .journey-details { border-color: var(--line); margin-top: 20px; }
#profile-panel .journey-details summary { padding: 14px 0 0; font: 600 14px/1.5 Arial,sans-serif; color: #c49df9; }
#profile-panel .journey-details summary>span { background: #a97ce414; color: #b98fe9; }
#profile-panel #journey-badges article { background: #141117; border-color: #b49cc828; }
#profile-panel #journey-badges h3 { font: 600 15px/1.4 Arial,sans-serif; color: #e2d2ef; }
#profile-panel #journey-badges p { font: 14px/1.5 Arial,sans-serif; color: #a89db2; }
#profile-panel .journey-ranks { font-size: 12px; color: #a497b4; }
#profile-panel .journey-ranks span { border-color: #875eb8; }
#profile-panel .journey-filters [aria-pressed=true] { background: #713aab40; border-color: #aa76dd; }
#profile-panel .profile-favorites { grid-area: favorites; padding: 20px; background: transparent; border: 0; }
#profile-panel #profile-favorite-empty { background: #ffffff02; padding: 22px 18px; font: 14px/1.7 Arial,sans-serif; color: #9e93aa; border-color: #ffffff1f; }
.favorite-discover { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; margin-top: 12px; padding: 8px; border: 1px dashed #a98cce38; border-radius: 9px; font: 14px/1.5 Arial,sans-serif; text-decoration: none; }
.favorite-discover>span { font-size: 22px; }
#profile-panel .profile-favorite-card { border-color: var(--line); background: #111113; }
#profile-panel .profile-favorite-card h3 { font: 700 15px/1.4 Arial,sans-serif; color: #d9d1e4; }
#profile-panel .profile-favorite-card p { font: 12px/1.5 Arial,sans-serif; }
#profile-panel .profile-history-panel { grid-area: history; min-width: 0; padding: 3px 4px 18px; }
#profile-panel .profile-history-panel .profile-section-heading { margin-bottom: 0; }
#profile-panel .profile-history-panel h2 { font-size: 16px; }
#profile-panel .profile-history-panel>.account-note { font-size: 12px; margin-top: 8px; color: #82768e; }
#profile-panel .profile-history { padding-left: 7px; margin-top: 24px; }
#profile-panel .profile-history li { border-color: #caac533d; padding: 0 0 24px 22px; gap: 6px; }
#profile-panel .profile-history li::before { border-radius: 50%; transform: none; border: 0; background: #d1b55d; width: 7px; height: 7px; left: -4px; box-shadow: 0 0 10px #cba73744; }
#profile-panel .profile-history strong { font: 600 14px/1.45 Arial,sans-serif; color: #ded7e7; }
#profile-panel .profile-history time { color: #a38aac; font-size: 11px; }
#profile-panel .profile-history li>span { color: #82758f; font-size: 12px; }
#profile-panel .profile-reading { grid-area: reading; grid-template-columns: 130px minmax(0,1fr); border-color: var(--line); background: #121114; }
#profile-panel .profile-reading>img { min-height: 100%; height: 100%; width: 130px; object-fit: cover; mask-image: none; }
#profile-panel .profile-reading-copy { padding: 18px; }
#profile-panel .profile-reading h2 { font: 800 21px/1.2 Arial,sans-serif; margin: 8px 0; color: #e9e0f1; }
#profile-panel .profile-reading-copy>p { font: 14px/1.6 Arial,sans-serif; color: #a497b1; }
#profile-panel .profile-reading .account-eyebrow { color: #a97bd2; font-size: 10px; letter-spacing: .1em; }
#profile-panel .profile-reading-link { background: #733ab126; border-color: #a770d940; color: #cda2ff; font: 600 13px/1.5 Arial,sans-serif; min-height: 38px; padding: 8px 14px; }
#profile-panel .profile-progress-label { margin-top: 16px; font-size: 12px; color: #a899b4; }
#profile-panel .profile-personalization { grid-area: personal; }
#profile-panel .profile-settings { grid-area: settings; }
#profile-panel .profile-sync-settings { grid-area: sync; }
#profile-panel .profile-personalization,#profile-panel .profile-settings,#profile-panel .profile-sync-settings { background: #101013; border-color: var(--line); }
#profile-panel details>summary { font: 600 16px/1.5 Arial,sans-serif; color: #c0b3ce; }
#profile-panel .account-note { color: #a398b0; }
#profile-panel form legend { font-family: Arial,sans-serif; color: #cfc3dd; }
#profile-panel input:not([type=radio]):not([type=checkbox]),#profile-panel textarea,#profile-panel select { background: #0a090d; border-color: #62516c; }
#profile-panel .cover-upload { border-color: #ac7de442; background: #8752c409; }
#profile-panel .cover-choices label:has(:checked) { outline-color: #b280fc; }
@media(max-width:900px) {
 #profile-panel { grid-template-columns: minmax(0,1.7fr) minmax(250px,1fr); gap: 16px; }
 #profile-panel .profile-cover { padding: 26px 20px; }
 #profile-panel .profile-achievements { padding: 16px; }
 .achievement-rank { gap: 10px; flex-wrap: wrap; }
 .rank-emblem { width: 48px; height: 52px; flex-basis: 48px; font-size: 27px; }
 .achievement-score strong { font-size: 28px; }
 #profile-panel .profile-reading { grid-template-columns: 90px minmax(0,1fr); }
 #profile-panel .profile-reading>img { width: 90px; }
 #profile-panel .trophy { padding: 16px 7px 12px; }
}
@media(max-width:700px) {
 .account-page:has(#profile-panel:not([hidden])) .account-shell { padding: 95px 16px 40px; }
 #profile-panel { grid-template-columns: minmax(0,1fr); grid-template-areas: 'cover' 'level' 'tools' 'stats' 'awards' 'favorites' 'reading' 'history' 'personal' 'settings' 'sync'; gap: 16px; }
 #profile-panel .profile-cover { min-height: 210px; padding: 22px 16px; gap: 14px; margin: 0; }
 #profile-panel .cover-identity { gap: 18px; }
 #profile-panel #profile-avatar { width: 82px; height: 82px; flex-basis: 82px; }
 #profile-panel .cover-identity .account-eyebrow { font-size: 10px; }
 #profile-panel .account-identity { padding: 12px; }
 #profile-panel .profile-navigation { grid-template-columns: repeat(3,minmax(0,1fr)); }
 #profile-panel .profile-navigation a:last-child { grid-column: auto; }
 #profile-panel .profile-sidebar-bottom { margin-top: 2px; }
 #profile-panel .profile-stats { gap: 8px; }
 #profile-panel .profile-stats a { padding: 26px 6px 15px; min-height: 95px; }
 #profile-panel .profile-stats strong { font-size: 29px; }
 #profile-panel .profile-stats div>span { font-size: 10px; letter-spacing: 0; }
 #profile-panel .profile-history-panel { padding: 18px; border: 1px solid var(--line); border-radius: 12px; }
 #profile-panel .profile-favorites { padding: 12px 0; }
 #profile-panel .journey-level { padding: 15px; gap: 12px; }
 #profile-panel .journey-level-copy h3 { font-size: 16px; }
 #profile-panel .profile-trophies { gap: 7px; }
 #profile-panel .trophy h4 { font-size: 12px; }
 #profile-panel .trophy p { font-size: 11px; }
 #profile-panel .trophy-seal { width: 45px; height: 48px; }
 .achievement-rank p { max-width: 175px; }
 .achievement-score { flex-basis: 100%; display: flex; align-items: baseline; gap: 10px; text-align: left; padding-left: 58px; }
}
@media(prefers-reduced-motion:reduce) { #profile-panel * { scroll-behavior: auto; transition: none; animation: none; } }
