:root{--background: hsl(0 0% 8%);--surface: hsl(0 0% 11%);--soft: hsl(0 0% 14%);--line: hsl(0 0% 22%);--text: hsl(0 0% 94%);--muted: hsl(0 0% 69%);--accent: hsl(0 0% 75%);--selection: hsl(0 0% 27%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}::selection{background:var(--selection);color:var(--text)}.page{position:relative;isolation:isolate;min-height:100svh;display:grid;align-items:center;color:var(--text);background:var(--background);padding:clamp(12px,3svh,28px) 24px}.steam-wallpaper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}.flow-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none;background:color-mix(in srgb,var(--background) 65%,transparent)}.has-wallpaper .flow-background{display:none}.has-wallpaper .profile-page{background:color-mix(in srgb,var(--background) 88%,transparent);border-radius:12px;padding-bottom:12px}.flow-background:before,.flow-background:after{content:"";position:absolute;top:-35%;right:-35%;bottom:-35%;left:-35%}.flow-background:before{background:radial-gradient(ellipse 70% 50% at 15% 35%,var(--flow-steam) 0%,transparent 75%),radial-gradient(ellipse 60% 70% at 90% 80%,var(--flow-twitter) 0%,transparent 75%),linear-gradient(140deg,var(--background) 25%,var(--flow-profile) 75%,var(--background));animation:flow-drift 34s ease-in-out infinite alternate}.flow-background:after{background:radial-gradient(ellipse 60% 35% at 5% 85%,var(--flow-instagram) 0%,transparent 80%),radial-gradient(ellipse 45% 30% at 70% 5%,var(--flow-twitter-avatar) 0%,transparent 80%),radial-gradient(ellipse 55% 35% at 90% 45%,var(--flow-discord) 0%,transparent 80%),radial-gradient(ellipse 70% 24% at 30% 80%,var(--flow-profile) 0%,transparent 80%);opacity:.55;animation:flow-drift 42s ease-in-out -12s infinite alternate-reverse}@keyframes flow-drift{0%{transform:translate3d(-3%,-2%,0) rotate(-12deg) scale(1)}to{transform:translate3d(5%,4%,0) rotate(9deg) scale(1.1)}}.profile-page{position:relative;width:min(100%,560px);margin:0 auto}.identity{position:relative;display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding:0 20px;margin-top:calc(clamp(72px,12svh,104px)*-.45)}.profile-banner{display:block;width:100%;height:clamp(90px,20svh,168px);object-fit:cover;object-position:center;border-radius:12px 12px 0 0;background:var(--soft)}.profile-banner-fallback{background:linear-gradient(120deg,var(--flow-steam),var(--flow-profile),var(--flow-twitter))}.avatar{display:block;width:clamp(72px,12svh,104px);height:clamp(72px,12svh,104px);flex-shrink:0;object-fit:cover;border-radius:50%;border:4px solid var(--background);background:var(--soft)}.avatar-placeholder{display:grid;place-items:center;color:var(--accent);font-size:28px}.profile-copy{min-width:0}h1{margin:0;font-size:clamp(28px,7vw,34px);font-weight:600;line-height:1.2;letter-spacing:-1px;overflow-wrap:anywhere}.profile-handle{margin:5px 0 0;color:var(--accent);font-size:13px;line-height:1.4}.profile-source{color:var(--muted)}.bio{margin:12px 20px 0;color:var(--muted);font-size:13px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.links{margin:18px 20px 0;border-top:1px solid var(--line)}.social-link{display:flex;align-items:center;gap:14px;min-height:clamp(52px,8svh,68px);padding:9px 6px;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;transition:background .15s ease}.social-link:hover{background:color-mix(in srgb,var(--row-accent) 6%,transparent)}.social-link:focus-visible{outline:2px solid var(--row-accent);outline-offset:4px;border-radius:3px}.social-image{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:10px;background:color-mix(in srgb,var(--row-accent) 9%,var(--background));color:var(--row-accent);overflow:hidden}.social-image img{width:100%;height:100%;object-fit:cover}.link-copy{display:flex;flex-direction:column;min-width:0;gap:5px}.link-copy strong{font-size:14px;font-weight:500;line-height:1.3}.link-copy small{color:var(--muted);font-size:12px;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arrow{margin-left:auto;flex-shrink:0;color:var(--muted)}.social-link:hover .arrow{color:var(--row-accent)}@media(max-width:480px){.page{padding:12px}.identity{padding:0 16px}.bio{font-size:13px}.links{margin-top:16px}}@media(max-height:600px){.page{padding-block:10px}.profile-banner{height:clamp(56px,17svh,100px)}.identity{gap:6px}h1{font-size:26px}.bio{margin-top:8px;font-size:12px;line-height:1.4}.links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;margin-top:12px}.social-image{width:32px;height:32px}.social-link{min-height:48px;gap:8px;padding-block:7px}.link-copy strong{font-size:13px}.link-copy small{font-size:11px}}@media(prefers-reduced-motion:reduce){.social-link{transition:none}.flow-background:before,.flow-background:after{animation:none}}.avatar-wrap{position:relative;width:clamp(72px,12svh,104px);height:clamp(72px,12svh,104px);flex-shrink:0}.avatar-decoration{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;object-fit:contain;pointer-events:none}.steam-avatar .avatar{border-radius:12px}.steam-avatar .avatar-decoration{top:0;right:0;bottom:0;left:0;width:100%;height:100%}.social-image-wrap{position:relative;flex-shrink:0}.social-image-wrap .social-image{border-radius:50%}.steam-link-avatar .social-image{border-radius:8px}.link-decoration{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;object-fit:contain;pointer-events:none}.steam-link-avatar .link-decoration{top:0;right:0;bottom:0;left:0;width:100%;height:100%}.profile{position:relative;isolation:isolate}.nameplate-strip{width:100%;height:clamp(48px,8svh,64px);background:var(--background)}.profile-nameplate{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}.has-nameplate .identity{margin-top:calc(clamp(72px,12svh,104px)*-.45 - clamp(48px,8svh,64px))}.has-nameplate .profile-copy{margin-top:max(0px,calc(clamp(48px,8svh,64px) - (clamp(72px,12svh,104px)*.55) - 10px))}.has-nameplate h1,.has-nameplate .profile-handle{text-shadow:0 1px 5px var(--background)}@media(max-height:600px){.has-nameplate .profile-copy{margin-top:max(0px,calc(clamp(48px,8svh,64px) - (clamp(72px,12svh,104px)*.55) - 6px))}}
