/* LinkFree — página pública e prévias (editor e página de venda). Temas via classe .lf-t-*, botões via .lf-b-*. */
@font-face{font-family:Inter;src:url(../fonts/inter-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-800.woff2) format("woff2");font-weight:800;font-display:swap}

/* ---------- Temas ---------- */
.lf-t-grafite{--lf-bg:#111214;--lf-bg2:#1b1d21;--lf-text:#f5f5f6;--lf-muted:#a7abb3;--lf-btn:#23262b;--lf-btn-text:#f5f5f6;--lf-line:rgba(255,255,255,.1);--lf-accent:#e9e9ea}
.lf-t-areia{--lf-bg:#f4ede4;--lf-bg2:#e9dccb;--lf-text:#2b211a;--lf-muted:#7b6a5c;--lf-btn:#fffaf4;--lf-btn-text:#2b211a;--lf-line:rgba(43,33,26,.14);--lf-accent:#b9825c}
.lf-t-oceano{--lf-bg:#0b2236;--lf-bg2:#0f3a57;--lf-text:#eef7ff;--lf-muted:#9fc3dc;--lf-btn:#14476a;--lf-btn-text:#eef7ff;--lf-line:rgba(160,210,255,.18);--lf-accent:#7cc6ff}
.lf-t-floresta{--lf-bg:#0f1f17;--lf-bg2:#173424;--lf-text:#eef8f0;--lf-muted:#a6c7b0;--lf-btn:#1e4430;--lf-btn-text:#eef8f0;--lf-line:rgba(160,220,180,.18);--lf-accent:#8fdcaa}
.lf-t-rosa{--lf-bg:#fbeef0;--lf-bg2:#f3d6dc;--lf-text:#40202a;--lf-muted:#8d5d6b;--lf-btn:#fff;--lf-btn-text:#40202a;--lf-line:rgba(64,32,42,.12);--lf-accent:#d8738e}
.lf-t-neon{--lf-bg:#07070c;--lf-bg2:#14102a;--lf-text:#f4f1ff;--lf-muted:#a59fd0;--lf-btn:#120f24;--lf-btn-text:#f4f1ff;--lf-line:rgba(170,120,255,.45);--lf-accent:#b47cff}
.lf-t-papel{--lf-bg:#fbfaf7;--lf-bg2:#f1eee7;--lf-text:#1d1c1a;--lf-muted:#6f6b63;--lf-btn:#fbfaf7;--lf-btn-text:#1d1c1a;--lf-line:#1d1c1a;--lf-accent:#1d1c1a}
.lf-t-noite{--lf-bg:#0d1022;--lf-bg2:#1c2147;--lf-text:#eef0ff;--lf-muted:#a3a9d8;--lf-btn:#232a5c;--lf-btn-text:#eef0ff;--lf-line:rgba(170,180,255,.2);--lf-accent:#ffd27a}
.lf-t-wisalab{--lf-bg:#0c0b0b;--lf-bg2:#1e1813;--lf-text:#faf6f2;--lf-muted:#c9b7a8;--lf-btn:rgba(255,255,255,.05);--lf-btn-text:#fbeee2;--lf-line:rgba(236,196,160,.45);--lf-accent:#dfbb9f}
.lf-t-aurora{--lf-bg:#06121a;--lf-bg2:#0d2a2d;--lf-text:#f0fffb;--lf-muted:#9fd8cc;--lf-btn:rgba(255,255,255,.08);--lf-btn-text:#f0fffb;--lf-line:rgba(160,255,230,.3);--lf-accent:#7af5d2}
.lf-t-ouro{--lf-bg:#120e07;--lf-bg2:#2a2010;--lf-text:#fff6e2;--lf-muted:#d8c08b;--lf-btn:#1d160b;--lf-btn-text:#fff6e2;--lf-line:rgba(240,200,110,.5);--lf-accent:#f0c86e}
.lf-t-galaxia{--lf-bg:#05040d;--lf-bg2:#17113a;--lf-text:#f3f0ff;--lf-muted:#aaa2d8;--lf-btn:rgba(255,255,255,.06);--lf-btn-text:#f3f0ff;--lf-line:rgba(190,170,255,.3);--lf-accent:#c6b6ff}

/* ---------- Página ---------- */
.lf-body{margin:0;min-height:100vh;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--lf-text);background:var(--lf-bg);-webkit-font-smoothing:antialiased}
.lf-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(90% 60% at 50% -10%,var(--lf-bg2),transparent 70%),var(--lf-bg);overflow:hidden}
.lf-page{position:relative;z-index:1;width:min(560px,100%);margin:0 auto;padding:56px 20px 40px;box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh}
.lf-head{text-align:center}
.lf-avatar{width:104px;height:104px;margin:0 auto 16px;border-radius:50%;overflow:hidden;border:2px solid var(--lf-line);background:var(--lf-btn);box-shadow:0 12px 30px rgba(0,0,0,.25)}
.lf-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.lf-avatar.is-initial{display:grid;place-items:center;font-size:2.4rem;font-weight:800;color:var(--lf-accent)}
.lf-head h1,.lf-head .lf-h1{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.02em}
.lf-verified{display:inline-grid;color:var(--lf-accent)}.lf-verified .lf-ic{width:22px;height:22px}
.lf-handle{margin:4px 0 0;color:var(--lf-muted);font-size:.9rem}
.lf-bio{margin:12px auto 0;max-width:420px;color:var(--lf-muted);line-height:1.55;font-size:.95rem}
.lf-socials{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:18px}
.lf-socials a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--lf-text);transition:transform .2s,background .2s}
.lf-socials a:hover{transform:translateY(-2px);background:var(--lf-btn)}
.lf-ic{width:22px;height:22px}
.lf-links{display:grid;gap:12px;margin-top:28px}
.lf-btn{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:12px 52px;box-sizing:border-box;border-radius:999px;background:var(--lf-btn);color:var(--lf-btn-text);border:1px solid var(--lf-line);text-decoration:none;font-weight:600;font-size:.98rem;text-align:center;line-height:1.3;transition:transform .2s,box-shadow .2s,background .2s;overflow:hidden;-webkit-tap-highlight-color:transparent}
.lf-btn:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 28px rgba(0,0,0,.22)}
.lf-btn:active{transform:scale(.98)}
.lf-btn:focus-visible{outline:3px solid var(--lf-accent);outline-offset:3px}
.lf-btn-ic{position:absolute;left:16px;display:grid;place-items:center;opacity:.85}
.lf-btn-ic .lf-ic{width:20px;height:20px}
.lf-btn-main{background:var(--lf-accent);color:#120d0a;border-color:transparent;display:inline-flex;padding:14px 26px}
/* destaque: brilho que passa + leve pulsar */
.lf-btn.is-hl{border-color:var(--lf-accent);box-shadow:0 0 0 1px var(--lf-accent),0 10px 30px color-mix(in srgb,var(--lf-accent) 30%,transparent)}
.lf-btn.is-hl:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);animation:lfSheen 3.2s ease-in-out infinite}
.lf-none{text-align:center;color:var(--lf-muted)}
.lf-foot{margin-top:auto;padding-top:36px;text-align:center}
.lf-badge{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:999px;background:var(--lf-btn);border:1px solid var(--lf-line);color:var(--lf-text);text-decoration:none;font-size:.82rem}
.lf-badge.is-mini{background:none;border:0;color:var(--lf-muted);font-size:.72rem;letter-spacing:.06em}
.lf-empty{justify-content:center;text-align:center;gap:10px}
.lf-empty h1{margin:0;font-size:1.6rem}.lf-empty p{color:var(--lf-muted)}

/* ---------- Estilos de botão ---------- */
.lf-b-soft .lf-btn{border-radius:16px}
.lf-b-square .lf-btn{border-radius:4px}
.lf-b-outline .lf-btn{background:transparent;border-width:2px}
.lf-b-glass .lf-btn{background:color-mix(in srgb,var(--lf-btn-text) 8%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-color:color-mix(in srgb,var(--lf-btn-text) 22%,transparent)}
.lf-t-papel .lf-btn{border-width:2px;box-shadow:4px 4px 0 var(--lf-line)}
.lf-t-papel .lf-btn:hover{box-shadow:6px 6px 0 var(--lf-line)}
.lf-t-neon .lf-btn{box-shadow:0 0 14px rgba(180,124,255,.25),inset 0 0 12px rgba(180,124,255,.12)}

/* ---------- Temas animados exclusivos (Premium) ---------- */
.lf-t-wisalab .lf-bg{background:radial-gradient(80% 50% at 50% -5%,rgba(223,187,159,.22),transparent 70%),radial-gradient(60% 40% at 100% 100%,rgba(165,116,85,.18),transparent 70%),#0c0b0b}
.lf-t-wisalab .lf-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.lf-px{position:absolute;width:2px;height:2px;background:#fff4e8;opacity:0;animation:lfPx 2.2s steps(8,end) forwards}
.lf-px.is-lg{width:3px;height:3px}
.lf-t-aurora .lf-bg{background:linear-gradient(120deg,#06121a,#0b3b3f,#1d1b4a,#06121a);background-size:300% 300%;animation:lfAurora 16s ease-in-out infinite}
.lf-t-aurora .lf-bg:after{content:"";position:absolute;inset:-20%;background:radial-gradient(40% 30% at 30% 20%,rgba(122,245,210,.25),transparent 70%),radial-gradient(35% 30% at 75% 35%,rgba(150,120,255,.22),transparent 70%);filter:blur(30px);animation:lfFloat 18s ease-in-out infinite alternate}
.lf-t-ouro .lf-bg{background:radial-gradient(70% 50% at 50% 0,rgba(240,200,110,.22),transparent 70%),#120e07}
.lf-t-ouro .lf-btn{background:linear-gradient(120deg,#1d160b,#2b2010 45%,#1d160b);border-color:rgba(240,200,110,.55)}
.lf-t-ouro .lf-head h1,.lf-t-ouro .lf-head .lf-h1{background:linear-gradient(100deg,#f7e3a8,#f0c86e 40%,#fff6e2 50%,#d9a944 60%,#f7e3a8);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:lfGold 6s linear infinite}
.lf-t-galaxia .lf-bg{background:radial-gradient(1px 1px at 20% 30%,#fff,transparent),radial-gradient(1px 1px at 70% 20%,#fff,transparent),radial-gradient(1.5px 1.5px at 40% 70%,#d8ccff,transparent),radial-gradient(1px 1px at 85% 60%,#fff,transparent),radial-gradient(1px 1px at 10% 85%,#fff,transparent),radial-gradient(60% 50% at 50% 0,rgba(120,90,255,.3),transparent 70%),#05040d;background-size:300px 300px,260px 260px,340px 340px,280px 280px,320px 320px,100% 100%,100% 100%;animation:lfStars 60s linear infinite}

@keyframes lfSheen{0%,55%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
@keyframes lfPx{0%{opacity:0}25%{opacity:1;box-shadow:0 -2px 0 rgba(240,211,186,.8),0 2px 0 rgba(240,211,186,.8),-2px 0 0 rgba(240,211,186,.8),2px 0 0 rgba(240,211,186,.8)}60%{opacity:.7;box-shadow:none}100%{opacity:0}}
@keyframes lfAurora{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes lfFloat{from{transform:translate3d(-4%,-2%,0)}to{transform:translate3d(4%,3%,0)}}
@keyframes lfGold{to{background-position:-200% 0}}
@keyframes lfStars{to{background-position:300px 600px,-260px 520px,340px 680px,-280px 560px,320px 640px,0 0,0 0}}
@media(prefers-reduced-motion:reduce){.lf-body *,.lf-bg,.lf-bg:after{animation:none!important;transition:none!important}.lf-px{display:none}}

/* ---------- Personalização Premium ---------- */
.lf-bgimg{position:absolute;inset:-24px;background-size:cover;background-position:center;background-repeat:no-repeat}
.lf-bgimg.is-anim{background-size:300% 300%;animation:lfAurora 14s ease-in-out infinite}
.lf-bgvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lf-ov{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}
.lf-custom .lf-btn{border-radius:var(--lf-radius,999px)}
.lf-custom.lf-b-soft .lf-btn,.lf-custom.lf-b-square .lf-btn{border-radius:var(--lf-radius,16px)}
.lf-fl{position:absolute;bottom:-40px;display:block;color:var(--lf-flc,#fff);animation:lfRise 16s linear infinite;will-change:transform}
.lf-fl svg{width:100%;height:100%;display:block}
.lf-fl-confete{animation-name:lfFall;top:-40px;bottom:auto}
.lf-fl-folhas{animation-name:lfFall;top:-40px;bottom:auto}
/* efeitos: no link em destaque ou em todos */
.lf-fx-pulse .lf-btn.is-hl,.lf-fx-pulse.lf-fx-all .lf-btn{animation:lfPulse 2s ease-in-out infinite}
.lf-fx-glow .lf-btn.is-hl,.lf-fx-glow.lf-fx-all .lf-btn{box-shadow:0 0 0 1px var(--lf-accent),0 0 22px color-mix(in srgb,var(--lf-accent) 70%,transparent),0 0 46px color-mix(in srgb,var(--lf-accent) 35%,transparent);animation:lfGlow 2.4s ease-in-out infinite}
.lf-fx-shine .lf-btn.is-hl:after,.lf-fx-shine.lf-fx-all .lf-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);animation:lfSheen 2.6s ease-in-out infinite}
.lf-fx-bounce .lf-btn.is-hl,.lf-fx-bounce.lf-fx-all .lf-btn{animation:lfBounce 2.2s ease-in-out infinite}
.lf-fx-shake .lf-btn.is-hl,.lf-fx-shake.lf-fx-all .lf-btn{animation:lfShake 4s ease-in-out infinite}
.lf-fx-rainbow .lf-btn.is-hl,.lf-fx-rainbow.lf-fx-all .lf-btn{border:2px solid transparent;background:linear-gradient(var(--lf-btn),var(--lf-btn)) padding-box,linear-gradient(90deg,#ff5f6d,#ffc371,#5ee7a3,#5ab8ff,#b47cff,#ff5f6d) border-box;background-size:100% 100%,300% 100%;animation:lfRainbow 4s linear infinite}
@keyframes lfRise{from{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(18px,-55vh,0) rotate(160deg)}to{transform:translate3d(-12px,-115vh,0) rotate(320deg)}}
@keyframes lfFall{from{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-20px,55vh,0) rotate(200deg)}to{transform:translate3d(14px,115vh,0) rotate(400deg)}}
@keyframes lfPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes lfGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.18)}}
@keyframes lfBounce{0%,70%,100%{transform:translateY(0)}80%{transform:translateY(-7px)}90%{transform:translateY(0)}95%{transform:translateY(-3px)}}
@keyframes lfShake{0%,84%,100%{transform:rotate(0)}87%{transform:rotate(-2deg)}90%{transform:rotate(2deg)}93%{transform:rotate(-1.5deg)}96%{transform:rotate(1deg)}}
@keyframes lfRainbow{to{background-position:0 0,300% 0}}
@media(prefers-reduced-motion:reduce){.lf-fl,.lf-bgimg.is-anim{animation:none!important}.lf-fl{display:none}}

/* ===== Capa do topo (Premium): imagem atrás do perfil que se dissolve em degradê no fundo ===== */
.lf-cover{position:absolute;top:0;left:0;right:0;height:var(--lf-cover-h,280px);z-index:0;pointer-events:none;overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - var(--lf-cover-fade,55%)),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - var(--lf-cover-fade,55%)),transparent 100%)}
.lf-cover::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--lf-cover-dark,.15))}
.lf-cover-img{position:absolute;inset:-6px;background-size:cover;background-repeat:no-repeat}
.lf-cover-tint{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,var(--lf-cover-tint,#dfbb9f),transparent 85%);opacity:.42;mix-blend-mode:soft-light}
.lf-cover-card{left:12px;right:12px;top:12px;margin:0 auto;max-width:536px;border-radius:24px}
.lf-cover-arch{border-radius:0 0 50% 50% / 0 0 64px 64px}
.lf-cover.is-anim .lf-cover-img{animation:lfCoverZoom 26s ease-in-out infinite alternate}
@keyframes lfCoverZoom{from{transform:scale(1)}to{transform:scale(1.12)}}
.lf-has-cover .lf-page{padding-top:calc(var(--lf-cover-h,280px) * .5)}
.lfe-scope.lf-has-cover .lf-page{padding-top:calc(var(--lf-cover-h,280px) * .45)}
.lf-has-cover .lf-avatar{box-shadow:0 10px 40px rgba(0,0,0,.45)}
@media (prefers-reduced-motion:reduce){.lf-cover.is-anim .lf-cover-img{animation:none}}

/* ===== Papel de parede: vídeo e tela inteira (Premium) ===== */
video.lf-cover-img{width:calc(100% + 12px);height:calc(100% + 12px);object-fit:cover;display:block}
.lf-cover-scope-full{position:fixed;inset:0;height:auto;-webkit-mask-image:none;mask-image:none;border-radius:0}
.lfe-scope .lf-cover-scope-full{position:absolute;bottom:auto;height:100%;min-height:100%}
.lf-cover-is-full .lf-page{padding-top:56px}
.lfe-scope.lf-cover-is-full .lf-page{padding-top:46px}
.lf-cover-is-full .lf-bg{background:none}
/* ===== Formato da foto do perfil ===== */
.lf-avatar.lf-av-rounded,.lf-avatar.lf-av-rounded img{border-radius:28%}
.lf-avatar.lf-av-square,.lf-avatar.lf-av-square img{border-radius:10px}
.lf-avatar.lf-av-hexagon{border-radius:0;clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}
.lf-avatar.lf-av-hexagon img{border-radius:0}
.lf-avatar.lf-av-blob,.lf-avatar.lf-av-blob img{border-radius:42% 58% 55% 45% / 45% 42% 58% 55%}
.lf-avatar.lf-av-arch{border-radius:52px 52px 14px 14px;height:122px}
.lf-avatar.lf-av-arch img{border-radius:52px 52px 14px 14px;height:100%;object-fit:cover}
