:root{
  --bg:#07111f;
  --bg2:#0a1728;
  --panel:#0d1d31;
  --panel2:#10243d;
  --line:rgba(157,177,205,.14);
  --text:#f8fbff;
  --muted:#8ea0b7;
  --blue:#357fff;
  --blue2:#65a7ff;
  --green:#b7ff39;
  --good:#ffd44a;
  --great:#32e78a;
  --bad:#ff5364;
  --shadow:0 25px 90px rgba(0,0,0,.35);
  --radius:22px;
  --sidebar:245px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  background:
    radial-gradient(circle at 18% -5%, rgba(53,127,255,.18), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(183,255,57,.06), transparent 20%),
    var(--bg);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
button,input,select{font:inherit}
button{color:inherit}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}

.sidebar{
  position:fixed;
  inset:0 auto 0 0;
  width:var(--sidebar);
  padding:28px 18px 20px;
  border-right:1px solid var(--line);
  background:rgba(5,13,23,.82);
  backdrop-filter:blur(22px);
  z-index:30;
  display:flex;
  flex-direction:column;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:inherit;
  text-decoration:none;
  padding:0 10px 28px;
}
.brand-text{font-size:1.42rem;font-weight:850;letter-spacing:-.05em}
.brand-text span{color:var(--blue2)}
.brand-symbol{position:relative;width:36px;height:28px;display:block}
.chat-shape{position:absolute;top:4px;width:17px;height:18px;background:var(--blue);border-radius:5px}
.chat-shape::after{content:"";position:absolute;bottom:-4px;width:7px;height:7px;background:inherit;transform:rotate(45deg)}
.chat-shape.left{left:0}.chat-shape.left::after{left:3px}
.chat-shape.right{right:0}.chat-shape.right::after{right:3px}
.brand-bolt{
  position:absolute;z-index:3;left:14px;top:1px;width:8px;height:25px;background:var(--green);
  clip-path:polygon(58% 0,100% 0,62% 40%,100% 40%,19% 100%,39% 58%,0 58%);
}

.nav{display:grid;gap:6px}
.nav-link{
  position:relative;
  border:0;background:transparent;color:var(--muted);
  border-radius:14px;padding:12px 14px;
  display:flex;align-items:center;gap:12px;
  cursor:pointer;text-align:left;transition:.18s ease;
}
.nav-link:hover,.nav-link.active{color:#fff;background:linear-gradient(90deg,rgba(53,127,255,.18),rgba(53,127,255,.03))}
.nav-link.active svg{color:var(--blue2)}
.nav-link b{
  margin-left:auto;background:var(--blue);color:#fff;font-size:.66rem;
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:grid;place-items:center;
}
.nav-link i{margin-left:auto;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 15px rgba(183,255,57,.65)}

.profile-mini{
  margin-top:auto;border-top:1px solid var(--line);padding:15px 8px 0;
  display:grid;grid-template-columns:40px 1fr 30px;align-items:center;gap:10px
}
.avatar{
  width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:800;
  background:linear-gradient(135deg,#44b8ff,#357fff 60%,#815eff)
}
.profile-copy strong,.profile-copy span{display:block}.profile-copy strong{font-size:.9rem}.profile-copy span{font-size:.72rem;color:var(--muted)}
.profile-mini button{border:0;background:transparent;color:var(--muted);cursor:pointer}

.main{margin-left:var(--sidebar);min-height:100vh}
.topbar{
  position:sticky;top:0;z-index:20;min-height:76px;
  display:flex;align-items:center;gap:18px;
  padding:14px clamp(24px,4vw,54px);
  background:rgba(7,17,31,.76);backdrop-filter:blur(24px);
  border-bottom:1px solid var(--line)
}
.mobile-logo{display:none}
.search{
  flex:1;max-width:760px;margin:0 auto;height:46px;
  display:flex;align-items:center;gap:10px;padding:0 14px;
  background:rgba(13,29,49,.8);border:1px solid var(--line);border-radius:14px
}
.search:focus-within{border-color:rgba(101,167,255,.5);box-shadow:0 0 0 3px rgba(53,127,255,.08)}
.search svg{color:#7f92aa}.search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff}
.search input::placeholder{color:#6f829a}

.primary{
  border:0;border-radius:13px;padding:12px 16px;
  background:linear-gradient(135deg,var(--blue),#5796ff);color:#fff;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;
  box-shadow:0 12px 32px rgba(53,127,255,.25);transition:.18s ease
}
.primary:hover{transform:translateY(-1px);filter:brightness(1.06)}

.hero{
  max-width:1480px;margin:0 auto;padding:60px clamp(24px,4vw,54px) 28px;
  display:block
}
.live-kicker{font-size:.68rem;font-weight:900;letter-spacing:.13em;color:#8ca1bc;display:flex;align-items:center;gap:9px}
.live-kicker span{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(183,255,57,.07),0 0 20px rgba(183,255,57,.6)}
.hero h1{max-width:780px;margin:11px 0 12px;font-size:clamp(2.6rem,4.8vw,5.2rem);line-height:.94;letter-spacing:-.06em}
.hero h1 em{font-style:normal;color:transparent;background:linear-gradient(90deg,#76b3ff,#b7ff39);-webkit-background-clip:text;background-clip:text}
.hero p{max-width:700px;margin:0;color:var(--muted);font-size:1.02rem;line-height:1.65}
.ad-category-section{
  margin-top:30px;padding-top:22px;border-top:1px solid rgba(157,177,205,.12)
}
.ad-category-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.ad-category-heading small{color:#7891ad;font-size:.66rem;font-weight:900;letter-spacing:.12em}
.ad-category-heading h2{margin:5px 0 0;font-size:1.12rem;letter-spacing:-.025em}
.ad-category-heading>span{font-size:.72rem;color:var(--muted)}
.ad-category-list{
  display:flex;gap:18px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none;scroll-snap-type:x proximity
}
.ad-category-list::-webkit-scrollbar{display:none}
.ad-category-item{
  flex:0 0 104px;min-width:104px;border:0;background:transparent;color:#a8b8cb;padding:0;
  display:grid;justify-items:center;gap:9px;cursor:pointer;scroll-snap-align:start
}
.ad-category-item>span:last-child{font-size:.72rem;font-weight:750;line-height:1.15;text-align:center}
.ad-category-icon{
  width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#a8c7f5;
  border:1px solid rgba(101,167,255,.2);background:linear-gradient(145deg,rgba(30,67,108,.9),rgba(12,28,48,.95));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:.18s ease
}
.ad-category-icon svg{width:25px;height:25px}
.ad-category-glyph{font-size:1.28rem;font-weight:900;line-height:1}
.ad-category-item:hover,.ad-category-item:focus-visible{color:#fff;outline:none}
.ad-category-item:hover .ad-category-icon,.ad-category-item:focus-visible .ad-category-icon{
  color:#fff;border-color:rgba(101,167,255,.5);background:linear-gradient(145deg,rgba(53,127,255,.38),rgba(14,38,66,.98));transform:translateY(-2px)
}
.ad-category-item.active{color:#fff}
.ad-category-item.active .ad-category-icon{
  color:#fff;border-color:rgba(101,167,255,.72);background:linear-gradient(145deg,rgba(53,127,255,.62),rgba(14,38,66,.98));
  box-shadow:0 0 0 3px rgba(53,127,255,.09),inset 0 1px 0 rgba(255,255,255,.08)
}

/* ===== V10.6 — Atalhos de interesses e oportunidades na Home ===== */
.market-hub{
  margin-top:22px;padding-top:20px;border-top:1px solid rgba(157,177,205,.12)
}
.market-hub-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:13px}
.market-hub-heading small{color:#7891ad;font-size:.66rem;font-weight:900;letter-spacing:.12em}
.market-hub-heading h2{margin:5px 0 0;font-size:1.05rem;letter-spacing:-.025em}
.market-hub-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.market-hub-card{
  min-width:0;border:1px solid rgba(101,167,255,.15);border-radius:16px;padding:13px 14px;
  background:linear-gradient(145deg,rgba(17,43,73,.96),rgba(8,24,42,.98));color:#edf5ff;
  display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;
  text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);transition:.18s ease
}
.market-hub-card:hover,.market-hub-card:focus-visible{
  outline:none;transform:translateY(-1px);border-color:rgba(101,167,255,.42);background:linear-gradient(145deg,rgba(24,61,103,.98),rgba(9,28,49,.98))
}
.market-hub-icon{
  width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#9dc6ff;
  background:rgba(53,127,255,.11);border:1px solid rgba(101,167,255,.18)
}
.market-hub-icon svg{width:21px;height:21px}
.market-hub-copy{min-width:0;display:grid;gap:3px}
.market-hub-copy strong{font-size:.82rem;line-height:1.15}
.market-hub-copy small{color:#879db6;font-size:.64rem;line-height:1.3}
.market-hub-arrow{color:#7faeff;font-size:1.05rem}

.view-tabs{display:flex;padding:4px;background:#0b1a2c;border:1px solid var(--line);border-radius:14px}
.tab{border:0;background:transparent;color:var(--muted);padding:9px 14px;border-radius:10px;cursor:pointer}
.tab.active{background:#173454;color:#fff}
.soft,select{
  border:1px solid var(--line);background:#0d1d31;color:#d7e3f2;border-radius:12px;padding:10px 12px;outline:0
}
.soft{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.soft:hover{background:#132b48}
select{cursor:pointer}
.section-head--feed{align-items:center;gap:12px}
.section-head-main{display:grid;gap:6px}
.section-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.section-head-count{font-size:.75rem;color:var(--muted);white-space:nowrap}
.section-filter-btn{padding:9px 14px}
.filters-panel{margin:0 0 14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(13,29,49,.55)}
.filters-grid{display:grid;grid-template-columns:minmax(220px,280px) auto;gap:10px;align-items:end}
.ads-filters-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}
.feed-back-btn{padding:9px 12px;color:#a9bfd9}
.filter-field{display:grid;gap:7px}
.filter-field span{font-size:.72rem;font-weight:700;color:#89a2be;letter-spacing:.04em}
.filter-field select{width:100%}
.room-tabs{margin:0 0 14px;width:fit-content;max-width:100%}

.categories{
  max-width:1480px;margin:0 auto;padding:0 clamp(24px,4vw,54px) 22px;
  display:flex;gap:8px;overflow:auto;scrollbar-width:none
}
.categories::-webkit-scrollbar{display:none}
.category{
  flex:0 0 auto;border:1px solid var(--line);background:rgba(13,29,49,.55);color:#9fb1c6;
  padding:9px 13px;border-radius:999px;cursor:pointer
}
.category.active{color:#fff;background:rgba(53,127,255,.16);border-color:rgba(101,167,255,.33)}

.page-grid{
  max-width:1480px;margin:0 auto;padding:2px clamp(24px,4vw,54px) 100px;
  display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:24px
}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}
.section-head small,.panel small{color:#7891ad;font-size:.66rem;font-weight:900;letter-spacing:.12em}
.section-head h2,.panel h3{margin:5px 0 0}
.room-list{display:grid;gap:12px}
.ad-card{
  display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(18,39,64,.88),rgba(10,24,41,.9));transition:.2s ease;overflow:hidden
}
.ad-card:hover{border-color:rgba(101,167,255,.3);background:linear-gradient(180deg,rgba(23,49,81,.95),rgba(11,28,48,.95))}
.ad-card.seen{opacity:.7}
.ad-card-media{min-height:126px;border-radius:15px;overflow:hidden;background:linear-gradient(145deg,rgba(53,127,255,.18),rgba(11,26,44,.95));display:grid;place-items:center;border:1px solid rgba(101,167,255,.12)}
.ad-card-media img{width:100%;height:100%;min-height:126px;object-fit:cover;display:block}
.ad-card-placeholder{display:grid;place-items:center;gap:7px;color:#7eaef0;font-weight:850;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.ad-card-placeholder span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(53,127,255,.12);border:1px solid rgba(101,167,255,.2);font-size:1.15rem}
.ad-card-body{min-width:0;display:flex;flex-direction:column}
.ad-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ad-type-badge{font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#7eb0ff}
.ad-location{font-size:.7rem;color:#91a6bf}
.ad-card h3{margin:7px 0 6px;font-size:1.12rem;line-height:1.25;letter-spacing:-.02em}
.ad-card p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.48;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ad-card-meta{margin-top:auto;padding-top:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}
.ad-card-author{display:grid;gap:2px;min-width:0}.ad-card-author strong{font-size:.78rem}.ad-card-author span{font-size:.68rem;color:var(--muted)}
.ad-card-price{font-size:1.05rem;color:#fff;font-weight:900;white-space:nowrap}
.ad-card-actions{display:flex;justify-content:flex-end;margin-top:11px}.ad-open-btn{padding:8px 12px;font-size:.76rem}
.room{
  position:relative;overflow:hidden;cursor:pointer;
  padding:18px;border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(18,39,64,.88),rgba(10,24,41,.9));
  transition:.2s ease
}
.room:hover{transform:translateY(-2px);border-color:rgba(101,167,255,.3);background:linear-gradient(180deg,rgba(23,49,81,.95),rgba(11,28,48,.95))}
.room::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--blue),transparent 82%);opacity:.7}
.room.seen{opacity:.68}
.room-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.author{display:flex;align-items:center;gap:10px}.author .avatar{width:35px;height:35px;font-size:.73rem}
.author strong,.author span{display:block}.author strong{font-size:.85rem}.author span{font-size:.68rem;color:var(--muted);margin-top:2px}
.live-room{font-size:.68rem;color:#cbff84;border:1px solid rgba(183,255,57,.15);background:rgba(183,255,57,.05);padding:6px 9px;border-radius:999px;display:flex;gap:6px;align-items:center}
.live-room::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(183,255,57,.65)}
.room-category{margin-top:16px;color:#7eb0ff;font-size:.68rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.room h3{margin:7px 0 7px;font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.3;letter-spacing:-.02em}
.room p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}
.room-meta{margin-top:15px;padding-top:13px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;align-items:center;color:#9eb0c6;font-size:.74rem}
.room-meta span{display:flex;align-items:center;gap:5px}.room-meta svg{width:15px;height:15px}.room-meta b{color:#e3ecf8}.room-meta .rating{margin-left:auto;font-weight:800}
.star-bad{color:var(--bad)}.star-ok{color:var(--blue2)}.star-good{color:var(--good)}.star-great{color:var(--great)}

.rail{display:grid;gap:16px;align-content:start;position:sticky;top:94px}
.panel{border:1px solid var(--line);border-radius:var(--radius);background:rgba(11,25,43,.75);padding:18px;box-shadow:var(--shadow)}
.panel-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:10px}
.live-label{font-size:.67rem;color:#92a6bd;display:flex;align-items:center;gap:6px}.live-label i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(183,255,57,.6)}
.rank{
  display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;
  padding:11px 5px;border-top:1px solid rgba(157,177,205,.09);cursor:pointer
}
.rank-num{font-weight:900;color:#6f839d}.rank:nth-child(1) .rank-num{color:var(--green)}.rank:nth-child(2) .rank-num{color:var(--blue2)}.rank:nth-child(3) .rank-num{color:var(--good)}
.rank strong{font-size:.8rem;line-height:1.28;display:block}.rank span{font-size:.66rem;color:var(--muted)}
.rank .up{color:#48e49a}
.interests p{color:var(--muted);font-size:.8rem;line-height:1.5}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.chips span{font-size:.68rem;color:#a9c9ff;border:1px solid rgba(53,127,255,.16);background:rgba(53,127,255,.09);padding:7px 9px;border-radius:999px}
.wide{width:100%;justify-content:center}

.bottom-nav{display:none}

.modal-wrap{
  position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;
  background:rgba(2,7,13,.78);backdrop-filter:blur(14px)
}
.hidden{display:none!important}
.modal{
  position:relative;width:min(690px,100%);max-height:90vh;overflow:auto;padding:28px;
  border:1px solid rgba(157,177,205,.18);border-radius:26px;
  background:radial-gradient(circle at 90% 0%,rgba(53,127,255,.14),transparent 34%),#0b1a2c;
  box-shadow:0 45px 120px rgba(0,0,0,.6)
}
.modal-close{position:absolute;right:15px;top:14px;width:35px;height:35px;border-radius:50%;border:1px solid var(--line);background:#10243c;color:#9db0c7;cursor:pointer;font-size:1.2rem}
.modal>small{color:#7eb0ff;font-weight:900;letter-spacing:.08em}.modal h2{font-size:1.8rem;line-height:1.15;letter-spacing:-.035em;margin:7px 40px 8px 0}.modal>p{color:var(--muted);line-height:1.55}
.modal-author{display:flex;align-items:center;gap:10px;margin-top:18px}.modal-author strong,.modal-author span{display:block}.modal-author span{font-size:.7rem;color:var(--muted)}#modalTrust{margin-left:auto!important;font-weight:800;color:var(--great)!important}
.modal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}
.modal-stats div{padding:12px;border:1px solid var(--line);border-radius:14px;background:#0e2138;display:grid;grid-template-columns:20px 1fr;gap:2px 7px;align-items:center}
.modal-stats svg{grid-row:1/3;color:#7894b4}.modal-stats strong{font-size:.9rem}.modal-stats span{font-size:.64rem;color:var(--muted)}
.rules{border:1px solid var(--line);border-radius:16px;background:rgba(7,17,31,.6);padding:16px}.rules>p{font-size:.72rem;color:var(--muted);margin:3px 0}.rules ul{margin-bottom:0;padding-left:18px;color:#bdcada;font-size:.81rem;line-height:1.6}
.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}
.toast{
  position:fixed;z-index:120;left:50%;bottom:24px;transform:translate(-50%,20px);
  opacity:0;pointer-events:none;background:#112740;border:1px solid rgba(101,167,255,.2);color:#fff;
  padding:11px 15px;border-radius:12px;box-shadow:var(--shadow);transition:.22s ease
}
.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:1100px){
  :root{--sidebar:82px}
  .brand{justify-content:center}.brand-text,.nav-link span,.profile-copy,.profile-mini button{display:none}
  .nav-link{justify-content:center;padding:13px}.nav-link b,.nav-link i{position:absolute;right:10px;top:8px}
  .profile-mini{grid-template-columns:1fr;justify-items:center}
  .page-grid{grid-template-columns:1fr}.rail{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  body{padding-bottom:78px}
  .sidebar{display:none}.main{margin:0}
  .topbar{padding:10px 14px;display:grid;grid-template-columns:auto 1fr;gap:9px}
  .mobile-logo{display:block}.mobile-logo .brand-text{display:inline;font-size:1.08rem}
  .search{grid-column:1/-1;width:100%;max-width:none}
  .hero{display:block;padding:32px 16px 18px}.hero h1{font-size:2.65rem}.hero p{font-size:.92rem}
  .ad-category-section{margin-top:24px;padding-top:18px}
  .market-hub{margin-top:18px;padding-top:17px}
  .market-hub-heading{margin-bottom:11px}
  .market-hub-heading h2{font-size:.94rem}
  .market-hub-actions{gap:8px}
  .market-hub-card{grid-template-columns:36px minmax(0,1fr);padding:11px 10px;gap:9px}
  .market-hub-icon{width:36px;height:36px;border-radius:11px}
  .market-hub-icon svg{width:19px;height:19px}
  .market-hub-copy strong{font-size:.74rem}
  .market-hub-copy small{font-size:.58rem}
  .market-hub-arrow{display:none}
  .ad-category-heading{align-items:flex-start;margin-bottom:14px}
  .ad-category-heading>span{display:none}
  .ad-category-list{gap:14px;margin-right:-16px;padding-right:16px}
  .ad-category-item{flex-basis:92px;min-width:92px}
  .ad-category-icon{width:54px;height:54px}
  .view-tabs{width:100%}.tab{flex:1}
  .section-head--feed{align-items:flex-start}.section-title-row{align-items:flex-start}.section-filter-btn{width:auto}
  .filters-grid{grid-template-columns:1fr}.ads-filters-grid{grid-template-columns:1fr}.filters-grid .soft{justify-content:center}
  .room-tabs{width:100%}
  .categories{padding:0 16px 16px}.page-grid{padding:0 16px 25px}.rail{grid-template-columns:1fr}.interests{display:none}.panel{box-shadow:none}
  .room{padding:15px;border-radius:18px}.room-meta{gap:9px}.room-meta .rating{margin-left:0}
  .ad-card{grid-template-columns:98px minmax(0,1fr);gap:12px;padding:11px;border-radius:18px}
  .ad-card-media,.ad-card-media img{min-height:104px}.ad-card h3{font-size:1rem}.ad-card p{-webkit-line-clamp:2}
  .ad-card-meta{align-items:flex-start;flex-direction:column;gap:7px}.ad-card-actions{justify-content:stretch}.ad-open-btn{width:100%}
  .bottom-nav{
    display:grid;grid-template-columns:repeat(4,1fr);align-items:center;
    position:fixed;z-index:50;left:10px;right:10px;bottom:10px;height:62px;padding:5px 8px;
    border:1px solid var(--line);border-radius:20px;background:rgba(7,17,31,.94);backdrop-filter:blur(24px);box-shadow:0 20px 60px rgba(0,0,0,.45)
  }
  .bottom-nav button{position:relative;border:0;background:transparent;color:#7589a3;display:grid;gap:2px;justify-items:center;cursor:pointer}
  .bottom-nav button.active{color:#7eb0ff}.bottom-nav span{font-size:.56rem}.bottom-nav b{position:absolute;top:-3px;right:12px;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:.5rem}
    .modal{padding:22px 16px;border-radius:22px}.modal h2{font-size:1.45rem}.modal-stats{grid-template-columns:1fr 1fr}
}


/* Novos dados da sala: criação e modo de entrada */
.room-details{
  display:flex;flex-wrap:wrap;gap:10px 18px;margin:-4px 0 18px;padding:12px 14px;
  border:1px solid var(--line);border-radius:14px;background:rgba(7,17,31,.45);color:#aebdd0;font-size:.76rem
}
.room-details>span{display:flex;align-items:center;gap:6px}.room-details svg{width:16px;height:16px;color:#7ca9e7}.room-details b{color:#dbe7f5}
.room-created{color:#768ca6!important}.join-badge{padding:4px 7px;border-radius:999px;border:1px solid rgba(101,167,255,.18);background:rgba(53,127,255,.07);color:#9fc3ff!important}
.join-badge.approval{border-color:rgba(255,212,74,.18);background:rgba(255,212,74,.06);color:#ffd96b!important}
.create-form label{display:grid;gap:7px;margin-top:14px;color:#b8c8da;font-size:.8rem}
.create-form input,.create-form select{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:#091727;color:#fff;outline:0}
.create-form input:focus,.create-form select:focus{border-color:rgba(101,167,255,.55)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.create-form .wide{margin-top:20px}
@media(max-width:760px){.form-grid{grid-template-columns:1fr}.room-details{display:grid}}


/* ===== Autenticação MaisOp ===== */
.auth-gate{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:clamp(22px,4vw,56px);
  background:
    radial-gradient(circle at 16% 8%,rgba(53,127,255,.24),transparent 30%),
    radial-gradient(circle at 83% 18%,rgba(183,255,57,.08),transparent 24%),
    linear-gradient(135deg,#06101d 0%,#081727 52%,#07111f 100%);
}
.auth-shell{
  width:min(1180px,100%);
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.72fr);
  grid-template-areas:
    "brand card"
    "message card";
  gap:34px 64px;
  align-items:center;
}
.auth-brand{grid-area:brand;display:flex;align-items:center;gap:12px;align-self:end}
.auth-symbol{transform:scale(1.2);transform-origin:left center;margin-right:5px}
.auth-brand .brand-text{font-size:1.72rem}
.auth-message{grid-area:message;align-self:start}
.auth-message h1{
  max-width:690px;margin:13px 0 14px;
  font-size:clamp(2.7rem,5vw,5.5rem);line-height:.94;letter-spacing:-.065em
}
.auth-message h1 em{
  font-style:normal;color:transparent;
  background:linear-gradient(90deg,#73b0ff,#b7ff39);
  -webkit-background-clip:text;background-clip:text
}
.auth-message>p{max-width:650px;color:var(--muted);font-size:1rem;line-height:1.65}
.auth-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:30px;max-width:720px}
.auth-feature-grid div{
  min-height:98px;padding:15px;border:1px solid var(--line);border-radius:17px;
  background:rgba(13,29,49,.48);display:flex;flex-direction:column;justify-content:space-between
}
.auth-feature-grid b{color:var(--blue2);font-size:.68rem;letter-spacing:.1em}
.auth-feature-grid span{font-size:.79rem;color:#bfccdc;line-height:1.3}

.auth-card{
  grid-area:card;
  border:1px solid rgba(157,177,205,.17);
  border-radius:28px;
  padding:24px;
  background:linear-gradient(180deg,rgba(17,37,61,.94),rgba(9,23,39,.96));
  box-shadow:0 40px 120px rgba(0,0,0,.48);
  backdrop-filter:blur(24px)
}
.auth-tabs{
  display:grid;grid-template-columns:1fr 1fr;
  padding:4px;margin-bottom:20px;
  border:1px solid var(--line);border-radius:13px;background:#081727
}
.auth-tabs button{
  border:0;border-radius:9px;padding:10px;background:transparent;color:var(--muted);
  font-weight:750;cursor:pointer
}
.auth-tabs button.active{background:#173454;color:#fff}
.google-btn{
  width:100%;height:48px;border:1px solid rgba(157,177,205,.18);border-radius:13px;
  background:#f8fbff;color:#17202c;font-weight:800;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:10px
}
.google-btn:hover{filter:brightness(.96)}
.google-g{
  width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
  color:#4285f4;font-size:1.05rem;font-weight:900;background:#fff
}
.auth-divider{display:flex;align-items:center;gap:10px;margin:17px 0;color:#6f839b;font-size:.72rem}
.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:var(--line)}
.auth-form{display:grid;gap:13px}
.auth-form label{display:grid;gap:7px;color:#b9c8d9;font-size:.77rem}
.auth-form input{
  width:100%;height:45px;border:1px solid var(--line);border-radius:12px;
  background:#081727;color:#fff;padding:0 12px;outline:0
}
.auth-form input:focus{border-color:rgba(101,167,255,.58);box-shadow:0 0 0 3px rgba(53,127,255,.07)}
.auth-submit{height:47px;margin-top:2px}
.auth-error{min-height:18px;margin:12px 0 0;color:#ff8d99;font-size:.75rem;line-height:1.4}
.auth-legal{margin:10px 0 0!important;color:#677b94!important;font-size:.66rem!important;line-height:1.45!important;text-align:center}

@media(max-width:850px){
  .auth-gate{padding:24px 16px}
  .auth-shell{
    grid-template-columns:1fr;
    grid-template-areas:"brand" "message" "card";
    gap:18px
  }
  .auth-brand{align-self:auto}
  .auth-message h1{font-size:clamp(2.5rem,11vw,4.1rem)}
  .auth-message>p{font-size:.9rem}
  .auth-feature-grid{display:none}
  .auth-card{padding:18px;border-radius:22px}
}


/* ===== Perfil / Firestore ===== */
.username-input{
  display:flex;align-items:center;
  border:1px solid var(--line);border-radius:12px;background:#091727;
  overflow:hidden
}
.username-input span{padding-left:12px;color:#6f8dad;font-weight:800}
.username-input input{border:0!important;background:transparent!important;box-shadow:none!important}
.optional{font-weight:400;color:#71869e;font-size:.7rem}
.form-error{min-height:18px!important;margin:8px 0 0!important;color:#ff8e9b!important;font-size:.74rem!important}
.profile-setup{width:min(680px,100%)}

/* ===== Enquetes ===== */
.polls-box{
  margin-top:16px;border:1px solid var(--line);border-radius:18px;
  background:rgba(7,17,31,.48);padding:16px
}
.polls-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.polls-head h3{margin:3px 0 0;font-size:1rem}
.polls-list{display:grid;gap:12px}
.polls-empty{margin:0!important;color:var(--muted)!important;font-size:.8rem!important}
.poll-card{
  border:1px solid rgba(157,177,205,.13);border-radius:16px;
  background:#0c1e33;padding:14px
}
.poll-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.poll-theme{color:#7eaefa;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.poll-card h4{margin:4px 0 12px;font-size:.98rem;line-height:1.35}
.poll-state{font-size:.65rem;color:#9cb1ca;border:1px solid var(--line);padding:4px 7px;border-radius:999px;white-space:nowrap}
.poll-state.active{color:#cfff86;border-color:rgba(183,255,57,.16);background:rgba(183,255,57,.05)}
.poll-options{display:grid;gap:8px}
.poll-option{
  position:relative;overflow:hidden;width:100%;min-height:44px;
  border:1px solid rgba(157,177,205,.14);border-radius:11px;
  background:#091827;color:#dce7f5;text-align:left;padding:10px 12px;
  cursor:pointer
}
.poll-option:disabled{cursor:default}
.poll-fill{
  position:absolute;left:0;top:0;bottom:0;
  background:linear-gradient(90deg,rgba(53,127,255,.22),rgba(101,167,255,.08));
  pointer-events:none
}
.poll-option.selected{border-color:rgba(101,167,255,.5)}
.poll-option-content{position:relative;z-index:1;display:flex;justify-content:space-between;gap:10px}
.poll-option-content b{font-size:.74rem}
.poll-option-content span{font-size:.75rem}
.poll-footer{
  margin-top:11px;padding-top:10px;border-top:1px solid rgba(157,177,205,.09);
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  color:var(--muted);font-size:.68rem
}
.poll-close-action{
  border:0;background:transparent;color:#ffcf66;cursor:pointer;font-size:.68rem;font-weight:800
}
.poll-options-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.poll-options-form label{margin-top:8px}
.poll-vote-note{color:#7890aa;font-size:.65rem;margin-top:8px}
.poll-form{width:min(620px,100%)}

@media(max-width:760px){
  .polls-head{align-items:flex-start}
  .polls-head .soft{font-size:.7rem;padding:8px 9px}
  .poll-options-form{grid-template-columns:1fr}
}

/* Campo de data digitável */
.field-hint{
  display:block;
  margin-top:5px;
  color:#6f849d;
  font-size:.68rem;
  font-weight:400;
}


/* ===== Administração da sala ===== */
.room-admin{
  margin-top:16px;
  border:1px solid rgba(101,167,255,.22);
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(53,127,255,.09),transparent 35%),
    rgba(8,24,41,.72);
  padding:16px;
}
.admin-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:13px
}
.admin-head h3{margin:3px 0 0;font-size:1rem}
.admin-role{
  color:#bdddff;background:rgba(53,127,255,.12);
  border:1px solid rgba(101,167,255,.2);
  border-radius:999px;padding:5px 9px;font-size:.67rem;font-weight:850
}
.admin-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:15px}
.admin-control{
  border:1px solid var(--line);border-radius:13px;background:#0b1d31;
  color:#dbe7f5;min-height:58px;padding:10px 12px;
  display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer
}
.admin-control:hover{background:#112a46;border-color:rgba(101,167,255,.24)}
.admin-control svg{color:#7eb0ff;flex:0 0 auto}
.admin-control span{display:grid;gap:2px}
.admin-control b{font-size:.76rem}
.admin-control small{font-size:.65rem;color:#8fa4bd}
.admin-control.off svg{color:#ff8792}
.admin-control.off small{color:#ff9ca5}

.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.admin-column{
  min-width:0;border:1px solid rgba(157,177,205,.1);
  border-radius:14px;background:rgba(5,16,29,.45);padding:11px
}
.admin-section-title{
  display:flex;align-items:center;justify-content:space-between;
  padding:2px 2px 9px;border-bottom:1px solid rgba(157,177,205,.08)
}
.admin-section-title h4{margin:0;font-size:.78rem}
.admin-count{
  min-width:21px;height:21px;border-radius:999px;padding:0 6px;
  display:grid;place-items:center;
  background:rgba(53,127,255,.14);color:#8bb9ff;font-size:.62rem;font-weight:850
}
.admin-list{display:grid;gap:7px;margin-top:9px;max-height:300px;overflow:auto}
.admin-empty{margin:8px 3px!important;color:#71869e!important;font-size:.7rem!important}
.admin-user{
  border:1px solid rgba(157,177,205,.09);
  border-radius:12px;background:#0b1a2d;padding:9px
}
.admin-user-main{display:flex;align-items:center;gap:8px;min-width:0}
.admin-user .avatar{width:31px;height:31px;font-size:.62rem}
.admin-user-info{min-width:0;flex:1}
.admin-user-info strong,.admin-user-info span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-user-info strong{font-size:.72rem}
.admin-user-info span{font-size:.62rem;color:#8196af;margin-top:2px}
.member-role{
  flex:0 0 auto;border:1px solid var(--line);border-radius:999px;
  padding:3px 6px;color:#9fb4cb;font-size:.55rem;font-weight:800
}
.member-role.creator{color:#cfff80;border-color:rgba(183,255,57,.17)}
.member-role.admin{color:#84b7ff;border-color:rgba(101,167,255,.22)}
.admin-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.admin-mini-btn{
  border:1px solid var(--line);background:#10243b;color:#b9c9db;
  border-radius:8px;padding:6px 7px;font-size:.58rem;font-weight:800;cursor:pointer
}
.admin-mini-btn:hover{background:#173452;color:#fff}
.admin-mini-btn.approve{color:#9cf0bf;border-color:rgba(50,231,138,.18)}
.admin-mini-btn.reject,.admin-mini-btn.danger{color:#ff9ca5;border-color:rgba(255,83,100,.17)}
.admin-mini-btn.warn{color:#ffd979;border-color:rgba(255,212,74,.17)}

@media(max-width:760px){
  .admin-controls,.admin-grid{grid-template-columns:1fr}
  .admin-list{max-height:250px}
}


/* ===== Chat em tempo real ===== */
.room-chat{
  margin-top:16px;
  border:1px solid rgba(101,167,255,.18);
  border-radius:20px;
  background:
    radial-gradient(circle at 85% 0%,rgba(53,127,255,.08),transparent 30%),
    rgba(7,18,31,.65);
  padding:15px;
}
.chat-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px;
  margin-bottom:11px
}
.chat-head h3{margin:3px 0 0;font-size:1rem}
.chat-status{
  display:flex;align-items:center;gap:6px;
  color:#8fa4bd;font-size:.66rem
}
.chat-status i{
  width:7px;height:7px;border-radius:50%;background:#8193a8
}
.chat-status.online{color:#a9d8bd}
.chat-status.online i{
  background:var(--great);box-shadow:0 0 12px rgba(50,231,138,.55)
}
.chat-notice{
  margin-bottom:10px;padding:10px 12px;
  border:1px solid rgba(255,212,74,.15);
  border-radius:12px;background:rgba(255,212,74,.05);
  color:#c9b979;font-size:.72rem;line-height:1.4
}
.messages-list{
  min-height:250px;max-height:430px;overflow-y:auto;
  display:flex;flex-direction:column;gap:8px;
  padding:7px 3px 10px;
  scrollbar-width:thin;scrollbar-color:#264869 transparent
}
.chat-empty{
  min-height:230px;display:grid;place-items:center;align-content:center;gap:7px;
  text-align:center;color:#71869e
}
.chat-empty svg{width:28px;height:28px;color:#4e759f}
.chat-empty strong{color:#aebed0;font-size:.82rem}
.chat-empty span{font-size:.68rem;max-width:270px;line-height:1.45}

.chat-message{
  max-width:86%;
  align-self:flex-start;
  border:1px solid rgba(157,177,205,.1);
  border-radius:15px 15px 15px 5px;
  background:#0c2036;padding:9px 11px;
  box-shadow:0 5px 18px rgba(0,0,0,.08)
}
.chat-message.mine{
  align-self:flex-end;
  border-radius:15px 15px 5px 15px;
  border-color:rgba(101,167,255,.18);
  background:linear-gradient(135deg,#13365a,#113052)
}
.message-top{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:4px
}
.message-author{
  color:#84b6ff;font-size:.65rem;font-weight:850
}
.chat-message.mine .message-author{color:#cbe0ff}
.message-time{color:#667d97;font-size:.57rem;white-space:nowrap}
.message-text{
  color:#e2ebf6;font-size:.78rem;line-height:1.45;word-break:break-word
}
.message-text .mention{
  color:#8ab9ff;font-weight:800
}
.message-reply-box{
  margin-bottom:7px;padding:6px 8px;border-left:2px solid #4c8fff;
  border-radius:7px;background:rgba(53,127,255,.08)
}
.message-reply-box b{display:block;color:#88b9ff;font-size:.59rem}
.message-reply-box span{
  display:block;margin-top:2px;color:#93a7bd;font-size:.61rem;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px
}
.message-actions{
  display:flex;justify-content:flex-end;margin-top:4px
}
.message-reply-btn{
  border:0;background:transparent;color:#6f89a7;cursor:pointer;
  display:flex;align-items:center;gap:4px;padding:2px;font-size:.56rem
}
.message-reply-btn svg{width:13px;height:13px}
.message-sticker{
  font-size:2.6rem;line-height:1.15;padding:4px 2px
}
.typing-indicator{
  min-height:17px;padding:0 5px 4px;color:#6f89a7;font-size:.62rem;font-style:italic
}
.reply-preview{
  margin-bottom:8px;padding:8px 10px;
  border-left:3px solid #4c8fff;border-radius:8px;
  background:#0e243c;display:flex;justify-content:space-between;gap:12px
}
.reply-preview span{color:#7f96b0;font-size:.61rem}
.reply-preview b{color:#9ac3ff}
.reply-preview p{
  margin:3px 0 0!important;color:#b5c5d7!important;font-size:.65rem!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px
}
.reply-preview button{
  border:0;background:transparent;color:#859ab2;cursor:pointer;font-size:1rem
}
.quick-picker{
  display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;
  padding:8px;border:1px solid var(--line);border-radius:12px;background:#0b1e33
}
.quick-picker button{
  width:35px;height:35px;border:1px solid rgba(157,177,205,.09);
  border-radius:9px;background:#102944;cursor:pointer;font-size:1.05rem
}
.quick-picker button:hover{background:#173758}
.sticker-picker button{font-size:1.45rem;width:43px;height:43px}
.chat-composer{
  display:grid;grid-template-columns:38px 38px minmax(0,1fr) 42px;
  gap:6px;align-items:end;padding-top:10px;border-top:1px solid rgba(157,177,205,.09)
}
.composer-tool,.composer-send{
  height:40px;border-radius:11px;display:grid;place-items:center;cursor:pointer
}
.composer-tool{
  border:1px solid var(--line);background:#0d2239;color:#8da6c3
}
.composer-tool:hover{background:#14304e;color:#bcd5f2}
.composer-send{
  border:0;background:linear-gradient(135deg,var(--blue),#5999ff);color:#fff;
  box-shadow:0 8px 24px rgba(53,127,255,.2)
}
.chat-composer textarea{
  min-height:40px;max-height:115px;resize:none;
  border:1px solid var(--line);border-radius:12px;
  background:#081929;color:#fff;padding:10px 12px;outline:0;
  line-height:1.35;font-size:.78rem
}
.chat-composer textarea:focus{border-color:rgba(101,167,255,.45)}
.chat-composer textarea::placeholder{color:#637c97}
.chat-composer.disabled{opacity:.5;pointer-events:none}

@media(max-width:760px){
  .room-chat{padding:12px}
  .messages-list{max-height:370px;min-height:220px}
  .chat-message{max-width:92%}
  .chat-composer{grid-template-columns:36px 36px minmax(0,1fr) 40px}
}


/* ===== Busca de pessoas ===== */
.search-area{
  position:relative;flex:1;max-width:760px;margin:0 auto
}
.search-area .search{width:100%;max-width:none;margin:0}
.user-search-results{
  position:absolute;z-index:70;left:0;right:0;top:53px;
  border:1px solid rgba(157,177,205,.17);
  border-radius:16px;background:#0a1a2d;
  box-shadow:0 24px 70px rgba(0,0,0,.48);
  padding:7px;max-height:340px;overflow:auto
}
.user-search-title{
  padding:7px 9px;color:#7189a5;font-size:.62rem;font-weight:900;letter-spacing:.1em
}
.user-search-item{
  width:100%;border:0;background:transparent;color:#fff;
  display:flex;align-items:center;gap:10px;text-align:left;
  padding:9px;border-radius:11px;cursor:pointer
}
.user-search-item:hover{background:#112d4a}
.user-search-item .avatar{width:34px;height:34px;font-size:.66rem}
.user-search-copy{min-width:0;flex:1}
.user-search-copy strong,.user-search-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-search-copy strong{font-size:.76rem}
.user-search-copy span{font-size:.64rem;color:#8198b2;margin-top:2px}
.user-search-empty{padding:12px;color:#738aa4;font-size:.7rem;text-align:center}

/* ===== Perfis publicos / seguidores ===== */
.profile-mini{cursor:pointer}
.public-profile-modal{width:min(610px,100%);padding:0 0 24px;overflow:hidden}
.public-profile-cover{
  height:105px;
  background:
    radial-gradient(circle at 20% 10%,rgba(183,255,57,.13),transparent 26%),
    linear-gradient(115deg,#113b66,#234f86 50%,#123253)
}
.public-profile-header{
  display:grid;grid-template-columns:76px minmax(0,1fr) auto;
  gap:13px;align-items:center;padding:0 22px;
  margin-top:-30px
}
.public-profile-avatar{
  width:76px;height:76px;border:5px solid #0b1a2c;
  font-size:1.2rem;box-shadow:0 10px 30px rgba(0,0,0,.28)
}
.public-profile-identity{padding-top:32px;min-width:0}
.public-profile-name-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.public-profile-name-line h2{margin:0!important;font-size:1.3rem!important}
.public-profile-identity>span{color:#82a7cf;font-size:.75rem}
.public-profile-identity>p{margin:3px 0 0!important;color:#738aa4!important;font-size:.67rem!important}
.verified-badge{
  border:1px solid rgba(101,167,255,.22);border-radius:999px;
  color:#85b9ff;background:rgba(53,127,255,.08);
  padding:4px 7px;font-size:.57rem;font-weight:850
}
.follow-btn{margin-top:30px;min-width:88px}
.follow-btn.following{
  background:#132b47;color:#c4d5e7;border:1px solid var(--line);box-shadow:none
}
.follow-btn.hidden{display:none}
.public-profile-bio{
  margin:19px 22px 0!important;color:#b0c0d2!important;font-size:.78rem!important;line-height:1.55!important
}
.public-profile-stats{
  margin:16px 22px 0;display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)
}
.public-profile-stats button,.public-profile-stats div{
  border:0;background:transparent;color:inherit;
  padding:13px 8px;text-align:center
}
.public-profile-stats button{cursor:pointer}
.public-profile-stats strong,.public-profile-stats span{display:block}
.public-profile-stats strong{font-size:.86rem}
.public-profile-stats span{font-size:.58rem;color:#748ba6;margin-top:2px}
.public-profile-section{padding:16px 22px 0}
.public-interest-chips{margin-top:9px}

/* ===== Interesses ===== */
.interest-suggestions{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.interest-suggestions button{
  border:1px solid var(--line);background:#0c2036;color:#aabdd2;
  border-radius:999px;padding:8px 10px;font-size:.68rem;cursor:pointer
}
.interest-suggestions button.selected{
  color:#ddecff;border-color:rgba(101,167,255,.35);
  background:rgba(53,127,255,.15)
}
.interest-add-row{display:grid;grid-template-columns:1fr auto;gap:7px}
.selected-interests{display:flex;flex-wrap:wrap;gap:7px;margin:9px 0 15px}
.selected-interest{
  border:1px solid rgba(53,127,255,.2);background:rgba(53,127,255,.1);
  color:#afd0ff;border-radius:999px;padding:7px 9px;
  display:flex;align-items:center;gap:6px;font-size:.68rem
}
.selected-interest button{
  border:0;background:transparent;color:#7f9fca;cursor:pointer;padding:0
}
.author-button{
  border:0;background:transparent;color:inherit;padding:0;cursor:pointer;text-align:left
}
.author-button:hover strong{color:#8dbbff}
.followers-only-tag{
  color:#d1b8ff!important;border:1px solid rgba(155,112,255,.18);
  background:rgba(155,112,255,.06);border-radius:999px;padding:4px 7px
}
.following-mode-label{
  color:#a7cbff;font-size:.67rem;padding:5px 8px;border-radius:999px;
  border:1px solid rgba(101,167,255,.18);background:rgba(53,127,255,.07)
}

@media(max-width:760px){
  .search-area{grid-column:1/-1;width:100%;max-width:none;margin:0}
  .user-search-results{top:51px}
  .public-profile-header{grid-template-columns:65px minmax(0,1fr);padding:0 16px}
  .public-profile-avatar{width:65px;height:65px}
  .public-profile-identity{padding-top:30px}
  .follow-btn{grid-column:1/-1;margin:4px 0 0;width:100%}
  .public-profile-bio,.public-profile-stats,.public-profile-section{margin-left:16px;margin-right:16px}
  .public-profile-section{padding-left:0;padding-right:0}
}


/* ===== Avaliações ===== */
.ratings-box{
  margin-top:16px;
  border:1px solid rgba(157,177,205,.12);
  border-radius:20px;
  background:
    radial-gradient(circle at 90% 0%,rgba(255,212,74,.055),transparent 30%),
    rgba(7,18,31,.64);
  padding:15px;
}
.ratings-head{
  display:flex;align-items:center;justify-content:space-between;gap:14px
}
.ratings-head h3{margin:3px 0 0;font-size:1rem}
.rating-summary{
  min-width:112px;text-align:right
}
.rating-summary strong,.rating-summary span{display:block}
.rating-summary strong{font-size:1rem}
.rating-summary span{margin-top:2px;color:#7890aa;font-size:.6rem}
.rating-summary.bad strong{color:var(--bad)}
.rating-summary.ok strong{color:var(--blue2)}
.rating-summary.good strong{color:var(--good)}
.rating-summary.great strong{color:var(--great)}
.rating-helper{
  margin:12px 0 8px!important;color:#7d92aa!important;
  font-size:.66rem!important;line-height:1.45!important
}
.rating-options{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px
}
.rating-option{
  min-height:58px;border:1px solid var(--line);
  border-radius:12px;background:#0b1f35;color:#8195ad;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;cursor:pointer;transition:.16s ease
}
.rating-option span{font-size:1.04rem}
.rating-option b{font-size:.61rem}
.rating-option:hover{transform:translateY(-1px);background:#102945}
.rating-option.bad span,.rating-option.bad.selected{color:var(--bad)}
.rating-option.ok span,.rating-option.ok.selected{color:var(--blue2)}
.rating-option.good span,.rating-option.good.selected{color:var(--good)}
.rating-option.great span,.rating-option.great.selected{color:var(--great)}
.rating-option.selected{
  border-color:currentColor;background:rgba(255,255,255,.035);
  box-shadow:inset 0 0 0 1px currentColor
}
.rating-option:disabled{opacity:.35;cursor:not-allowed;transform:none}
.rating-message{
  min-height:16px;margin:7px 1px 0!important;
  color:#8da1b8!important;font-size:.61rem!important
}
.trust-ratings-area{
  margin-top:16px;padding-top:14px;border-top:1px solid rgba(157,177,205,.09)
}
.trust-ratings-title{
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px
}
.trust-ratings-title h4{margin:3px 0 0;font-size:.84rem}
.trust-ratings-title small{color:#71869e;font-size:.57rem}
.trust-members-list{
  display:grid;gap:7px;max-height:360px;overflow:auto
}
.trust-member{
  border:1px solid rgba(157,177,205,.09);
  border-radius:13px;background:#0a1d31;padding:9px
}
.trust-member-main{
  display:flex;align-items:center;gap:8px;margin-bottom:8px
}
.trust-member-main .avatar{width:31px;height:31px;font-size:.62rem}
.trust-member-copy{min-width:0;flex:1}
.trust-member-copy strong,.trust-member-copy span{display:block}
.trust-member-copy strong{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem
}
.trust-member-copy span{margin-top:2px;color:#758aa3;font-size:.59rem}
.trust-options{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.trust-option{
  border:1px solid var(--line);border-radius:8px;background:#10243b;
  padding:6px 4px;color:#71869f;cursor:pointer;font-size:.56rem;font-weight:800
}
.trust-option[data-trust-rating="1"]{color:#ff7a87}
.trust-option[data-trust-rating="2"]{color:#82b5ff}
.trust-option[data-trust-rating="3"]{color:#ffdc65}
.trust-option[data-trust-rating="4"]{color:#63e99c}
.trust-option.selected{
  border-color:currentColor;background:rgba(255,255,255,.04);
  box-shadow:inset 0 0 0 1px currentColor
}
.trust-empty{
  padding:12px 4px;color:#71869e;font-size:.67rem;text-align:center
}

#publicTrust.trust-bad{color:var(--bad)}
#publicTrust.trust-ok{color:var(--blue2)}
#publicTrust.trust-good{color:var(--good)}
#publicTrust.trust-great{color:var(--great)}

@media(max-width:760px){
  .rating-options{grid-template-columns:repeat(2,1fr)}
  .trust-options{grid-template-columns:repeat(2,1fr)}
}


/* ===== V9: arquitetura multipagina ===== */
.nav-link{text-decoration:none}.mini-settings{width:28px;height:28px;display:grid;place-items:center;color:#7289a4;border-radius:8px}.mini-settings svg{width:16px;height:16px}.mini-settings:hover{background:#122944;color:#fff}.inner-main{padding:0 32px 60px}.inner-topbar{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);margin-bottom:24px}.inner-topbar h1{margin:3px 0 0;font-size:1.55rem}.inner-topbar p{color:#8094aa;margin:5px 0 0;font-size:.75rem}.page-kicker{font-size:.61rem;letter-spacing:.16em;color:#76a7ea;font-weight:900}.page-loading{min-height:100vh;display:grid;place-items:center;background:var(--bg);color:#71869d}.page-panel{border:1px solid var(--line);border-radius:18px;background:rgba(10,25,43,.7);padding:18px;margin-bottom:16px}.page-list{display:grid;gap:10px}.page-empty{padding:34px 20px;border:1px dashed rgba(157,177,205,.14);border-radius:16px;color:#71869d;text-align:center;font-size:.74rem}.page-room-card{display:block;text-decoration:none;color:inherit}.page-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.page-tabs button{border:1px solid var(--line);background:#0c2036;color:#8096af;border-radius:999px;padding:8px 11px;cursor:pointer;font-size:.67rem;font-weight:800}.page-tabs button.active{background:rgba(53,127,255,.15);border-color:rgba(101,167,255,.32);color:#c9ddfa}.profile-page-card{border:1px solid var(--line);border-radius:20px;background:#091a2d;overflow:hidden}.profile-page-cover{height:150px;background:radial-gradient(circle at 15% 15%,rgba(183,255,57,.12),transparent 24%),linear-gradient(120deg,#123c66,#24568d 55%,#102d4b)}.profile-page-head{display:grid;grid-template-columns:105px 1fr auto;gap:18px;align-items:center;padding:0 26px;margin-top:-48px}.big-avatar{width:105px;height:105px;border:6px solid #091a2d;font-size:1.55rem}.profile-page-head>div:nth-child(2){padding-top:50px}.profile-title-line{display:flex;align-items:center;gap:9px}.profile-title-line h2{margin:0;font-size:1.5rem}.profile-page-head>div:nth-child(2)>span{color:#84a8d0;font-size:.78rem}.profile-page-head p{margin:4px 0 0;color:#6f87a2;font-size:.68rem}.profile-page-bio{padding:20px 26px 4px;color:#b6c6d9;line-height:1.55}.profile-stat-row{display:grid;grid-template-columns:repeat(3,1fr);margin:16px 26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-stat-row>a,.profile-stat-row>div{padding:14px;text-align:center;text-decoration:none;color:inherit}.profile-stat-row strong,.profile-stat-row span{display:block}.profile-stat-row span{font-size:.61rem;color:#7389a2;margin-top:3px}.profile-page-chips{padding:0 26px 22px}.person-card{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;border:1px solid var(--line);background:#0a1d31;border-radius:14px;padding:12px}.person-card .avatar{width:40px;height:40px}.person-card>div:nth-child(2){flex:1;min-width:0}.person-card strong,.person-card span{display:block}.person-card span{font-size:.65rem;color:#7890aa;margin-top:3px}.person-card>b{font-size:.62rem;color:#76a7ea}.big-search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:#071827;padding:0 12px}.big-search input{flex:1;border:0;background:transparent;color:#fff;padding:14px 0;outline:0}.big-search svg{width:18px;height:18px;color:#6d86a2}.result-heading{font-size:.64rem;letter-spacing:.12em;color:#7189a5;font-weight:900;margin:16px 3px 4px}.category-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.category-card{min-height:130px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#0a2036,#0b1727);padding:18px;text-decoration:none;color:inherit;display:flex;flex-direction:column;justify-content:flex-end}.category-card span{color:#7baeff;font-size:.65rem;font-weight:900;text-transform:uppercase}.category-card strong{font-size:1rem;margin-top:7px}.category-card small{color:#71869d;margin-top:4px}.page-form{display:grid;gap:14px}.page-form label{display:grid;gap:6px;color:#91a5bd;font-size:.69rem;font-weight:700}.page-form input,.page-form select,.page-form textarea{border:1px solid var(--line);border-radius:11px;background:#071827;color:#fff;padding:11px 12px;outline:0}.page-form textarea{min-height:110px;resize:vertical}.page-form h3{margin:8px 0 0}.toggle-line{display:flex!important;align-items:center;gap:9px}.toggle-line input{width:auto}.danger-panel{border-color:rgba(255,83,100,.16)}.danger-button{border:1px solid rgba(255,83,100,.24);background:rgba(255,83,100,.08);color:#ff9ba5;border-radius:10px;padding:10px 12px;cursor:pointer}.room-page-header{border:1px solid var(--line);border-radius:20px;background:#0a1c30;padding:22px}.room-page-header h1{font-size:1.65rem;margin:8px 0}.room-page-header>p{color:#9fb1c6;line-height:1.6}.room-page-creator a{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit}.room-page-creator .avatar{width:38px;height:38px}.room-page-creator strong,.room-page-creator span{display:block}.room-page-creator span{color:#7890aa;font-size:.65rem;margin-top:2px}.room-page-meta{margin-top:16px}.room-rules{margin-top:14px;border-left:3px solid #4a8fff;background:rgba(53,127,255,.06);padding:10px 12px;border-radius:8px}.room-rules p{margin:5px 0 0;color:#9db0c5}.room-page-actions{display:flex;gap:8px}.back-link{color:#8bacd2;text-decoration:none}.dm-layout{display:grid;grid-template-columns:300px minmax(0,1fr);height:calc(100vh - 140px);border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#081827}.dm-sidebar{border-right:1px solid var(--line);overflow:auto}.dm-start{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--line)}.dm-start input{min-width:0;flex:1;border:1px solid var(--line);border-radius:9px;background:#0c2138;color:#fff;padding:9px}.conversation-item{width:100%;border:0;border-bottom:1px solid rgba(157,177,205,.07);background:transparent;color:#fff;text-align:left;padding:12px;cursor:pointer}.conversation-item.active,.conversation-item:hover{background:#102943}.conversation-item strong,.conversation-item span{display:block}.conversation-item span{color:#70869f;font-size:.62rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-chat{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.dm-header{padding:13px;border-bottom:1px solid var(--line)}.dm-header a{text-decoration:none;color:inherit}.dm-header strong,.dm-header span{display:block}.dm-header span{font-size:.62rem;color:#7890aa}.dm-messages{padding:14px;overflow:auto;display:flex;flex-direction:column;gap:7px}.dm-bubble{max-width:76%;align-self:flex-start;background:#10273f;border-radius:14px 14px 14px 4px;padding:9px 11px}.dm-bubble.mine{align-self:flex-end;background:#16406a;border-radius:14px 14px 4px 14px}.dm-bubble p{margin:0;color:#e3ecf7;font-size:.76rem;line-height:1.45}.dm-bubble span{display:block;color:#6f89a5;font-size:.54rem;margin-top:4px;text-align:right}.dm-composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-top:1px solid var(--line)}.dm-composer textarea{border:1px solid var(--line);border-radius:11px;background:#091c30;color:#fff;padding:10px;resize:none}.notification-card{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:14px;background:#0a1d31;padding:13px}.notification-card.unread{border-color:rgba(101,167,255,.26);background:#0e2843}.notification-card strong{font-size:.75rem}.notification-card p{margin:4px 0;color:#a9bacd;font-size:.7rem}.notification-card span{font-size:.57rem;color:#70869f}.notification-card i{width:8px;height:8px;border-radius:50%;background:#56a0ff}.ranking-page-list{display:grid;gap:8px}.ranking-page-row{display:grid;grid-template-columns:55px 1fr;align-items:center;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:14px;background:#0a1d31;padding:13px}.ranking-page-row>b{font-size:1.05rem;color:#72a9f6}.ranking-page-row strong,.ranking-page-row span{display:block}.ranking-page-row span{font-size:.62rem;color:#7890aa;margin-top:3px}.mobile-bottom-nav{display:none}
@media(max-width:980px){.inner-main{padding-left:22px;padding-right:22px}.category-page-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.inner-main{padding:0 12px 84px}.inner-topbar{min-height:78px;margin-bottom:14px}.inner-topbar h1{font-size:1.25rem}.mobile-bottom-nav{position:fixed;z-index:110;left:10px;right:10px;bottom:10px;height:58px;border:1px solid rgba(157,177,205,.14);border-radius:18px;background:rgba(7,17,31,.96);backdrop-filter:blur(14px);display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 18px 50px rgba(0,0,0,.4)}.mobile-bottom-nav a{display:grid;place-items:center;color:#71869e}.mobile-bottom-nav a.active{color:#67a5ff}.mobile-bottom-nav svg{width:21px;height:21px}.profile-page-cover{height:105px}.profile-page-head{grid-template-columns:72px 1fr;padding:0 15px;margin-top:-34px}.big-avatar{width:72px;height:72px;border-width:4px;font-size:1rem}.profile-page-head>div:nth-child(2){padding-top:34px}.profile-page-head>button{grid-column:1/-1}.profile-page-bio,.profile-page-chips{padding-left:15px;padding-right:15px}.profile-stat-row{margin-left:15px;margin-right:15px}.category-page-grid{grid-template-columns:1fr}.dm-layout{grid-template-columns:1fr;height:auto}.dm-sidebar{max-height:230px;border-right:0;border-bottom:1px solid var(--line)}.dm-chat{min-height:520px}.room-page-actions{flex-direction:column}.room-page-header{padding:16px}.room-page-header h1{font-size:1.35rem}}


/* ===== V9.2: imagens nas conversas ===== */
.hidden-file-input{display:none!important}
.chat-composer-with-image{grid-template-columns:38px 38px 38px minmax(0,1fr) 42px}
.chat-image-preview,.dm-image-preview{
  display:flex;align-items:center;gap:10px;margin:0 0 9px;padding:8px;
  border:1px solid rgba(101,167,255,.2);border-radius:12px;background:#0b2138
}
.chat-image-preview img,.dm-image-preview img{
  width:58px;height:58px;object-fit:cover;border-radius:9px;border:1px solid rgba(157,177,205,.12)
}
.chat-image-preview>div,.dm-image-preview>div{min-width:0;flex:1}
.chat-image-preview strong,.chat-image-preview span,.dm-image-preview strong,.dm-image-preview span{display:block}
.chat-image-preview strong,.dm-image-preview strong{font-size:.68rem;color:#d6e4f5}
.chat-image-preview span,.dm-image-preview span{margin-top:3px;font-size:.59rem;color:#7890aa;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-image-preview>button,.dm-image-preview>button{
  border:0;background:transparent;color:#8ba1ba;font-size:1.15rem;cursor:pointer;padding:6px
}
.message-image-link,.dm-image-link{display:block;text-decoration:none}
.message-image{
  display:block;max-width:min(360px,100%);max-height:420px;width:auto;height:auto;
  border-radius:11px;object-fit:contain;background:#071522;border:1px solid rgba(157,177,205,.1)
}
.message-image-caption{margin-top:7px}
.composer-send.sending{opacity:.55;pointer-events:none}
.dm-composer-image{grid-template-columns:40px minmax(0,1fr) auto;align-items:end}
.dm-composer-image .composer-tool{width:40px}
.dm-image-preview{margin:0;border-radius:0;border-left:0;border-right:0;border-bottom:0}
.dm-image-bubble{padding:7px;max-width:min(76%,440px)}
.dm-image{
  display:block;max-width:100%;max-height:420px;border-radius:10px;object-fit:contain;background:#071522
}
.dm-image-caption{padding:7px 4px 1px}
@media(max-width:760px){
  .chat-composer-with-image{grid-template-columns:34px 34px 34px minmax(0,1fr) 40px;gap:5px}
  .message-image{max-width:100%;max-height:360px}
  .dm-image-bubble{max-width:88%}
}


/* V9.3 — miniaturas de imagens */
.message-image,
.dm-image{
  display:block;
  width:auto;
  height:auto;
  object-fit:cover;
  background:#071523;
}

/* O navegador conhece a proporção via width/height e reserva o espaço
   antes da miniatura terminar de carregar. */
.message-image-link,
.dm-image-link{
  overflow:hidden;
}


/* ===== Publicações e navegação do perfil ===== */
.profile-page-tabs{
  overflow-x:auto;
  scrollbar-width:none;
}
.profile-page-tabs::-webkit-scrollbar{display:none}
.profile-page-tabs button{white-space:nowrap;flex:0 0 auto;font-size:.76rem}

.profile-composer,
.showcase-form{
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(17,40,67,.88),rgba(9,24,41,.9));
  padding:16px;
  margin-bottom:14px;
}
.profile-composer-head{
  display:flex;align-items:center;gap:10px;margin-bottom:11px
}
.profile-composer-head .avatar{width:36px;height:36px;font-size:.7rem}
.profile-composer-head strong,
.profile-composer-head span{display:block}
.profile-composer-head strong{font-size:.8rem}
.profile-composer-head span{font-size:.64rem;color:var(--muted);margin-top:2px}

.profile-composer textarea,
.profile-composer input,
.showcase-form input,
.showcase-form textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:12px;
  background:#081a2c;
  color:#eef5ff;
  outline:0;
}
.profile-composer textarea{
  min-height:105px;resize:vertical;padding:12px;
}
.profile-composer input{margin-top:8px;padding:11px 12px}
.profile-composer textarea:focus,
.profile-composer input:focus,
.showcase-form input:focus,
.showcase-form textarea:focus{
  border-color:rgba(101,167,255,.44);
  box-shadow:0 0 0 3px rgba(53,127,255,.07)
}
.composer-actions{
  margin-top:9px;
  display:flex;align-items:center;justify-content:space-between;gap:10px
}
.composer-actions small{color:#70869e;font-size:.61rem}

.profile-post-list{display:grid;gap:10px}
.profile-post-card{
  border:1px solid var(--line);
  border-radius:17px;
  padding:15px;
  background:linear-gradient(180deg,#102945,#0a1e33);
}
.profile-post-card header{
  display:flex;align-items:center;gap:9px;margin-bottom:11px
}
.profile-post-card header .avatar{width:34px;height:34px;font-size:.65rem}
.profile-post-card header strong,
.profile-post-card header span{display:block}
.profile-post-card header strong{font-size:.78rem}
.profile-post-card header span{font-size:.62rem;color:#7f95ae;margin-top:2px}
.profile-post-card>p{
  margin:0!important;color:#d4dfeb!important;
  font-size:.8rem!important;line-height:1.55!important;
  white-space:pre-wrap;overflow-wrap:anywhere
}
.post-link{
  display:inline-flex;margin-top:11px;
  color:#84b8ff;font-size:.68rem;font-weight:800
}
.following-feed-head{margin-bottom:12px}
.following-feed-head h3{margin:5px 0 4px}
.following-feed-head p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}

.showcase-form-title,
.showcase-section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px
}
.showcase-form-title{margin-bottom:12px}
.showcase-form-title h3,
.showcase-section-head h3{margin:4px 0 0}
.showcase-live-note{
  border:1px solid rgba(183,255,57,.14);
  background:rgba(183,255,57,.05);
  color:#caff83;border-radius:999px;padding:5px 8px;
  font-size:.58rem;font-weight:800
}
.showcase-form label{
  display:grid;gap:6px;color:#a8bacd;font-size:.69rem
}
.showcase-form input,
.showcase-form textarea{padding:11px 12px}
.showcase-form textarea{min-height:90px;resize:vertical}
.field-note{color:#6f879f;font-size:.59rem}
.showcase-storage-note{
  margin:8px 0 12px!important;
  padding:9px 10px;border-radius:10px;
  border:1px solid rgba(101,167,255,.11);
  background:rgba(53,127,255,.04);
  color:#7d95ae!important;font-size:.62rem!important;line-height:1.45!important
}
.showcase-section-head{
  margin:18px 0 10px
}
.showcase-section-head>span{
  color:#7890aa;font-size:.65rem
}
.showcase-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px
}
.showcase-grid>.page-empty{grid-column:1/-1}
.showcase-card{
  min-width:0;overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(180deg,#102945,#091d31);
}
.showcase-image{
  aspect-ratio:4/3;background:#081725;overflow:hidden
}
.showcase-image img{
  width:100%;height:100%;object-fit:cover;display:block
}
.showcase-placeholder{
  width:100%;height:100%;
  display:grid;place-items:center;align-content:center;gap:6px;
  background:
    radial-gradient(circle at 70% 10%,rgba(53,127,255,.22),transparent 36%),
    linear-gradient(145deg,#0d2947,#10213a);
}
.showcase-placeholder span{
  color:#7eaef2;font-size:.55rem;font-weight:900;letter-spacing:.16em
}
.showcase-placeholder strong{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:rgba(53,127,255,.13);color:#b8d4ff;font-size:.9rem
}
.showcase-body{padding:12px}
.showcase-category{
  color:#78adf5;font-size:.57rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.showcase-body h3{
  margin:5px 0 4px;font-size:.88rem;line-height:1.25
}
.showcase-price{
  display:block;color:#c9ff80;font-size:.82rem;margin-bottom:6px
}
.showcase-body p{
  margin:0 0 11px!important;color:#8196ae!important;
  font-size:.67rem!important;line-height:1.45!important;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden
}
.showcase-link{
  width:100%;padding:9px 10px;font-size:.66rem
}

@media(max-width:980px){
  .showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .showcase-grid{grid-template-columns:1fr}
  .showcase-form-title,.showcase-section-head{align-items:flex-start}
}


/* ===== V10 — Interesse ativo + ofertas direcionadas ===== */
.demand-intro,
.opportunity-intro{
  display:flex;align-items:center;justify-content:space-between;gap:22px
}
.demand-intro h2,.opportunity-intro h2{margin:5px 0 7px}
.demand-intro p,.opportunity-intro p{
  margin:0!important;max-width:680px;color:var(--muted)!important;
  font-size:.76rem!important;line-height:1.55!important
}
.active-demand-badge{
  flex:0 0 auto;border:1px solid rgba(183,255,57,.17);
  background:rgba(183,255,57,.05);color:#caff82;
  border-radius:999px;padding:9px 12px;font-size:.65rem;font-weight:850
}
.active-demand-badge span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#73ed9f;margin-right:4px}

.demand-tabs{margin:13px 0}
.demand-form-title{margin-bottom:13px}
.demand-form label,.campaign-box label{
  display:grid;gap:6px;color:#a9bbcd;font-size:.7rem
}
.demand-form input,.demand-form select,.demand-form textarea,
.campaign-box input,.campaign-box textarea,
.opportunity-filters input,.opportunity-filters select{
  width:100%;border:1px solid var(--line);border-radius:12px;
  background:#081a2c;color:#edf5ff;padding:11px 12px;outline:0
}
.demand-form textarea,.campaign-box textarea{min-height:110px;resize:vertical}
.demand-form input:focus,.demand-form select:focus,.demand-form textarea:focus,
.campaign-box input:focus,.campaign-box textarea:focus,
.opportunity-filters input:focus,.opportunity-filters select:focus{
  border-color:rgba(101,167,255,.45)
}
.demand-privacy-note,.billing-simulation-note{
  margin:10px 0 12px;padding:10px 11px;border-radius:11px;
  border:1px solid rgba(101,167,255,.11);
  background:rgba(53,127,255,.045);color:#7f96af;
  font-size:.63rem;line-height:1.45
}

.seeking-list{display:grid;gap:10px}
.seeking-card{
  border:1px solid var(--line);border-radius:17px;
  background:linear-gradient(180deg,#102945,#091d31);
  padding:15px
}
.seeking-card.expired{opacity:.76}
.seeking-card-top,.opportunity-top{
  display:flex;align-items:center;justify-content:space-between;gap:10px
}
.seeking-category{
  color:#88baff;font-size:.57rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.seeking-time{color:#879cb3;font-size:.62rem}
.seeking-card h3{margin:7px 0 6px;font-size:.92rem}
.seeking-card p{
  margin:0!important;color:#a2b3c6!important;font-size:.72rem!important;line-height:1.5!important;
  white-space:pre-wrap
}
.seeking-location{
  display:block;margin-top:9px;color:#7f99b4;font-size:.63rem
}
.seeking-actions{
  margin-top:12px;padding-top:10px;border-top:1px solid rgba(157,177,205,.08);
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap
}
.demand-live{color:#75eaa0;font-size:.61rem;font-weight:800}
.demand-expired{color:#ff8d97;font-size:.61rem;font-weight:800}
.renew-buttons{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.renew-buttons span{color:#7188a2;font-size:.58rem}
.renew-buttons button{
  border:1px solid var(--line);background:#102842;color:#a8bdd5;
  border-radius:8px;padding:5px 7px;font-size:.57rem;cursor:pointer
}
.profile-seeking-actions{
  display:flex;gap:8px;flex-wrap:wrap;margin-bottom:11px
}

.direct-offers-list{display:grid;gap:11px}
.offers-explainer{margin-bottom:12px}
.direct-offer-card{
  border:1px solid rgba(101,167,255,.17);border-radius:18px;
  background:linear-gradient(180deg,#102b49,#091e33);
  padding:15px
}
.offer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.offer-head h3{margin:5px 0 0}
.offer-head>strong{color:#caff82;white-space:nowrap}
.direct-offer-card>p{
  color:#a8b8ca!important;font-size:.74rem!important;line-height:1.55!important;white-space:pre-wrap
}
.offer-images{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:11px 0
}
.offer-images a{aspect-ratio:1;border-radius:10px;overflow:hidden;background:#081725}
.offer-images img{width:100%;height:100%;object-fit:cover;display:block}
.offer-meta{
  display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;
  color:#7189a3;font-size:.6rem;margin-top:10px
}
.offer-link{display:inline-flex;margin-top:10px}

.opportunity-intro{margin-bottom:12px}
.price-card{
  min-width:180px;border:1px solid rgba(183,255,57,.16);
  border-radius:16px;background:rgba(183,255,57,.05);padding:14px;text-align:center
}
.price-card strong,.price-card span,.price-card small{display:block}
.price-card strong{font-size:1.2rem;color:#caff82}
.price-card span{font-size:.66rem;margin-top:2px}
.price-card small{font-size:.55rem;color:#71899e;margin-top:5px}
.opportunity-filters{
  display:grid;grid-template-columns:minmax(0,1fr) 230px 230px;gap:8px;margin-bottom:13px
}
.opportunity-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px;align-items:start
}
.opportunity-section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:9px
}
.opportunity-section-head h3{margin:4px 0 0}
.opportunity-section-head>span{color:#758ca5;font-size:.62rem}
.opportunity-list{display:grid;gap:9px}
.opportunity-card{
  display:grid;grid-template-columns:26px 1fr;gap:10px;
  border:1px solid var(--line);border-radius:16px;
  background:linear-gradient(180deg,#102945,#091d31);
  padding:13px;cursor:pointer
}
.opportunity-card.selected{
  border-color:rgba(101,167,255,.5);
  box-shadow:inset 0 0 0 1px rgba(101,167,255,.18)
}
.opportunity-card>input{margin-top:5px;accent-color:#4c91ff}
.opportunity-card h3{margin:7px 0 5px;font-size:.86rem}
.opportunity-card p{
  margin:0!important;color:#9fb1c4!important;font-size:.69rem!important;
  line-height:1.48!important;white-space:pre-wrap
}
.opportunity-meta{
  display:flex;justify-content:space-between;gap:9px;flex-wrap:wrap;
  color:#758da7;font-size:.6rem;margin-top:8px
}
.campaign-box{
  position:sticky;top:86px;border:1px solid rgba(101,167,255,.18);
  border-radius:18px;background:linear-gradient(180deg,#102b49,#081c30);
  padding:15px
}
.campaign-box h3{margin:5px 0 12px}
.campaign-box form{display:grid;gap:10px}
.campaign-price-summary{
  display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px
}
.campaign-price-summary>div{
  border:1px solid rgba(157,177,205,.09);
  background:#0a1d31;border-radius:11px;padding:9px
}
.campaign-price-summary span,.campaign-price-summary strong{display:block}
.campaign-price-summary span{color:#7189a4;font-size:.56rem}
.campaign-price-summary strong{margin-top:2px;font-size:.76rem}
.campaign-price-summary .campaign-total{grid-column:1/-1}
.campaign-price-summary .campaign-total strong{color:#caff82;font-size:1rem}

@media(max-width:920px){
  .opportunity-layout{grid-template-columns:1fr}
  .campaign-box{position:static}
}
@media(max-width:700px){
  .demand-intro,.opportunity-intro{align-items:flex-start;flex-direction:column}
  .active-demand-badge,.price-card{width:100%}
  .opportunity-filters{grid-template-columns:1fr}
  .offer-images{grid-template-columns:repeat(2,1fr)}
}


/* ==================================================
   V10.2 — LOCALIZAÇÃO DE SALAS
   ================================================== */
.location-filter-trigger{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.location-filter-trigger svg{width:15px;height:15px}
.location-filter-panel{grid-column:1/-1;margin-top:12px;padding:14px;border:1px solid rgba(101,167,255,.18);border-radius:14px;background:#081b2e;display:grid;gap:12px}
.location-filter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.location-filter-head strong,.location-filter-head span{display:block}
.location-filter-head strong{font-size:.78rem;color:#e4eef9}
.location-filter-head span{margin-top:3px;font-size:.63rem;color:#738ba5}
.icon-button{width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:#0d243b;color:#8fa7c0;cursor:pointer;font-size:1rem}
.location-custom-fields{display:grid;grid-template-columns:110px minmax(160px,1fr) minmax(160px,1fr);gap:10px}
.location-custom-fields input,.location-custom-fields select{width:100%;border:1px solid var(--line);border-radius:10px;background:#071827;color:#fff;padding:10px 11px;outline:0}
.location-custom-fields b{font-weight:500;color:#627c98}
.location-filter-actions{display:flex;justify-content:flex-end;gap:8px}
.room-location-fields{padding:12px;border:1px solid rgba(101,167,255,.14);border-radius:13px;background:rgba(53,127,255,.04);display:grid;gap:10px}
.room-location-fields.hidden{display:none}
.room-location-grid{margin:0}
.room-label-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.room-location-badge{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:.58rem;font-weight:800;color:#8ca4bf;background:#091b2e}
.room-location-badge.local{color:#9dc7ff;border-color:rgba(101,167,255,.24);background:rgba(53,127,255,.08)}
.room-location-badge.global{color:#91a6bb}
.field-hint{margin:0;color:#687f99;font-size:.61rem;line-height:1.45}
.optional{font-weight:500;color:#657d97}
@media(max-width:760px){
  .location-custom-fields{grid-template-columns:1fr}
  .location-filter-actions{display:grid;grid-template-columns:1fr 1fr}
  .location-filter-actions button{justify-content:center}
}


/* ===== V10.5 — Divulgação de anúncios pelo perfil ===== */
.profile-ad-form{
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(17,40,67,.9),rgba(9,24,41,.92));
  padding:18px;
  margin-bottom:15px;
}
.profile-ad-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.profile-ad-form-head h3{margin:4px 0 5px;font-size:1.15rem}
.profile-ad-form-head p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}
.profile-ad-form label{display:grid;gap:7px;margin-top:12px;color:#b8c8da;font-size:.76rem;font-weight:700}
.profile-ad-form input,.profile-ad-form select,.profile-ad-form textarea{
  width:100%;border:1px solid var(--line);border-radius:12px;background:#081a2c;color:#eef5ff;
  outline:0;padding:11px 12px;font:inherit;font-size:.78rem
}
.profile-ad-form textarea{min-height:110px;resize:vertical;line-height:1.45}
.profile-ad-form .profile-ad-image-links{min-height:82px}
.profile-ad-form input:focus,.profile-ad-form select:focus,.profile-ad-form textarea:focus{
  border-color:rgba(101,167,255,.44);box-shadow:0 0 0 3px rgba(53,127,255,.07)
}
.profile-ad-form select:disabled{opacity:.58}
.profile-ad-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.profile-ad-location-grid{grid-template-columns:110px 1fr 1fr}
.profile-ad-submit-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px}
.profile-ad-submit-row>small,.profile-ad-form .field-hint{color:#71879f;font-size:.62rem;line-height:1.4}
.profile-ad-list{display:grid;gap:11px}
.profile-ad-card{
  display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;padding:12px;border:1px solid var(--line);
  border-radius:18px;background:linear-gradient(180deg,#102945,#0a1e33)
}
.profile-ad-media{min-height:122px;border-radius:14px;overflow:hidden;background:#081a2c;border:1px solid rgba(101,167,255,.12);display:grid;place-items:center}
.profile-ad-media img{width:100%;height:100%;min-height:122px;object-fit:cover;display:block}
.profile-ad-placeholder{padding:12px;color:#7eaef0;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;text-align:center}
.profile-ad-body{display:flex;flex-direction:column;min-width:0}
.profile-ad-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.profile-ad-top>span{font-size:.64rem;color:#9bc0f4;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.profile-ad-top>small{font-size:.62rem;color:#8198b2}
.profile-ad-card h3{margin:7px 0 6px;font-size:1rem}
.profile-ad-card p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.48;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.profile-ad-footer{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line)}
.profile-ad-footer strong{font-size:.92rem;color:#fff}
.profile-ad-footer .soft{padding:7px 10px;font-size:.65rem}
@media(max-width:760px){
  .profile-ad-form{padding:14px;border-radius:17px}
  .profile-ad-form-grid,.profile-ad-location-grid{grid-template-columns:1fr}
  .profile-ad-submit-row{align-items:stretch;flex-direction:column}
  .profile-ad-submit-row .primary{width:100%;justify-content:center}
  .profile-ad-card{grid-template-columns:100px minmax(0,1fr);gap:11px;padding:10px}
  .profile-ad-media,.profile-ad-media img{min-height:105px}
  .profile-ad-footer{align-items:flex-start;flex-direction:column}
}

/* V10.8 — Home sem salas: atalhos laterais de interesses/oportunidades */
.market-rail-actions{display:grid;gap:9px;margin-top:14px}
.market-rail-actions .primary,.market-rail-actions .soft{text-align:center;text-decoration:none;justify-content:center}


/* ==================================================
   V10.11 — Segmentação de anúncios e catálogo
   Lógica adaptada do projeto Maisell
   ================================================== */
.profile-preferences-form{display:grid;gap:14px}
.profile-preferences-form>label{display:grid;gap:7px;color:#b8c8da;font-size:.76rem;font-weight:700}
.profile-preferences-form input,.profile-preferences-form select,.profile-preferences-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#081a2c;color:#eef5ff;padding:11px 12px;outline:0;font:inherit;font-size:.78rem}
.profile-preferences-form textarea{min-height:105px;resize:vertical}
.profile-preferences-form .field-hint{color:#71879f;font-size:.62rem;font-weight:500;line-height:1.45}
.profile-targeting-box,.ad-targeting-box{border:1px solid rgba(76,145,255,.2);border-radius:18px;background:linear-gradient(180deg,rgba(21,49,82,.72),rgba(7,24,42,.82));padding:15px}
.profile-targeting-box>p{margin:7px 0 0;color:#8198b2;font-size:.7rem;line-height:1.5}
.profile-targeting-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.profile-targeting-head h3,.profile-targeting-head h4{margin:4px 0 0;font-size:1rem}.profile-targeting-head>span{border:1px solid var(--line);border-radius:999px;padding:6px 9px;color:#86a2c0;font-size:.59rem;white-space:nowrap}
.profile-targeting-block{margin-top:15px}.profile-targeting-label{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:9px}.profile-targeting-label strong{font-size:.76rem;color:#d9e7f7}.profile-targeting-label small{font-size:.6rem;color:#71879f;text-align:right}
.targeting-chip-list{display:flex;flex-wrap:wrap;gap:7px;min-height:34px}.targeting-chip{border:1px solid rgba(96,139,195,.28);border-radius:999px;background:#091b2e;color:#9cb3ca;padding:8px 10px;font:inherit;font-size:.67rem;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.targeting-chip:hover{border-color:rgba(93,154,255,.5);color:#dceaff}.targeting-chip.active{border-color:rgba(66,139,255,.62);background:rgba(53,127,255,.17);color:#dceaff;box-shadow:0 0 0 2px rgba(53,127,255,.06)}.targeting-chip.compact{padding:7px 9px;font-size:.63rem}.targeting-chip:disabled{opacity:.38;cursor:not-allowed}.targeting-empty{color:#6f879f;font-size:.65rem;padding:7px 0}.targeting-counter{display:block;text-align:right;margin-top:7px;color:#7690aa;font-size:.61rem}
.ad-targeting-types{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-top:14px}
.ad-targeting-box{margin-top:15px}.ad-targeting-box .profile-targeting-head{margin-bottom:10px}.ad-audience-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}.ad-audience-stats>div{border:1px solid var(--line);border-radius:13px;background:#07192b;padding:11px}.ad-audience-stats span{display:block;color:#7189a2;font-size:.58rem;margin-bottom:5px}.ad-audience-stats strong{font-size:.86rem;color:#eef6ff}.ad-audience-explanation{margin:10px 0 0;border-left:3px solid rgba(75,143,255,.55);padding:8px 10px;background:rgba(53,127,255,.06);border-radius:0 10px 10px 0;color:#8fa6bd;font-size:.66rem;line-height:1.48}.ad-reach-grid{align-items:end}.ad-reach-action{display:flex;align-items:flex-end;height:100%}.ad-reach-action .soft{width:100%;min-height:40px;justify-content:center}.ad-reach-action .soft:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.profile-targeting-head,.profile-targeting-label{align-items:flex-start;flex-direction:column}.profile-targeting-label small{text-align:left}.ad-audience-stats{grid-template-columns:1fr}.ad-reach-action{height:auto}.targeting-chip{font-size:.64rem}}

/* ==================================================
   V10.12 — Onboarding obrigatório de preferências
   ================================================== */
.profile-core-fields{display:grid;gap:14px}
.preferences-onboarding-notice{
  margin-bottom:14px;padding:18px;border:1px solid rgba(76,145,255,.26);border-radius:20px;
  background:linear-gradient(135deg,rgba(34,86,154,.22),rgba(8,25,43,.94));
  box-shadow:0 14px 40px rgba(0,0,0,.12)
}
.preferences-onboarding-notice h2{margin:5px 0 8px;font-size:1.2rem}
.preferences-onboarding-notice>p{margin:0;color:#92a8bf;font-size:.73rem;line-height:1.55;max-width:760px}
.onboarding-progress{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;color:#829ab3;font-size:.62rem}
.onboarding-progress span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(86,151,255,.38);background:#0a2138;color:#bcd7ff;font-weight:850}
.onboarding-progress span:nth-of-type(1){background:rgba(68,164,111,.16);border-color:rgba(91,192,137,.38);color:#a9e8c5}
.onboarding-progress i{height:1px;min-width:24px;flex:0 1 48px;background:rgba(115,151,190,.24)}
.required-mark{color:#7eb2ff}
.preferences-onboarding-mode .sidebar .nav,
.preferences-onboarding-mode .mobile-bottom-nav,
.preferences-onboarding-mode .mini-settings,
.preferences-onboarding-mode #editProfileBack{display:none!important}
.preferences-onboarding-mode .sidebar .brand{pointer-events:none}
.preferences-onboarding-mode .profile-core-fields{display:none}
.preferences-onboarding-mode .profile-preferences-form{max-width:920px;margin:0 auto;width:100%}
.preferences-onboarding-mode .profile-targeting-box{border-color:rgba(76,145,255,.34);box-shadow:0 18px 50px rgba(0,0,0,.12)}
.preferences-onboarding-mode #saveProfileButton{width:100%;justify-content:center;min-height:46px}
@media(max-width:760px){
  .preferences-onboarding-notice{padding:15px;border-radius:17px}
  .onboarding-progress{gap:6px}.onboarding-progress i{min-width:13px;flex-basis:22px}
}

/* ==================================================
   V10.14 — Preferências: selecionar todos + correção do onboarding
   ================================================== */
.profile-targeting-label>div{display:grid;gap:3px}
.targeting-select-all{
  appearance:none;border:1px solid rgba(76,145,255,.34);border-radius:999px;
  background:rgba(53,127,255,.10);color:#a9caff;padding:7px 10px;
  font:inherit;font-size:.62rem;font-weight:800;cursor:pointer;white-space:nowrap;
  transition:border-color .18s ease,background .18s ease,color .18s ease
}
.targeting-select-all:hover{border-color:rgba(76,145,255,.62);background:rgba(53,127,255,.18);color:#e1edff}
.targeting-select-all[aria-pressed="true"]{background:rgba(53,127,255,.2);border-color:rgba(76,145,255,.58);color:#e4efff}
.targeting-select-all:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){
  .targeting-select-all{align-self:flex-start}
}

/* ==================================================
   V10.17 — Fotos em procuras/ofertas + contato após interesse
   ================================================== */
.media-picker-preview{
  display:flex;
  align-items:center;
  gap:10px;
  margin:8px 0 14px;
  padding:9px 10px;
  border:1px solid #173654;
  border-radius:14px;
  background:#081827;
}
.media-picker-preview.hidden{display:none}
.media-picker-preview img{
  width:58px;
  height:58px;
  flex:0 0 58px;
  object-fit:cover;
  border-radius:11px;
  background:#06111d;
}
.media-picker-preview>div{min-width:0;flex:1}
.media-picker-preview strong,.media-picker-preview span{display:block}
.media-picker-preview strong{font-size:.72rem;color:#e5effb}
.media-picker-preview span{
  margin-top:4px;
  color:#7f96ad;
  font-size:.62rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.media-picker-preview>button{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  color:#a9bdd1;
  background:#0d2438;
  font-size:1.15rem;
  cursor:pointer;
}

.seeking-example-photo,.opportunity-example-photo{
  display:block;
  width:min(100%,360px);
  margin:10px 0 8px;
  border-radius:14px;
  overflow:hidden;
  background:#071521;
  border:1px solid #17334e;
}
.seeking-example-photo img,.opportunity-example-photo img{
  display:block;
  width:100%;
  max-height:260px;
  object-fit:cover;
}
.seeking-example-photo.compact{width:min(100%,300px)}
.seeking-example-photo.compact img{max-height:210px}

.offer-images.single{grid-template-columns:minmax(0,260px)}
.free-offer-label{
  color:#9be86d!important;
  font-weight:800;
}
.offer-contact-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.mutual-interest-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(151,235,101,.26);
  border-radius:999px;
  color:#a9ef7c;
  background:rgba(116,204,66,.08);
  font-size:.7rem;
  font-weight:800;
}
.whatsapp-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 15px;
  border-radius:12px;
  text-decoration:none;
  color:#eaffea;
  background:#173d2d;
  border:1px solid #286247;
  font-size:.73rem;
  font-weight:800;
}
.billing-simulation-note.free{
  color:#b9d7c8;
  border-color:#214936;
  background:#0c241c;
}

@media (max-width:700px){
  .offer-contact-actions .primary,
  .offer-contact-actions .whatsapp-button{
    flex:1 1 150px;
  }
  .seeking-example-photo,.opportunity-example-photo{width:100%}
}

/* ==================================================
   V10.18 — Contatos externos após interesse
   ================================================== */
.contact-locked-note{
  display:block;
  margin-top:10px;
  color:#7f96ad;
  font-size:.64rem;
  line-height:1.45;
}
.social-contact-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 15px;
  border-radius:12px;
  text-decoration:none;
  color:#dcecff;
  background:#102a46;
  border:1px solid #27507b;
  font-size:.73rem;
  font-weight:800;
}
.contact-release-panel{
  margin-top:12px;
  padding:14px;
  border:1px solid rgba(101,167,255,.22);
  border-radius:16px;
  background:#081a2c;
}
.contact-release-panel.hidden{display:none}
.contact-release-head strong{display:block;color:#e7f1fc;font-size:.78rem}
.contact-release-head p{margin:5px 0 0!important;color:#7f96ad!important;font-size:.65rem!important;line-height:1.45!important}
.contact-release-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:12px;
}
.contact-release-grid label{
  display:grid;
  gap:6px;
  color:#aebfd1;
  font-size:.66rem;
  font-weight:750;
}
.contact-release-grid input{
  width:100%;
  min-width:0;
  border:1px solid var(--line);
  border-radius:11px;
  background:#071827;
  color:#eef6ff;
  padding:10px 11px;
  outline:0;
  font:inherit;
  font-size:.7rem;
}
.contact-release-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:10px;
}
.contact-notification{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
}
.notification-contact-copy small{
  display:block;
  margin-top:5px;
  color:#7890aa;
  font-size:.61rem;
}
.notification-contact-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
}
.contact-unavailable{color:#8198b1;font-size:.65rem}
@media(max-width:760px){
  .contact-release-grid{grid-template-columns:1fr}
  .contact-release-actions{display:grid;grid-template-columns:1fr 1fr}
  .contact-notification{grid-template-columns:1fr}
  .notification-contact-actions{justify-content:flex-start}
  .notification-contact-actions .whatsapp-button,
  .notification-contact-actions .social-contact-button,
  .offer-contact-actions .social-contact-button{flex:1 1 150px}
}


/* V10.20 — DURAÇÃO E EXPIRAÇÃO DOS ANÚNCIOS */
.ad-duration-box {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid rgba(148, 163, 184, .16);
  border-radius: 18px;
  background: rgba(15, 23, 42, .44);
}

.ad-duration-options {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.ad-duration-option {
  min-height: 76px;
  padding: 12px 10px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 14px;
  background: rgba(7, 17, 31, .72);
  color: var(--text, #f8fafc);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  text-align: center;
  transition: border-color .18s ease, transform .18s ease, background .18s ease;
}

.ad-duration-option:hover {
  transform: translateY(-1px);
  border-color: rgba(59, 130, 246, .5);
}

.ad-duration-option strong {
  font-size: .94rem;
}

.ad-duration-option span {
  color: #9fb4ca;
  font-size: .88rem;
}

.ad-duration-option.active {
  border-color: #3b82f6;
  background: rgba(37, 99, 235, .14);
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, .16);
}

.ad-duration-option.active span {
  color: #dbeafe;
}

.ad-duration-summary {
  margin-top: 12px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(2, 132, 199, .08);
  border: 1px solid rgba(56, 189, 248, .16);
}

.ad-duration-summary strong {
  color: #dbeafe;
}

.ad-duration-summary span {
  font-weight: 800;
  color: #f8fafc;
}

.profile-ad-card.expired {
  opacity: .76;
}

/* V10.27: suspensão congela o prazo e oculta o anúncio do público. */
.profile-ad-card.suspended {
  border-color: rgba(245, 158, 11, .32);
}
.profile-ad-status.suspended {
  color: #fde68a;
  background: rgba(245, 158, 11, .13);
  border: 1px solid rgba(245, 158, 11, .32);
}
.profile-ad-toggle:disabled { opacity: .55; cursor: wait; }

.profile-ad-status-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 8px 0 2px;
  flex-wrap: wrap;
}

.profile-ad-status {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .02em;
}

.profile-ad-status.active {
  color: #bbf7d0;
  background: rgba(34, 197, 94, .12);
  border: 1px solid rgba(34, 197, 94, .22);
}

.profile-ad-status.expired {
  color: #cbd5e1;
  background: rgba(100, 116, 139, .14);
  border: 1px solid rgba(148, 163, 184, .2);
}

.profile-ad-status-row small {
  color: #8fa3b8;
}

@media (max-width: 760px) {
  .ad-duration-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ad-duration-option:last-child {
    grid-column: 1 / -1;
  }
}

/* V10.21 — Texto explicativo legível na divulgação de anúncios */
/* Alterações restritas ao formulário de anúncios no perfil. */
.profile-ad-form-head p,
.profile-ad-form .ad-audience-explanation {
  font-size: .84rem;
  line-height: 1.55;
  color: #afc1d5;
}

.profile-ad-form .field-hint,
.profile-ad-form .profile-ad-submit-row > small {
  font-size: .83rem;
  line-height: 1.55;
  color: #afc1d5;
}

.profile-ad-form .profile-targeting-label small,
.profile-ad-form .profile-targeting-head > span,
.profile-ad-form .optional {
  font-size: .78rem;
  line-height: 1.4;
  color: #a8bdd2;
}

.profile-ad-form .profile-targeting-head > span {
  white-space: normal;
}


/* V10.22 — Busca por outra cidade nos filtros de anúncios */
.filter-field input[type="search"] {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  background: #0d1d31;
  color: #e4eefb;
  border-radius: 12px;
  padding: 11px 12px;
  font: inherit;
  outline: none;
}
.filter-field input[type="search"]::placeholder { color: #91a9c3; }
.filter-field input[type="search"]:focus,
.ad-custom-location select:focus { border-color: #609fff; box-shadow: 0 0 0 2px rgba(83, 148, 249, .19); }
.ad-custom-location {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(130px, 1fr);
  gap: 12px;
  margin-top: 4px;
  padding: 13px;
  border: 1px solid rgba(101, 167, 255, .17);
  border-radius: 13px;
  background: rgba(6, 21, 39, .68);
}
.ad-custom-location-hint {
  grid-column: 1 / -1;
  margin: 0;
  font-size: .83rem;
  line-height: 1.5;
  color: #b1c5dc;
}
@media (max-width: 560px) {
  .ad-custom-location { grid-template-columns: 1fr; padding: 12px; }
}

/* V10.23 — Bater Alerta (duas modalidades, catálogo central e validades fixas) */
.alerts-main {max-width:1120px;width:100%;margin:0 auto}
.alerts-topbar {align-items:center}
.alerts-topbar h1 {font-size:clamp(1.6rem,3vw,2.1rem)}
.alerts-topbar p {font-size:.9rem;line-height:1.6;max-width:650px;margin:8px 0 0;color:#a9bbd0}
.alerts-free-badge,.alerts-price {display:inline-flex;align-items:center;white-space:nowrap;border:1px solid rgba(66,210,156,.3);background:rgba(66,210,156,.1);color:#b2f4d3;border-radius:999px;padding:9px 13px;font-weight:800;font-size:.84rem}
.alerts-explainer {border:1px solid rgba(79,147,246,.23);background:linear-gradient(125deg,rgba(35,103,202,.16),rgba(11,31,54,.58));padding:16px 18px;border-radius:16px;color:#bcd0e6;line-height:1.6;font-size:.89rem}
.alerts-explainer b {color:#e5f3ff}
.alerts-tabs {display:flex;gap:10px;margin:20px 0 18px;flex-wrap:wrap}
.alerts-tabs button {padding:12px 16px;border-radius:13px;border:1px solid rgba(149,171,201,.22);background:#102238;color:#acc2db;font-weight:800;font-size:.88rem;cursor:pointer;transition:.2s}
.alerts-tabs button.active {border-color:#4c93fa;background:rgba(62,133,244,.2);color:#fff;box-shadow:inset 0 0 0 1px rgba(67,148,248,.15)}
.alerts-panel {padding-bottom:40px}
.alerts-form {padding:22px;display:grid;gap:16px}
.alerts-form-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.alerts-form-heading h2 {font-size:1.3rem;margin:7px 0 0;color:#f3f8ff}
.alerts-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.alerts-form label:not(.alerts-choices label) {display:grid;gap:8px;color:#b7cbe2;font-size:.9rem;font-weight:720}
.alerts-form input:not([type="radio"]):not([type="checkbox"]),.alerts-form select,.alerts-form textarea {width:100%;min-width:0;border:1px solid rgba(146,174,212,.23);border-radius:11px;background:#071827;color:#f1f6fc;padding:13px 14px;font:inherit;font-size:.93rem;line-height:1.4;outline:none}
.alerts-form input:focus-visible,.alerts-form select:focus-visible,.alerts-form textarea:focus-visible {border-color:#499cfa;box-shadow:0 0 0 2px rgba(73,156,250,.15)}
.alerts-form textarea {resize:vertical;min-height:112px}
.alerts-form input::placeholder,.alerts-form textarea::placeholder {color:#728aa5}
.alerts-form label.hidden,.alerts-panel.hidden {display:none!important}
.alerts-choices {display:flex;flex-wrap:wrap;gap:12px 15px;border:1px solid rgba(141,167,203,.19);border-radius:14px;background:#0a2138;padding:15px}
.alerts-choices legend {font-size:.91rem;font-weight:820;padding:0 7px;color:#e1ebf6}
.alerts-choices label {display:flex;align-items:center;gap:10px;font-size:.94rem;font-weight:730;padding:11px 13px;border:1px solid rgba(141,167,203,.21);border-radius:11px;background:#0b192c;color:#e6f1ff;cursor:pointer}
.alerts-choices label:has(input:checked) {border-color:#4b98f7;background:rgba(55,134,249,.15)}
.alerts-choices input {accent-color:#428fff;width:18px;height:18px}
.alerts-choices small {display:block;flex-basis:100%;font-size:.8rem;color:#8fa6c1}
.alerts-full-label {display:grid;gap:7px}
.alerts-info {margin:0;font-size:.88rem;line-height:1.55;color:#9bb0c9}
.alerts-submit {justify-self:start;padding:12px 21px;font-size:.94rem;cursor:pointer}
.alerts-submit:disabled {opacity:.5;cursor:wait}
.alerts-list-header {margin:22px 0 13px}
.alerts-list-header h2 {font-size:1.15rem;color:#f3f8ff;margin:0 0 7px}
.alerts-list-header p {margin:0;color:#8ca4be;font-size:.87rem}
.alerts-cards {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.alerts-card {padding:18px;border-radius:16px;background:linear-gradient(145deg,#0c2137,#09182a);border:1px solid rgba(141,167,203,.17);overflow-wrap:anywhere;scroll-margin-top:20px}
.alerts-card.expired {opacity:.68}
.alerts-card.highlighted {border-color:#69a5ff;box-shadow:0 0 0 2px rgba(105,165,255,.25)}
.alerts-card-head {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.alerts-tag {color:#89bbfa;font-weight:850;letter-spacing:.07em;font-size:.73rem}
.alerts-state {display:inline-flex;border-radius:100px;padding:5px 9px;font-weight:750;font-size:.78rem;white-space:nowrap}
.alerts-state.current {background:rgba(43,190,133,.13);color:#8aebbb}
.alerts-state.expired {background:rgba(142,160,184,.13);color:#bacbe0}
.alerts-card h3 {margin:14px 0 6px;color:#f1f6ff;font-size:1.05rem}
.alerts-card p {white-space:pre-line;color:#b0c2d6;font-size:.9rem;line-height:1.52;margin:7px 0 14px}
.alerts-card-meta {display:flex;gap:7px 12px;flex-wrap:wrap;margin:12px 0;color:#92b8e9;font-size:.83rem}
.alerts-card small {color:#859eb8;line-height:1.5;font-size:.78rem}
.alerts-external {display:inline-block;text-decoration:none;margin:14px 0 0}
.market-alert-card .market-hub-icon {color:#a0c5ff}
.mobile-bottom-nav.has-alerts {grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:760px) {
  .alerts-main {padding-left:14px;padding-right:14px}
  .alerts-free-badge {font-size:.78rem;padding:6px 10px}
  .alerts-fields,.alerts-cards {grid-template-columns:1fr}
  .alerts-tabs button {flex:1 1 auto;font-size:.84rem;padding:10px 12px}
  .alerts-form {padding:16px}
  .alerts-submit {width:100%;text-align:center;justify-content:center}
}
/* Três ações na Home em telas grandes; cartões legíveis no celular. */
@media(min-width:1101px){.market-hub-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.market-hub-actions{grid-template-columns:1fr}}

/* V10.24 — escolha de pessoas para oportunidades e Bater Alerta */
.bulk-people-panel {
  margin: 15px 0 17px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 17px;
  border: 1px solid rgba(74, 144, 226, .25);
  background: rgba(12, 35, 59, .52);
  border-radius: 16px;
}
.bulk-people-panel strong {color:#e5f0ff;font-size:1.02rem;display:block;margin-bottom:4px}
.bulk-people-panel small {display:block;color:#a8bbd0;font-size:.88rem;line-height:1.5}
.bulk-people-actions {display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.bulk-people-actions label {color:#d5e5fa;font-size:.91rem;font-weight:650}
.bulk-people-actions input {width:98px;max-width:98px;min-height:43px;border:1px solid #486583;color:#f5faff;background:#0b1d32;border-radius:10px;padding:9px 10px;font-size:1rem}
.bulk-people-actions button {font-size:.9rem;padding:10px 13px;white-space:normal}
.alerts-audience-panel {padding:17px;border-radius:16px;border:1px solid rgba(75,153,255,.27);background:rgba(13,36,60,.68);display:grid;gap:12px;margin:13px 0 17px}
.alerts-audience-panel h3 {color:#e9f2ff;margin:0;font-size:1.07rem}
.alerts-audience-number {font-size:1.08rem;color:#a8d5ff;font-weight:800;line-height:1.5;min-height:1.4rem}
.alerts-audience-panel .alerts-info {font-size:.91rem;line-height:1.5;color:#a9bdd3;margin:0}
.alerts-audience-choice {display:flex!important;gap:9px;align-items:flex-start;color:#e6effa;margin-bottom:9px;font-size:.96rem}
.alerts-audience-choice input {width:18px;height:18px;margin-top:2px;flex:0 0 auto;accent-color:#60a5fa}
#alertAudienceQuantityArea {margin:9px 0 0 27px;max-width:210px}
#alertAudienceQuantityArea label {display:block;font-size:.91rem;margin-bottom:6px;color:#b5cee7}
#alertAudienceQuantity {width:100%;font-size:1rem;min-height:43px;color:#f1f7ff;background:#0a1a2b;border:1px solid #4b6b8b;border-radius:10px;padding:9px 10px}
#refreshAlertAudience {justify-self:start;font-size:.9rem;padding:10px 13px}
.alerts-dispatch-count {display:block;color:#8aebbb!important;margin-top:7px}
@media (max-width:700px) {
  .bulk-people-actions {display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:8px}
  .bulk-people-actions button {grid-column:1 / -1;min-height:44px}
  .bulk-people-actions label {grid-column:1}
  .bulk-people-actions input {grid-column:2;grid-row:2;max-width:none;width:100%}
}

/* V10.25 — prévias de upload e galeria de fotos */
.upload-preview-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:11px;margin:12px 0}
.upload-preview-item {border:1px solid rgba(145,178,215,.25);background:rgba(11,29,48,.72);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:5px;min-width:0}
.upload-preview-item img{width:100%;height:92px;object-fit:cover;border-radius:8px;background:#0b1425}
.upload-preview-item span{font-size:.8rem;overflow-wrap:anywhere;color:#dceafd}
.upload-preview-item small{font-size:.75rem;color:#9db8d2}
.upload-preview-item button{border-radius:8px;padding:6px 8px;font-size:.78rem;background:#203854;color:#eaf2ff}
.ad-upload-box{display:grid;gap:7px;border:1px solid rgba(145,178,215,.18);border-radius:16px;padding:14px;margin-top:16px}
.ad-image-total{font-weight:700;font-size:.92rem;color:#c3e3ff}
.ad-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:100%;padding:5px}
.ad-gallery.single{display:block}
.ad-gallery a{display:block;min-width:0;overflow:hidden;border-radius:9px;background:#091b2d}
.ad-gallery img{display:block;width:100%;height:90px;object-fit:cover}
.ad-gallery.single img{height:170px}
.profile-ad-media .ad-gallery{padding:6px}
.profile-ad-media .ad-gallery img{height:72px}
.profile-ad-media .ad-gallery.single img{height:170px}
@media(max-width:700px){.ad-gallery img{height:75px}.upload-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.ad-card-media .ad-gallery,.profile-ad-media .ad-gallery{width:100%;align-self:stretch}
.ad-card-media .ad-gallery img{height:90px;min-height:0}
.ad-card-media .ad-gallery.single img{height:170px;min-height:0}
.profile-ad-media .ad-gallery img{height:72px;min-height:0}
.profile-ad-media .ad-gallery.single img{height:170px;min-height:0}
