.profile-page [hidden] { display: none !important; }
.profile-main { max-width: 1000px; min-height: calc(100dvh - 125px); padding-top: 143px; padding-bottom: 86px; }
.profile-back { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 43px; color: #919cb4; font-size: 0.71rem; }
.profile-back:hover { color: #e1e9ff; }
.profile-back svg { width: 14px; height: 14px; }
.profile-hero { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding-bottom: 37px; border-bottom: 1px solid #ffffff13; }
.profile-identity { display: flex; align-items: center; gap: 24px; min-width: 0; }
.profile-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 82px; height: 82px; border: 1px solid #adbef735; border-radius: 25px; background: linear-gradient(145deg, #344368, #17213b); box-shadow: inset 0 1px 0 #ffffff0d, 0 10px 35px #0004; color: #dfe9ff; font-size: 2.1rem; font-weight: 700; }
.profile-identity-copy { min-width: 0; }
.profile-eyebrow { color: #8f9ebd; font-size: 0.6rem; font-weight: 700; letter-spacing: 0.17em; }
.profile-hero h1 { margin: 8px 0 13px; color: #edf2ff; font-size: clamp(2rem, 4vw, 2.7rem); line-height: 1.15; letter-spacing: -0.05em; overflow-wrap: anywhere; }
.profile-info { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; color: #939fb9; font-size: 0.68rem; }
.profile-mode { padding: 4px 8px; border: 1px solid #a0b3e923; border-radius: 6px; background: #8099d70b; color: #b0c0e9; font-size: 0.61rem; font-weight: 600; }
.profile-email { margin: 10px 0 0; color: #9ba8c3; font-size: 0.72rem; overflow-wrap: anywhere; }
.profile-signout { display: inline-flex; align-items: center; justify-content: center; gap: 7px; flex: 0 0 auto; min-height: 36px; padding: 0 12px; border: 1px solid #ffffff15; border-radius: 9px; background: #ffffff03; color: #9faac2; font: inherit; font-size: 0.7rem; cursor: pointer; transition: color 150ms, border-color 150ms, background 150ms; }
.profile-signout svg { width: 14px; height: 14px; }
.profile-signout:hover { border-color: #c6d4ff32; background: #ffffff06; color: #dce5fc; }
.profile-uploads { margin-top: 38px; }
.profile-uploads-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.profile-uploads-heading h2 { margin: 0 0 8px; color: #e5ecfc; font-size: 1.05rem; letter-spacing: -0.025em; }
.profile-uploads-heading p { margin: 0; color: #8c99b4; font-size: 0.73rem; line-height: 1.7; }
.profile-add { display: inline-flex; align-items: center; justify-content: center; gap: 7px; flex: 0 0 auto; min-height: 37px; padding: 0 13px; border: 1px solid #a0b4f33a; border-radius: 9px; background: #829ce512; color: #cbd9ff; font: inherit; font-size: 0.71rem; font-weight: 600; text-decoration: none; cursor: pointer; transition: background 150ms, border-color 150ms; }
.profile-add svg { width: 15px; height: 15px; }
.profile-add:hover { background: #829ce522; border-color: #a0b4f366; }
.profile-tabs { display: flex; gap: 25px; border-bottom: 1px solid #ffffff12; }
.profile-tabs button { position: relative; display: inline-flex; align-items: center; gap: 9px; min-height: 46px; padding: 0 1px 15px; border: 0; background: none; color: #8390ad; font: inherit; font-size: 0.73rem; font-weight: 600; cursor: pointer; }
.profile-tabs button[aria-selected="true"] { color: #d5e0ff; }
.profile-tabs button[aria-selected="true"]::after { content: ""; position: absolute; bottom: -1px; inset-inline: 0; height: 2px; border-radius: 1px; background: #9db3ee; }
.profile-tabs button > span { display: grid; place-items: center; min-width: 21px; padding: 3px 5px; border: 1px solid #ffffff0b; border-radius: 5px; background: #ffffff04; color: #94a3c2; font-size: 0.6rem; }
.profile-empty { display: grid; justify-items: center; padding: 59px 22px 54px; text-align: center; }
.profile-empty-icon, .profile-gate-icon { display: grid; place-items: center; width: 51px; height: 51px; margin-bottom: 18px; border: 1px solid #a3b6ec1e; border-radius: 15px; background: #8199de08; color: #8499c8; }
.profile-empty-icon svg { width: 23px; height: 23px; stroke-width: 1.35; }
.profile-empty h3 { margin: 0 0 10px; color: #d9e2f8; font-size: 0.92rem; font-weight: 600; letter-spacing: -0.02em; }
.profile-empty > p { margin: 0; color: #8593af; font-size: 0.73rem; line-height: 1.75; }
.profile-empty > a { display: inline-flex; gap: 6px; margin-top: 21px; color: #b8c9f5; font-size: 0.7rem; }
.profile-empty > a:hover { color: #e1eaff; }
.profile-gate { display: grid; justify-items: center; padding: 65px 22px 80px; border: 1px solid #ffffff12; border-radius: 17px; background: #11182825; text-align: center; }
.profile-gate-icon { width: 61px; height: 61px; border-radius: 19px; }
.profile-gate-icon svg { width: 27px; height: 27px; }
.profile-gate h1 { margin: 5px 0 10px; font-size: clamp(1.65rem, 4vw, 2.1rem); letter-spacing: -0.045em; }
.profile-gate p { margin: 0 0 25px; color: #929fba; font-size: 0.78rem; line-height: 1.8; }
.profile-loading, .profile-list-loading { padding: 50px 20px; color: #929fbb; text-align: center; font-size: 0.78rem; }
.profile-feedback { margin: 22px 0 0; }
.profile-upload { display: grid; grid-template-columns: 37px minmax(0, 1fr) auto; align-items: center; gap: 15px; padding: 21px 0; border-bottom: 1px solid #ffffff0c; }
.profile-upload-icon { display: grid; place-items: center; width: 37px; height: 37px; border: 1px solid #9cafe51e; border-radius: 11px; background: #819be20a; color: #9cb0df; }
.profile-upload-icon svg { width: 18px; height: 18px; }
.profile-upload h3 { margin: 0 0 6px; color: #d8e2f8; font-size: 0.83rem; font-weight: 600; overflow-wrap: anywhere; }
.profile-upload p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin: 0; color: #8695b2; font-size: 0.7rem; line-height: 1.7; overflow-wrap: anywhere; }
.profile-upload-meta { display: flex; align-items: center; gap: 10px; margin-top: 7px; color: #6f80a2; font-size: 0.6rem; }
.profile-upload-meta span { max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.profile-download { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #a1b7ee26; border-radius: 9px; background: #819be20a; color: #acbfe8; cursor: pointer; }
.profile-download svg { width: 16px; height: 16px; }
.profile-download:hover { background: #819be217; border-color: #a1b7ee50; }
.profile-more { display: block; margin: 22px auto 0; padding: 10px 17px; border: 1px solid #ffffff20; border-radius: 8px; background: #ffffff04; color: #b9c8e9; font: inherit; font-size: 0.72rem; cursor: pointer; }
.profile-page button:disabled { opacity: 0.5; cursor: wait; }
.profile-main button:focus-visible, .profile-main a:focus-visible, .profile-main [role="tabpanel"]:focus-visible { outline: 2px solid #9fb5f0; outline-offset: 4px; }
@media (max-width: 1020px) { .profile-main { padding-top: 120px; } }
.profile-avatar-wrap { position: relative; flex: 0 0 auto; }
.profile-avatar { overflow: hidden; }
.profile-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.profile-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.profile-owner-actions { display: flex; flex-wrap: wrap; gap: 9px; }
@media (max-width: 720px) {
  .profile-main { padding-top: 107px; padding-bottom: 55px; }
  .profile-back { margin-bottom: 34px; }
  .profile-hero { align-items: flex-start; flex-direction: column; gap: 23px; padding-bottom: 28px; }
  .profile-identity { gap: 16px; width: 100%; }
  .profile-avatar { width: 65px; height: 65px; border-radius: 20px; font-size: 1.7rem; }
  .profile-info { gap: 8px; }
  .profile-info > span:last-child { line-height: 1.6; }
  .profile-hero h1 { font-size: 2rem; }
  .profile-uploads { margin-top: 29px; }
  .profile-uploads-heading { align-items: flex-start; gap: 14px; }
  .profile-uploads-heading p { max-width: 190px; font-size: 0.68rem; }
  .profile-add { min-height: 35px; padding-inline: 10px; font-size: 0.66rem; }
  .profile-upload { gap: 11px; }
}

/* Profile cards share one quiet surface and generous rounded corners. */
.profile-page .page-shell { background: radial-gradient(ellipse at 75% 9%, #777cde09, transparent 42rem), #07080c; }
.profile-page .ambient, .profile-page .grid-fade, .profile-page .noise { display: none; }
.profile-main { max-width: 1080px; padding-top: 118px; padding-bottom: 80px; }
.profile-back { margin-bottom: 26px; color: #858a9b; font-size: .73rem; }
.profile-hero, .profile-activity, .profile-uploads, .profile-gate {
  border: 1px solid #b4c4ff14;
  border-radius: 22px;
  background: linear-gradient(135deg, #14192575, transparent 65%), #0d1018;
  box-shadow: inset 0 1px 0 #ffffff03, 0 12px 40px #00000017;
}
.profile-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px 30px; padding: 24px; }
.profile-identity { grid-row: 1 / span 2; gap: 22px; align-items: flex-start; }
.profile-avatar { width: 104px; height: 104px; border-radius: 50%; border: 1px solid #c1c9fa24; background: linear-gradient(145deg,#30364f,#171a27); box-shadow: 0 0 0 5px #0d1018; font-size: 2.5rem; }
.profile-eyebrow { color: #747d96; font-size: .57rem; letter-spacing: .19em; }
.profile-hero h1 { margin: 4px 0 7px; font-size: clamp(1.8rem, 3.5vw, 2.5rem); font-weight: 700; line-height: 1.12; letter-spacing: -.045em; }
.profile-email { margin: 0; color: #9197aa; font-size: .82rem; }
.profile-info { margin-top: 9px; color: #8992a8; font-size: .69rem; }
.profile-roles { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.profile-mode { padding: 0; border: 0; border-radius: 0; background: none; }
.profile-role { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 5px; background: #a8b9ed0c; color: #abb9dd; font-size: .62rem; font-weight: 600; white-space: nowrap; }
.profile-role svg { width: 14px; height: 14px; }
.profile-role--plugin-author { color: #8ed4bf; background: #72d5b80d; }
.profile-role--theme-designer { color: #c5a6ed; background: #ba8ae90d; }
.profile-owner-actions { position: absolute; top: 14px; right: 24px; justify-content: flex-end; align-self: start; gap: 15px; }
.profile-signout { padding: 0; min-height: 26px; border: 0; border-radius: 0; background: none; color: #7e879d; font-size: .65rem; }
.profile-signout:hover { background: none; color: #dce5fc; }
.profile-signout svg { width: 13px; height: 13px; }
.profile-stats { display: flex; grid-column: 2; grid-row: 1 / span 2; justify-content: flex-end; gap: 24px; margin: 0; align-self: end; padding: 0 0 4px 24px; border-left: 1px solid #ffffff0d; }
.profile-stats > div { display: flex; flex-direction: column-reverse; gap: 8px; min-width: 43px; }
.profile-stats dd { margin: 0; color: #e5e8f3; font-size: 1.4rem; font-weight: 600; letter-spacing: -.05em; }
.profile-stats dt { color: #81899d; font-size: .66rem; }
.profile-activity { position: relative; margin-top: 20px; padding: 27px 30px 25px; }
.profile-section-heading, .profile-uploads-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 25px; }
.profile-section-heading h2, .profile-uploads-heading h2 { margin: 0 0 8px; font-size: .95rem; font-weight: 600; color: #e5e7f1; letter-spacing: -.025em; }
.profile-section-heading p, .profile-uploads-heading p { margin: 0; color: #777f94; font-size: .72rem; line-height: 1.6; }
.profile-year { position: relative; display: inline-flex; align-items: center; }
.profile-year select { appearance: none; min-height: 33px; padding: 0 34px 0 12px; border: 1px solid #a3b3ec28; border-radius: 6px; background: #151722; color: #c3cce7; font: inherit; font-size: .71rem; cursor: pointer; }
.profile-year svg { position: absolute; right: 11px; width: 12px; height: 12px; color: #8996b7; pointer-events: none; }
.profile-year select:focus-visible { outline: 2px solid #a6b6f3; outline-offset: 3px; }
.profile-activity-topline { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin-bottom: 18px; }
.profile-activity-topline p { margin: 0; color: #a4acc1; font-size: .72rem; }
.profile-activity-topline > span { color: #5f687d; font-size: .61rem; }
.profile-calendar-scroll { overflow-x: auto; scrollbar-width: thin; scrollbar-color: #30374b transparent; padding: 3px 2px 7px; }
.profile-calendar-scroll:focus-visible { outline: 1px solid #899ddc; outline-offset: 4px; }
.profile-calendar { --cell: 14px; --gap: 4px; display: grid; grid-template-columns: 29px minmax(0,1fr); grid-template-rows: 19px auto; gap: 4px 8px; min-width: 760px; }
.profile-calendar-months { display: grid; grid-template-columns: repeat(var(--weeks),minmax(0,1fr)); grid-column: 2; color: #6f788e; font-size: .57rem; }
.profile-calendar-weekdays { grid-column: 1; grid-row: 2; display: grid; grid-template-rows: repeat(7,var(--cell)); gap: var(--gap); padding-top: 1px; color: #626c83; font-size: .53rem; }
.profile-calendar-weekdays span:nth-child(2) { grid-row: 3; }.profile-calendar-weekdays span:nth-child(3) { grid-row: 5; }
.profile-activity-grid { grid-column: 2; grid-row: 2; display: grid; grid-template-columns: repeat(var(--weeks),minmax(0,1fr)); grid-template-rows: repeat(7,var(--cell)); grid-auto-flow: column; gap: var(--gap); }
.profile-activity-day { width: 100%; height: 100%; min-width: 0; margin: 0; padding: 0; border: 1px solid #ffffff02; border-radius: 2px; background: #1b1f2c; cursor: pointer; transition: border-color 120ms; }
.profile-activity-day[data-level="1"], .profile-activity-legend [data-level="1"] { background: #343c65; }
.profile-activity-day[data-level="2"], .profile-activity-legend [data-level="2"] { background: #5866a2; }
.profile-activity-day[data-level="3"], .profile-activity-legend [data-level="3"] { background: #8491d1; }
.profile-activity-day[data-level="4"], .profile-activity-legend [data-level="4"] { background: #bdc7ff; }
.profile-activity-day:hover, .profile-activity-day[aria-pressed="true"] { border-color: #d0d9ff; }
.profile-activity-day:focus-visible { outline: 2px solid #c9d4ff; outline-offset: 2px; position: relative; z-index: 1; }
.profile-page .profile-activity-day:disabled { opacity: .32; cursor: default; }
.profile-activity-tooltip { position: absolute; z-index: 10; display: flex; flex-direction: column; gap: 7px; width: max-content; max-width: calc(100% - 24px); min-width: 174px; padding: 13px 16px; border: 1px solid #a4b8fa32; border-radius: 10px; background: #1b2132; box-shadow: 0 8px 25px #0007; transform: translateX(-50%); pointer-events: none; }
.profile-activity-tooltip > span:first-child { color: #a7b3cf; font-size: .61rem; }
.profile-activity-tooltip strong { color: #eef2ff; font-size: .76rem; font-weight: 600; }
.profile-activity-tooltip > span:last-child { color: #8998bc; font-size: .6rem; }
.profile-activity-tooltip::after { content: ""; position: absolute; left: var(--tooltip-arrow,50%); bottom: -5px; width: 8px; height: 8px; border-right: 1px solid #a4b8fa32; border-bottom: 1px solid #a4b8fa32; background: #1b2132; transform: translateX(-50%) rotate(45deg); }
.profile-activity-tooltip[data-placement="below"]::after { top: -5px; bottom: auto; border: 0; border-top: 1px solid #a4b8fa32; border-left: 1px solid #a4b8fa32; }
.profile-activity-bottom { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 35px; margin-top: 7px; }
.profile-activity-bottom p { margin: 0; color: #818ba3; font-size: .63rem; line-height: 1.7; }
.profile-activity-legend { display: flex; align-items: center; gap: 4px; color: #6d778e; font-size: .56rem; flex-shrink: 0; }
.profile-activity-legend span { margin: 0 3px; }.profile-activity-legend i { width: 10px; height: 10px; border-radius: 2px; background: #1b1f2c; }
.profile-activity-insights { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 13px; color: #6d778e; font-size: .64rem; }
.profile-activity-insights strong { color: #b2bdd7; font-weight: 600; }
.profile-activity-note { margin-left: auto; color: #535e76; font-size: .58rem; }
.profile-activity-status { margin: 20px 0; color: #8792ac; font-size: .72rem; }
.profile-uploads { margin-top: 20px; padding: 27px 30px; }
.profile-add { min-height: 32px; padding: 0 10px; border-color: #9cafe72a; border-radius: 6px; background: #a2b5f008; color: #bac9f1; font-size: .65rem; }
.profile-add:hover { background: #a2b5f015; }
.profile-tabs { gap: 28px; }
.profile-tabs button { font-size: .73rem; }
.profile-tabs button > span { border: 0; background: none; padding: 0; min-width: 10px; color: #6d7895; font-size: .63rem; }
.profile-empty { align-content: center; justify-items: start; padding: 30px 0 15px; text-align: left; }
.profile-empty-icon { display: none; }
.profile-empty h3 { font-size: .8rem; color: #8c97b2; }
.profile-empty > p { font-size: .7rem; color: #65708a; }
.profile-empty > a { margin-top: 15px; font-size: .68rem; }
.profile-upload-icon { border: 0; background: none; }
.profile-download { border: 0; background: none; }
.profile-upload-meta { flex-wrap: wrap; }
.profile-page .site-footer { background: none; border-top-color: #ffffff09; }
@media (max-width: 900px) {
  .profile-hero { gap: 15px 25px; }
  .profile-stats { gap: 22px; padding-left: 23px; }
  .profile-main { padding-top: 120px; }
}
@media (max-width: 720px) {
  .profile-main { padding-top: 105px; padding-bottom: 45px; }
  .profile-back { margin-bottom: 23px; }
  .profile-hero, .profile-activity, .profile-uploads, .profile-gate { border-radius: 17px; }
  .profile-hero { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; align-items: start; padding: 20px; }
  .profile-identity { grid-row: auto; gap: 16px; width: 100%; }
  .profile-avatar { width: 84px; height: 84px; font-size: 2rem; }
  .profile-hero h1 { font-size: 1.8rem; }
  .profile-eyebrow { font-size: .5rem; }
  .profile-email { font-size: .73rem; }
  .profile-roles { margin-top: 11px; gap: 6px; }
  .profile-info { margin-top: 11px; font-size: .63rem; }
  .profile-role { font-size: .57rem; padding: 4px 6px; }
  .profile-owner-actions { position: static; grid-column: 1; grid-row: 3; width: 100%; justify-content: flex-start; margin-left: 0; gap: 16px; }
  .profile-stats { grid-column: 1; grid-row: 2; justify-content: flex-start; gap: 32px; width: 100%; border: 0; padding: 0; }
  .profile-stats dd { font-size: 1.35rem; }
  .profile-activity { margin-top: 16px; padding: 23px 18px; }
  .profile-section-heading { gap: 12px; margin-bottom: 21px; }
  .profile-section-heading p, .profile-uploads-heading p { font-size: .66rem; }
  .profile-activity-topline > span { display: none; }
  .profile-calendar { --cell: 11px; --gap: 3px; min-width: 750px; }
  .profile-activity-bottom { align-items: flex-start; flex-direction: column; gap: 9px; margin-top: 8px; }
  .profile-activity-insights { gap: 16px; margin-top: 18px; }
  .profile-activity-note { width: 100%; margin-left: 0; }
  .profile-uploads { margin-top: 16px; padding: 23px 18px; }
  .profile-section-heading h2, .profile-uploads-heading h2 { font-size: .88rem; }
}
@media (prefers-reduced-motion: reduce) { .profile-activity-day { transition: none; } }

.profile-cover { overflow:hidden; width:100%; aspect-ratio:5/1; border:1px solid #b4c4ff14; border-bottom:0; border-radius:22px 22px 0 0; background:#161c2d; }
.profile-cover>img { display:block; width:100%; height:100%; object-fit:cover; }.profile-hero.has-cover { border-radius:0 0 22px 22px; border-top-color:#ffffff07; }
.profile-hero.has-cover .profile-avatar-wrap { z-index: 1; margin-top: -64px; }
@media (max-width: 720px) { .profile-hero.has-cover .profile-avatar-wrap { margin-top: -52px; } }
.profile-hero.has-cover .profile-eyebrow { display: none; }
.profile-hero:has(.profile-bio:not([hidden])) { padding-top:24px; }.profile-bio { max-width:470px; margin:12px 0 0; color:#9ca8c0; font-size:.74rem; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.profile-socials { display:flex; flex-wrap:wrap; gap:17px; margin-top:10px; }.profile-socials a { font-size:.66rem; color:#a7b9e5; }.profile-socials a:hover { color:#e4ecff; }
.profile-achievements,.profile-saved { margin-top:20px; padding:27px 30px; border:1px solid #b4c4ff14; border-radius:22px; background:linear-gradient(135deg,#14192575,transparent 65%),#0d1018; box-shadow:inset 0 1px 0 #ffffff03,0 12px 40px #00000017; }
#achievements-title>span { margin-left:9px; color:#667695; font-size:.65rem; font-weight:500; }.achievement-heading-icon { color:#9daee1; font-size:1.5rem; }.achievement-list { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; }.achievement { min-width:0; display:flex; flex-direction:column; align-items:center; text-align:center; }.achievement-symbol { display:grid; place-items:center; width:58px; height:64px; margin:0 0 13px; color:#5c6984; background:#202738; clip-path:polygon(50% 0,94% 24%,94% 76%,50% 100%,6% 76%,6% 24%); }.achievement-symbol svg { width:26px; height:26px; }.achievement strong { color:#7d8ba7; font-size:.66rem; font-weight:600; line-height:1.6; }.achievement-description { margin-top:6px; color:#525f78; font-size:.57rem; line-height:1.7; }.achievement-progress { margin-top:9px; color:#5e6d8b; font-size:.56rem; }.achievement[data-unlocked=true] .achievement-symbol { color:#e5d4a2; background:linear-gradient(145deg,#645735,#2a2b39); filter:drop-shadow(0 0 12px #d6b35a22); }.achievement[data-unlocked=true] strong { color:#d4dff7; }.achievement[data-unlocked=true] .achievement-description { color:#8292ae; }.achievement[data-unlocked=true] .achievement-progress { color:#cbb17a; }
.profile-extras-status { margin:12px 0 0; color:#9baccd; font-size:.68rem; line-height:1.7; }.profile-extras-status:empty { display:none; }
.profile-entry-actions { display:flex; align-items:center; gap:9px; }
.profile-upload--media { grid-template-columns: 116px minmax(0, 1fr) auto; gap: 18px; }
.profile-upload-thumbnail { position: relative; display: grid; place-items: center; width: 116px; height: 76px; padding: 0; overflow: hidden; border: 1px solid #a2b1e32b; border-radius: 10px; background: #080b13; color: #c1cef0; cursor: zoom-in; transition: border-color 160ms, box-shadow 160ms; }
.profile-upload-thumbnail > img, .profile-upload-thumbnail > video { display: block; width: 100%; height: 100%; object-fit: cover; }
.profile-upload-thumbnail > svg { position: absolute; right: 5px; bottom: 5px; width: 22px; height: 22px; padding: 4px; border-radius: 6px; background: #050711c9; }
.profile-upload-thumbnail:hover { border-color: #a7b9f578; box-shadow: 0 0 0 3px #879eea0c; }
.profile-upload-thumbnail:focus-visible, .profile-media-heading button:focus-visible { outline: 2px solid #a7b9f5; outline-offset: 4px; }
.profile-upload-thumbnail:disabled { cursor: default; }
.profile-media-viewer { width: min(960px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); padding: 0; border: 1px solid #a1b3e52b; border-radius: 18px; background: #0c1018; color: #e5ecfc; box-shadow: 0 30px 100px #0009; }
.profile-media-viewer::backdrop { background: #02040bdd; backdrop-filter: blur(10px); }
.profile-media-shell { padding: 16px; }
.profile-media-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.profile-media-heading h2 { margin: 0; font-size: .87rem; font-weight: 600; overflow-wrap: anywhere; }
.profile-media-heading button { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; padding: 7px; border: 1px solid #a1b3e526; border-radius: 9px; background: #a1b3e508; color: #b5c1df; cursor: pointer; }
.profile-media-heading button svg { width: 100%; height: 100%; }
.profile-media-stage { display: grid; place-items: center; border-radius: 10px; overflow: hidden; background: #05070c; }
.profile-media-stage > img, .profile-media-stage > video { display: block; max-width: 100%; max-height: calc(100dvh - 160px); object-fit: contain; }
.profile-media-error { margin: 22px 8px; color: #9eaac4; font-size: .8rem; text-align: center; }
@media (max-width: 620px) { .profile-upload--media { grid-template-columns: 76px minmax(0, 1fr) auto; gap: 12px; } .profile-upload-thumbnail { width: 76px; height: 64px; } .profile-media-shell { padding: 12px; } }
.profile-saved { display:flex; align-items:center; justify-content:space-between; gap:25px; }.profile-saved h2 { margin:0 0 8px; color:#d7e2f9; font-size:.95rem; letter-spacing:-.025em; }.profile-saved p { margin:0; color:#7889a9; font-size:.7rem; line-height:1.7; }.profile-saved-links { display:flex; flex-wrap:wrap; gap:13px; }.profile-saved-links a { padding:10px 12px; border:1px solid #d4bb7225; border-radius:8px; color:#bcad84; font-size:.65rem; }.profile-saved-links a:hover { background:#c9af6810; }
.profile-editor { width:min(560px,calc(100% - 28px)); }.profile-editor-media { margin-bottom:23px; }.profile-banner-preview { display:grid; place-items:center; overflow:hidden; aspect-ratio:5/1; border:1px solid #ffffff13; border-radius:12px; background:radial-gradient(ellipse at 10% 30%,#313e6c77,transparent 60%),#151c2b; color:#566a91; font-size:.7rem; }.profile-banner-preview img { width:100%; height:100%; object-fit:cover; }.profile-banner-actions { display:flex; align-items:center; gap:10px; margin-top:12px; }.member-small-button { position:relative; display:inline-flex; align-items:center; justify-content:center; min-height:31px; padding:0 11px; border:1px solid #8aa5e736; border-radius:7px; background:#8aa5e70a; color:#b2c6f4; font:inherit; font-size:.65rem; cursor:pointer; }.member-small-button input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }.profile-editor-media>p:not(.profile-extras-status) { margin:9px 0 0; color:#647897; font-size:.59rem; }
.member-form { display:grid; gap:9px; }.member-form label { margin-top:8px; color:#b9c7e3; font-size:.68rem; font-weight:600; }.member-form label span { margin-left:5px; color:#5f7395; font-size:.57rem; font-weight:500; }.member-form input,.member-form textarea { width:100%; min-width:0; padding:11px 12px; border:1px solid #8ba5dd32; border-radius:8px; outline:0; background:#090e18; color:#dce7ff; font:inherit; font-size:.74rem; line-height:1.7; }.member-form textarea { resize:vertical; }.member-form input:focus,.member-form textarea:focus { border-color:#819fe0; }.member-form input::placeholder,.member-form textarea::placeholder { color:#526482; }.member-field-hint { margin:0; color:#5d7193; font-size:.59rem; }.member-primary { display:flex; align-items:center; justify-content:space-between; min-height:43px; margin-top:12px; padding:0 15px; border:0; border-radius:9px; background:#b9c9f7; color:#172239; font:inherit; font-size:.75rem; font-weight:700; cursor:pointer; }.member-primary:disabled { opacity:.5; cursor:wait; }
@media(max-width:900px) { .achievement-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:23px 14px; }.profile-saved { align-items:flex-start; flex-direction:column; } }
@media(max-width:720px) { .profile-achievements,.profile-saved { padding:23px 18px; margin-top:16px; border-radius:17px; }.profile-cover { border-radius:17px 17px 0 0; }.profile-hero.has-cover { border-radius:0 0 17px 17px; }.profile-hero:has(.profile-bio:not([hidden])) { padding-top:25px; }.profile-bio { font-size:.67rem; }.achievement-list { gap:23px 11px; }.achievement-symbol { width:46px; height:52px; }.achievement-symbol svg { width:22px; height:22px; }.achievement strong { font-size:.59rem; }.achievement-description { font-size:.52rem; }.profile-entry-actions { flex-direction:column; gap:8px; }.profile-saved p { font-size:.66rem; } }
