/* Indicaê — descoberta pública de creators. Tema roxo/pink (paridade com /creators/). */
:root{
  --idc-bg:#140c26; --idc-bg2:#1d1236; --idc-card:#241640; --idc-line:#33244f;
  --idc-txt:#f4f0fb; --idc-mut:#b9aed6; --idc-mut2:#8b7fb0;
  --idc-accent:#a855f7; --idc-accent2:#ec4899; --idc-grad:linear-gradient(135deg,#a855f7,#ec4899);
}
*{box-sizing:border-box}
body.idc{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:
  radial-gradient(1100px 500px at 50% -8%,rgba(168,85,247,.16),transparent),var(--idc-bg);
  color:var(--idc-txt);min-height:100vh;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}

/* Topbar */
.idc-top{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 18px;max-width:1120px;margin:0 auto}
.idc-logo{font-weight:800;font-size:19px;display:flex;align-items:center;gap:8px}
.idc-logo i{color:var(--idc-accent2)}
.idc-logo small{font-weight:600;opacity:.5;font-size:.62em}
.idc-city-pill{display:inline-flex;align-items:center;gap:7px;background:var(--idc-card);
  border:1px solid var(--idc-line);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600}
.idc-city-pill .fa-chevron-down{font-size:9px;opacity:.6}

.idc-wrap{max-width:1120px;margin:0 auto;padding:8px 18px 60px}

/* Head */
.idc-head{text-align:center;margin:14px 0 20px}
.idc-h1{font-size:clamp(23px,4.4vw,34px);font-weight:800;margin:0 0 8px;line-height:1.15}
.idc-tag{color:var(--idc-mut);font-size:15px;max-width:620px;margin:0 auto;line-height:1.5}

/* City chips */
.idc-cities{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 12px;margin-bottom:14px;
  scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.idc-cities::-webkit-scrollbar{height:5px}
.idc-cities::-webkit-scrollbar-thumb{background:var(--idc-line);border-radius:6px}
.idc-chip{flex:0 0 auto;background:var(--idc-card);border:1px solid var(--idc-line);
  padding:8px 15px;border-radius:999px;font-size:13px;font-weight:600;color:var(--idc-mut);white-space:nowrap;transition:.15s}
.idc-chip:hover{color:var(--idc-txt);border-color:var(--idc-accent)}
.idc-chip.active{background:var(--idc-grad);color:#fff;border-color:transparent}
.idc-chip .idc-uf{opacity:.6;font-weight:500}

.idc-note{background:rgba(168,85,247,.1);border:1px solid var(--idc-line);border-radius:12px;
  padding:12px 16px;font-size:13.5px;color:var(--idc-mut);margin-bottom:16px}
.idc-note i{color:var(--idc-accent);margin-right:6px}

/* Chip "todas as cidades" (abre modal) */
.idc-chip-more{font-family:inherit;cursor:pointer;border-style:dashed}
.idc-chip-more:hover{color:#fff;border-color:var(--idc-accent);border-style:solid}

/* Modal de cidades (lista completa + busca) */
.idc-citymodal{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center}
@media(min-width:640px){.idc-citymodal{align-items:center}}
.idc-citymodal[hidden]{display:none}
.idc-citymodal-back{position:absolute;inset:0;background:rgba(8,4,18,.72);backdrop-filter:blur(3px)}
.idc-citymodal-box{position:relative;width:100%;max-width:460px;max-height:78vh;background:var(--idc-bg2);
  border:1px solid var(--idc-line);border-radius:18px 18px 0 0;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 -12px 44px rgba(0,0,0,.6);animation:idcUp .22s ease}
@media(min-width:640px){.idc-citymodal-box{border-radius:18px;max-height:70vh}}
@keyframes idcUp{from{transform:translateY(24px);opacity:.6}to{transform:translateY(0);opacity:1}}
.idc-citymodal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;
  border-bottom:1px solid var(--idc-line)}
.idc-citymodal-head strong{font-size:16px}
.idc-citymodal-head button{background:none;border:0;color:var(--idc-mut);font-size:18px;cursor:pointer;padding:4px}
.idc-citymodal-search{display:flex;align-items:center;gap:9px;padding:12px 16px;border-bottom:1px solid var(--idc-line)}
.idc-citymodal-search i{color:var(--idc-mut2)}
.idc-citymodal-search input{flex:1;background:var(--idc-card);border:1px solid var(--idc-line);border-radius:10px;
  padding:10px 12px;color:var(--idc-txt);font-size:14px;font-family:inherit;outline:none}
.idc-citymodal-search input:focus{border-color:var(--idc-accent)}
.idc-citymodal-list{overflow-y:auto;padding:6px}
.idc-cityrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;
  border-radius:10px;font-size:14px;font-weight:600;color:var(--idc-txt);transition:.12s}
.idc-cityrow:hover{background:var(--idc-card)}
.idc-cityrow.active{background:color-mix(in srgb,var(--idc-accent) 20%,transparent)}
.idc-cityrow small{color:var(--idc-mut2);font-weight:500}
.idc-cityrow-n{font-size:12px;font-weight:700;color:var(--idc-accent);background:rgba(168,85,247,.14);
  padding:2px 9px;border-radius:999px;flex:0 0 auto}
.idc-cityrow-empty{text-align:center;color:var(--idc-mut2);font-size:13px;padding:20px}

/* Grade */
.idc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.idc-card{background:var(--idc-card);border:1px solid var(--idc-line);border-radius:16px;
  overflow:hidden;display:flex;flex-direction:column;transition:.18s;position:relative}
.idc-card:hover{transform:translateY(-3px);border-color:var(--idc-accent);
  box-shadow:0 14px 34px -14px rgba(168,85,247,.55)}
.idc-cap{height:112px;background:linear-gradient(135deg,#2a1c47,#3a2360);background-size:cover;
  background-position:center;position:relative;display:flex;align-items:flex-end;padding:10px}
.idc-star{position:absolute;top:9px;left:9px;background:rgba(0,0,0,.55);color:#fbbf24;
  font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:999px;backdrop-filter:blur(4px)}
.idc-outcity{position:absolute;top:9px;right:9px;background:rgba(0,0,0,.55);color:#e9d5ff;
  font-size:10px;font-weight:600;padding:3px 8px;border-radius:999px;backdrop-filter:blur(4px)}
.idc-av{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid var(--idc-card);
  background:var(--idc-bg2);margin-bottom:-30px;display:flex;align-items:center;justify-content:center;
  font-size:24px;color:var(--idc-mut2);flex:0 0 auto}
.idc-body{padding:36px 14px 14px;display:flex;flex-direction:column;gap:7px;flex:1}
.idc-nome{font-weight:700;font-size:16px;line-height:1.2}
.idc-headline{font-size:12.5px;color:var(--idc-accent2);font-weight:600;line-height:1.3}
.idc-nichos{display:flex;flex-wrap:wrap;gap:5px;margin-top:1px}
.idc-nichos span{font-size:10.5px;background:rgba(168,85,247,.14);color:#d8b4fe;
  padding:2px 8px;border-radius:999px;font-weight:600}
.idc-thumbs{display:flex;gap:5px;margin-top:2px}
.idc-thumbs img,.idc-thumbs span{width:34px;height:34px;border-radius:8px;object-fit:cover;
  background:var(--idc-bg2);display:flex;align-items:center;justify-content:center;
  font-size:13px;color:var(--idc-mut2);flex:0 0 auto}
.idc-see{margin-top:auto;padding-top:6px;font-size:12.5px;font-weight:700;color:var(--idc-accent2);
  display:flex;align-items:center;gap:6px}
.idc-see i{transition:.15s}
.idc-card:hover .idc-see i{transform:translateX(3px)}

/* View toggle */
.idc-view-toggle{display:inline-flex;gap:4px;background:var(--idc-card);border:1px solid var(--idc-line);
  border-radius:999px;padding:4px;margin-top:14px}
.idc-vt{background:none;border:0;color:var(--idc-mut);font-weight:700;font-size:13px;
  padding:7px 16px;border-radius:999px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px}
.idc-vt.active{background:var(--idc-grad);color:#fff}

/* View switch (swipe vs grade) */
.idc-main[data-view="swipe"] .idc-grid{display:none}
.idc-main[data-view="grade"] .idc-swipe{display:none}

/* Deck swipe */
.idc-swipe{max-width:380px;margin:6px auto 0;position:relative}
.idc-stack{position:relative;height:460px}
.idc-sc{position:absolute;inset:0;background:var(--idc-card);border:1px solid var(--idc-line);
  border-radius:20px;overflow:hidden;display:flex;flex-direction:column;cursor:grab;
  box-shadow:0 18px 44px -18px rgba(0,0,0,.6);will-change:transform;touch-action:pan-y}
.idc-sc:active{cursor:grabbing}
.idc-sc-cap{position:relative;height:280px;background:linear-gradient(135deg,#2a1c47,#3a2360);
  background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:center}
.idc-sc-av{width:96px;height:96px;border-radius:50%;object-fit:cover;border:4px solid var(--idc-card);
  background:var(--idc-bg2);margin-bottom:-48px;display:flex;align-items:center;justify-content:center;
  font-size:38px;color:var(--idc-mut2);z-index:2}
.idc-sc-city{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.55);color:#e9d5ff;
  font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;backdrop-filter:blur(4px)}
.idc-sc-badge{position:absolute;top:18px;font-size:20px;font-weight:900;letter-spacing:1px;
  padding:6px 14px;border:3px solid;border-radius:12px;opacity:0;transform:rotate(-12deg);pointer-events:none}
.idc-sc-like{left:16px;color:#ec4899;border-color:#ec4899}
.idc-sc-nope{right:16px;color:#94a3b8;border-color:#94a3b8;transform:rotate(12deg)}
.idc-sc-body{padding:56px 18px 20px;display:flex;flex-direction:column;gap:9px;text-align:center;flex:1}
.idc-sc-name{font-weight:800;font-size:21px;line-height:1.15}
.idc-sc-headline{font-size:13.5px;color:var(--idc-accent2);font-weight:600}
.idc-sc-nichos{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:2px}
.idc-sc-nichos span{font-size:11px;background:rgba(168,85,247,.14);color:#d8b4fe;padding:3px 10px;border-radius:999px;font-weight:600}
.idc-sc-see{margin-top:auto;font-size:12px;color:var(--idc-mut2);font-weight:600}
.idc-swipe-end{position:absolute;inset:0;background:var(--idc-card);border:1px solid var(--idc-line);
  border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px}
.idc-swipe-end i{font-size:38px;color:var(--idc-accent)}
.idc-swipe-end p{margin:0;color:var(--idc-mut);font-size:15px}
.idc-swipe-actions{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:22px}
.idc-act{width:58px;height:58px;border-radius:50%;border:1px solid var(--idc-line);background:var(--idc-card);
  color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;box-shadow:0 6px 16px -8px rgba(0,0,0,.6)}
.idc-act:hover{transform:scale(1.08)}
.idc-act-no{color:#94a3b8}
.idc-act-no:hover{border-color:#94a3b8}
.idc-act-info{width:48px;height:48px;font-size:18px;color:var(--idc-accent)}
.idc-act-info:hover{border-color:var(--idc-accent)}
.idc-act-yes{color:var(--idc-accent2)}
.idc-act-yes:hover{border-color:var(--idc-accent2);box-shadow:0 6px 20px -6px rgba(236,72,153,.7)}
.idc-swipe-hint{text-align:center;color:var(--idc-mut2);font-size:12px;margin-top:14px}

/* Empty */
.idc-empty{text-align:center;padding:50px 20px;color:var(--idc-mut)}
.idc-empty i{font-size:40px;color:var(--idc-accent);opacity:.5;display:block;margin-bottom:14px}
.idc-empty p{font-size:15px;max-width:400px;margin:0 auto 18px;line-height:1.5}
.idc-cta-creator{display:inline-flex;align-items:center;gap:8px;background:var(--idc-grad);
  color:#fff;font-weight:700;padding:11px 20px;border-radius:999px;font-size:14px}

/* CTAs */
.idc-ctas{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:34px 0 8px}
.idc-cta{display:flex;gap:14px;background:var(--idc-card);border:1px solid var(--idc-line);
  border-radius:16px;padding:20px}
.idc-cta-ico{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;
  justify-content:center;font-size:20px;flex:0 0 auto}
.idc-cta-c .idc-cta-ico{background:rgba(236,72,153,.16);color:var(--idc-accent2)}
.idc-cta-l .idc-cta-ico{background:rgba(34,197,94,.15);color:#4ade80}
.idc-cta h3{margin:0 0 5px;font-size:16px}
.idc-cta p{margin:0 0 12px;font-size:13px;color:var(--idc-mut);line-height:1.5}
.idc-btn{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:13.5px;
  padding:9px 16px;border-radius:999px}
.idc-btn-c{background:var(--idc-grad);color:#fff}
.idc-btn-l{background:#16a34a;color:#fff}
.idc-btn i{font-size:11px}

.idc-foot{text-align:center;color:var(--idc-mut2);font-size:12.5px;margin-top:36px;padding-top:20px;
  border-top:1px solid var(--idc-line)}
.idc-foot a{color:var(--idc-mut);font-weight:600}

@media(max-width:640px){
  .idc-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px}
  .idc-ctas{grid-template-columns:1fr}
  .idc-cap{height:96px}
  .idc-body{padding:32px 12px 12px}
  .idc-av{width:52px;height:52px;margin-bottom:-26px}
}
