/* MugLinks logo: shared by the platform pages and every public page. */
.logo-svg{width:40px;height:40px;flex-shrink:0;overflow:visible;display:block}
.logo-word{font-weight:800;letter-spacing:-.6px;direction:ltr}
.logo-word b{font-weight:800;background:linear-gradient(90deg,#b7a0ff,#ff8fc7);-webkit-background-clip:text;background-clip:text;color:transparent}
.logo-steam .steam{stroke-dasharray:14;animation:steam 2.8s ease-in-out infinite}
.logo-steam .s2{animation-delay:1.4s}
.logo-handle{transform-origin:48px 35px;transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
a:hover>.logo-svg .logo-handle{transform:rotate(-14deg)}
a:hover>.logo-svg{animation:wobble .6s ease}
@keyframes steam{0%{stroke-dashoffset:14;opacity:0;transform:translateY(4px)}35%{opacity:1}100%{stroke-dashoffset:-14;opacity:0;transform:translateY(-5px)}}
@keyframes wobble{30%{transform:rotate(-6deg)}60%{transform:rotate(4deg)}100%{transform:rotate(0)}}
/* Public page header */
.personal-page .brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}
.personal-page .brand .logo-svg{width:34px;height:34px}
.personal-page .brand .logo-word{font-size:17px}
@media(prefers-reduced-motion:reduce){.logo-steam .steam,a:hover>.logo-svg{animation:none}.logo-steam .steam{opacity:.8;stroke-dasharray:none}}
/* Public page footer credit */
.personal-page .made-with{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--soft);font-size:12.5px;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s,transform .2s}
.personal-page .made-with b{font-weight:800;background:linear-gradient(90deg,#b7a0ff,#ff8fc7);-webkit-background-clip:text;background-clip:text;color:transparent}
.personal-page .made-with:hover{color:var(--ink);border-color:var(--line-strong);transform:translateY(-1px)}
/* Ad slots on free public pages: collapsed until Google fills them, styled like the link cards. */
.personal-page .ad-slot{display:grid;gap:6px;max-height:0;opacity:0;overflow:hidden;margin:0;padding:0 12px;border:1px solid transparent;border-radius:20px;transition:max-height .5s ease,opacity .5s ease,padding .5s ease,margin .5s ease}
.personal-page .ad-slot.is-filled{max-height:340px;opacity:1;padding:10px 12px 12px;margin:12px 0 0;border-color:var(--line);background:var(--surface)}
.personal-page .modern-links .ad-slot.is-filled{margin:0}
.personal-page .ad-label{font-size:10.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--soft);opacity:.75}
html[dir=rtl] .personal-page .ad-label{letter-spacing:0}
.personal-page .ad-slot ins.adsbygoogle{display:block;width:100%;min-height:50px;max-height:300px;border-radius:12px;overflow:hidden}
.personal-page .ad-slot ins.adsbygoogle[data-ad-status=unfilled]{display:none}
.personal-page .footer-link{color:var(--soft);font-size:12px;text-decoration:none;opacity:.8}
.personal-page .footer-link:hover{color:var(--ink);text-decoration:underline}
.personal-page .ad-slot.is-loading{max-height:340px;opacity:1;padding:10px 12px 12px;margin:12px 0 0;border-color:var(--line);background:var(--surface)}
.personal-page .modern-links .ad-slot.is-loading{margin:0}
.personal-page .ad-slot.is-loading ins.adsbygoogle{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-raised) 50%,var(--surface) 75%);background-size:200% 100%;animation:ad-shimmer 1.4s linear infinite}
@keyframes ad-shimmer{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.personal-page .ad-slot.is-loading ins.adsbygoogle{animation:none}}
