/* ============================================================
   INPERSON · AURA v1.1 — Central de Afiliados
   Réplica fiel do Sistema INPERSON (inperson.css / docs/AURA.md)
   Cor por produto: INPERSON azul-aço #74B0D8. Só a cor muda.
   ============================================================ */
:root{
  --ip-bg:#010510; --ip-bg-2:#050A16; --ip-surface:#080F1E; --ip-surface-2:#0C1426;
  --ip-border:#15223A; --ip-border-2:#21344E;
  --ip-accent:#74B0D8; --ip-accent-2:#5B9BC4; --ip-accent-dim:rgba(116,176,216,.12);
  --ip-text:#FAFAFA; --ip-muted:#8FA3BE; --ip-faint:#52647F;
  --ip-ok:#5FBF8F; --ip-warn:#D9A441; --ip-danger:#D9655B;
  --ml-yellow:#FFE600; --ml-yellow-2:#FFDB15; --ml-yellow-dim:rgba(255,230,0,.14); --ml-blue:#3483FA;
  --ip-radius:16px; --ip-radius-sm:10px;
  --ip-font:"Segoe UI", Inter, system-ui, -apple-system, sans-serif;
  --glass-bg:linear-gradient(135deg, rgba(124,176,216,.10), rgba(255,255,255,.02));
  --glass-brd:rgba(150,190,225,.16);
  --glass-blur:blur(22px) saturate(150%);
  --glass-shadow:0 10px 36px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.14), inset 0 0 30px rgba(116,176,216,.04);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{background:var(--ip-bg);color:var(--ip-text);font-family:var(--ip-font);-webkit-font-smoothing:antialiased;letter-spacing:.2px;overflow-x:hidden}
::-webkit-scrollbar{width:0;height:0}*{scrollbar-width:none}
a{color:var(--ip-accent);text-decoration:none}
.num{font-variant-numeric:tabular-nums}

/* ---------- keyframes normativos ---------- */
@keyframes ip-aurora{0%{transform:translate(0,0) scale(1)}33%{transform:translate(5%,-4%) scale(1.12)}66%{transform:translate(-4%,5%) scale(.94)}100%{transform:translate(0,0) scale(1)}}
@keyframes ip-glow{0%,100%{filter:drop-shadow(0 0 5px rgba(116,176,216,.45))}50%{filter:drop-shadow(0 0 20px rgba(116,176,216,.95))}}
@keyframes ip-breathe-soft{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes ip-breathe{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.05}50%{transform:translate(-50%,-50%) scale(1.05);opacity:.09}}
@keyframes ip-fadeup{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ip-rise{from{transform:translateY(110vh) scale(.6);opacity:0}10%{opacity:.7}100%{transform:translateY(-12vh) scale(1);opacity:0}}
@keyframes ip-beam{0%,100%{opacity:.4;transform:rotate(13deg) translateX(0)}50%{opacity:.75;transform:rotate(16deg) translateX(-2vw)}}
@keyframes ip-shimmer{to{background-position:200% center}}
@keyframes ip-pulse-ring{0%{transform:scale(.8);opacity:.6}100%{transform:scale(1.8);opacity:0}}

/* ---------- fundo vivo ---------- */
.ip-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.ip-blob{position:absolute;border-radius:50%;filter:blur(8px);opacity:.5}
.ip-blob.b1{width:46vw;height:46vw;left:-8vw;top:-10vw;background:radial-gradient(circle,#1f5e8a,transparent 70%);animation:ip-aurora 22s ease-in-out infinite}
.ip-blob.b2{width:40vw;height:40vw;right:-6vw;top:8vh;background:radial-gradient(circle,#0e3a5c,transparent 70%);animation:ip-aurora 28s ease-in-out infinite reverse}
.ip-blob.b3{width:50vw;height:50vw;left:18vw;bottom:-22vw;background:radial-gradient(circle,#14506e,transparent 70%);animation:ip-aurora 34s ease-in-out infinite}
.ip-beam{position:absolute;top:-20%;left:50%;width:40vw;height:150vh;background:linear-gradient(90deg,transparent,rgba(116,176,216,.06),transparent);transform:rotate(13deg);animation:ip-beam 12s ease-in-out infinite}
.ip-wm{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(52vw,620px);opacity:.05;animation:ip-breathe 14s ease-in-out infinite}
.ip-cursor{position:fixed;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,rgba(116,176,216,.10),transparent 60%);transform:translate(-50%,-50%);transition:transform .12s ease-out}
.ip-particles{position:fixed;inset:0;z-index:0;pointer-events:none}
.ip-particles i{position:absolute;bottom:-10vh;width:4px;height:4px;border-radius:50%;background:var(--ip-accent);opacity:.4;animation:ip-rise linear infinite}

/* ---------- glass / componentes ---------- */
.ip-card{background:linear-gradient(135deg,rgba(13,22,38,.85),rgba(8,14,28,.78));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(150,190,225,.14);border-radius:var(--ip-radius);box-shadow:0 12px 34px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.06)}
.ip-muted{color:var(--ip-muted)}.ip-faint{color:var(--ip-faint)}.ip-accent{color:var(--ip-accent)}
.ip-eyebrow{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--ip-accent);font-weight:500}
.ip-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.4px;border:1px solid var(--glass-brd);color:var(--ip-muted);background:rgba(255,255,255,.03)}
.ip-pill.on{color:var(--ip-accent);border-color:var(--ip-accent)}
.ip-btn{position:relative;display:inline-flex;align-items:center;gap:8px;justify-content:center;padding:10px 16px;border-radius:var(--ip-radius-sm);border:1px solid var(--ip-accent);background:linear-gradient(135deg,var(--ip-accent),var(--ip-accent-2));color:#03101c;font-weight:600;letter-spacing:.4px;cursor:pointer;transition:.18s;overflow:hidden;font-family:inherit;font-size:13px}
.ip-btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(116,176,216,.35)}
.ip-btn:active{transform:translateY(1px)}
.ip-btn.ghost{background:rgba(255,255,255,.04);border-color:var(--glass-brd);color:var(--ip-text)}
.ip-btn.ghost:hover{background:rgba(116,176,216,.12);border-color:var(--ip-accent)}
.ip-input{width:100%;padding:11px 13px;border-radius:var(--ip-radius-sm);background:rgba(255,255,255,.04);border:1px solid var(--glass-brd);color:var(--ip-text);font-size:13.5px;font-family:inherit;transition:.18s}
.ip-input::placeholder{color:var(--ip-faint)}
.ip-input:focus{outline:none;border-color:var(--ip-accent);box-shadow:0 0 0 3px var(--ip-accent-dim)}
textarea.ip-input{resize:vertical;min-height:88px}
.ip-label{font-size:11px;font-weight:500;letter-spacing:.6px;text-transform:uppercase;color:var(--ip-muted);margin-bottom:6px;display:block}

/* ---------- shell / sidebar ---------- */
.ip-shell{position:relative;z-index:1;display:grid;grid-template-columns:250px 1fr;min-height:100vh}
.ip-side{background:linear-gradient(180deg,rgba(8,15,30,.72),rgba(3,8,18,.66));backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-right:1px solid var(--glass-brd);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}
.ip-brand{display:flex;align-items:center;gap:11px;padding:6px 8px 18px}
.ip-brand .lg{width:40px;height:40px;border-radius:11px;background:#010510;border:1px solid var(--ip-border-2);display:grid;place-items:center;animation:ip-glow 5s ease-in-out infinite}
.ip-brand .lg img{height:22px;animation:ip-breathe-soft 6s ease-in-out infinite}
.ip-brand h1{font-size:14px;font-weight:500;letter-spacing:.5px}
.ip-brand .sub{font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--ip-muted)}
.ip-nav{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--ip-radius-sm);color:var(--ip-muted);font-size:14px;cursor:pointer;border:1px solid transparent;transition:.16s}
.ip-nav:hover{background:rgba(255,255,255,.05);color:var(--ip-text);transform:translateX(2px)}
.ip-nav.active{background:linear-gradient(135deg,rgba(116,176,216,.18),rgba(116,176,216,.05));color:var(--ip-text);border-color:var(--glass-brd)}
.ip-nav.active .ic{color:var(--ip-accent)}
.ip-nav .ic{width:20px;text-align:center;font-size:15px}
.ip-side .foot{margin-top:auto;font-size:10px;color:var(--ip-faint);text-align:center;letter-spacing:.5px}
.ip-seal{color:var(--ip-accent);letter-spacing:2px}

/* ---------- main ---------- */
.ip-main{position:relative;z-index:1;padding:26px 30px;max-width:1240px;width:100%}
.ip-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:16px;flex-wrap:wrap}
.ip-h1{font-size:26px;font-weight:300;letter-spacing:.5px}
.ip-topbar .sub{color:var(--ip-muted);font-size:12.5px;margin-top:4px}
.ip-userchip{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:5px 8px 5px 12px;cursor:pointer;transition:.15s}
.ip-userchip:hover{background:rgba(255,255,255,.09)}
.ip-userchip .who{text-align:right;line-height:1.15}
.ip-userchip .who b{font-size:12.5px;font-weight:600}
.ip-userchip .who span{display:block;font-size:10px;color:var(--ip-muted)}
.ip-av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#03101c;background:linear-gradient(135deg,var(--ip-accent),var(--ip-accent-2));overflow:hidden;object-fit:cover}
.ip-av img{width:100%;height:100%;object-fit:cover}
.live{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ip-muted)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--ip-ok);animation:ip-breathe-soft 2.4s ease-in-out infinite}

/* KPIs */
.ip-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.ip-kpi{padding:18px 18px}
.ip-kpi .v{font-size:31px;font-weight:200;line-height:1;letter-spacing:.5px;background:linear-gradient(135deg,#FAFAFA,#9cc6e4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ip-kpi .l{color:var(--ip-muted);font-size:11.5px;margin-top:9px;letter-spacing:.3px}
.ip-cols{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-bottom:16px}
.ip-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ip-sec{padding:18px}
.ip-sec h3{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ip-muted);margin-bottom:14px;font-weight:600}
.ip-view{animation:ip-fadeup .5s ease both}
.hidden{display:none!important}

/* feed / list */
.feed{max-height:340px;overflow:auto;display:flex;flex-direction:column;gap:8px}
.ev{display:flex;align-items:center;gap:11px;padding:9px 11px;border:1px solid var(--glass-brd);border-radius:10px;background:rgba(255,255,255,.02)}
.ev .ic{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:13px;border:1px solid var(--glass-brd);color:var(--ip-muted)}
.ev.click .ic{color:var(--ip-accent)}.ev.post .ic{color:var(--ip-ok)}
.ev .t{font-size:12.5px}.ev .m{font-size:10.5px;color:var(--ip-muted)}
.ev .when{margin-left:auto;font-size:10.5px;color:var(--ip-muted)}
.tp{display:flex;flex-direction:column;gap:11px}
.tp .item{display:flex;align-items:center;gap:12px}
.tp .name{font-size:12.5px;flex:0 0 190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tp .bar{flex:1;height:6px;border-radius:6px;background:rgba(255,255,255,.06);overflow:hidden}
.tp .fill{height:100%;background:linear-gradient(90deg,var(--ip-accent),var(--ip-accent-2));border-radius:6px;width:0;transition:width 1s cubic-bezier(.2,.8,.2,1)}
.tp .n{font-size:11.5px;color:var(--ip-muted);width:34px;text-align:right}
.chips{display:flex;flex-wrap:wrap;gap:7px}

/* curated list */
.cur{display:flex;flex-direction:column;gap:9px;max-height:420px;overflow:auto}
.cur .it{display:flex;align-items:center;gap:12px;padding:9px 11px;border:1px solid var(--glass-brd);border-radius:11px;background:rgba(255,255,255,.02)}
.cur .it img{width:46px;height:46px;border-radius:9px;object-fit:contain;background:#fff}
.cur .it .t{flex:1;min-width:0}
.cur .it .t b{font-size:13px;font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cur .it .t span{font-size:12px;color:var(--ip-accent)}
.cur .it .rm{border:1px solid var(--glass-brd);background:rgba(255,80,80,.08);color:#ff9a9a;border-radius:8px;width:30px;height:30px;cursor:pointer;flex:0 0 auto}
.tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;background:rgba(12,20,34,.98);border:1px solid var(--glass-brd);border-radius:12px;padding:12px 18px;font-size:13px;z-index:80;transition:.3s;pointer-events:none;box-shadow:0 12px 34px rgba(0,0,0,.5)}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media (prefers-reduced-motion:reduce){*{animation-duration:.001s!important;animation-iteration-count:1!important}.ip-cursor{display:none}}
@media(max-width:980px){.ip-shell{grid-template-columns:1fr}.ip-side{display:none}.ip-kpis{grid-template-columns:repeat(2,1fr)}.ip-cols,.ip-row2{grid-template-columns:1fr}.ip-main{padding:16px}}

/* ---- identidade Afiliados / Mercado Livre ---- */
.ip-badge-af{display:inline-flex;align-items:center;gap:5px;background:var(--ml-yellow);color:#141414;font-weight:800;font-size:10px;letter-spacing:.6px;padding:3px 8px;border-radius:6px;text-transform:uppercase}
.ip-mldot{width:8px;height:8px;border-radius:50%;background:var(--ml-yellow);box-shadow:0 0 8px rgba(255,230,0,.6)}
.ip-kpi.ml .v{background:linear-gradient(135deg,#FFE600,#FFC400);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ip-kpi.ml{border-color:rgba(255,230,0,.28)}
.ip-btn.ml{background:linear-gradient(135deg,var(--ml-yellow),var(--ml-yellow-2));border-color:var(--ml-yellow);color:#141414}
.ip-btn.ml:hover{box-shadow:0 8px 22px rgba(255,230,0,.35)}
.ip-logo-svg .lg-mono *{stroke:var(--ip-accent)}
.ip-fill{height:100%;background:linear-gradient(90deg,var(--ip-accent),var(--ip-accent-2))}
