/* ---------- base ---------- */
/* esconde o shell do portal antigo nesta página */
.hb-portal-lab #hb-topnav { display:none !important; }
body { background:#e6eaf2 !important; }
.khb, .khb * { box-sizing: border-box; margin: 0; padding: 0; }
.khb * { font-family:'Ubuntu','Segoe UI',sans-serif !important; }
/* restaura a fonte de ícones Tabler dentro do escopo .khb */
.khb .ti, .khb [class^="ti-"], .khb [class*=" ti-"] { font-family:'tabler-icons' !important; }
.khb { font-family: 'Ubuntu', 'Segoe UI', sans-serif; background:#e6eaf2; color:#2d3b41; width:100%; overflow-x:hidden; }
.khb img { display:block; }
.khb a { text-decoration:none; color:inherit; }
.khb button { font-family:inherit; cursor:pointer; }
.khb .px { image-rendering: pixelated; }

/* ---------- botões base ---------- */
.khb .kbtn { display:inline-flex; align-items:center; justify-content:center; gap:6px;
  font-weight:700; font-size:12px; color:#fff; padding:6px 12px; border-radius:8px; border:0;
  border-bottom:3px solid rgba(0,0,0,.28); white-space:nowrap; }
.khb .kbtn:active { transform: translateY(1px); border-bottom-width:2px; }
.khb .kbtn.green  { background:#7bc143; }
.khb .kbtn.red    { background:#f4494e; }
.khb .kbtn.orange { background:#f7941d; }
.khb .kbtn.blue   { background:#29a8e0; }
.khb .kbtn.purple { background:#8e5bd4; }
.khb .kbtn.pink   { background:#f45f93; }
.khb .kbtn.gray   { background:#9aa7ae; }
.khb .kbtn.light  { background:#eef2f4; color:#8a9aa3; border-bottom-color:#d4dce0; }
.khb .kbtn.darknav{ background:#2b434d; color:#c3d2d9; border-bottom-color:#1d3038; }
.khb .kicon { width:30px; height:30px; padding:0; border-radius:8px; font-size:16px; }
.khb .kround { width:32px; height:32px; padding:0; border-radius:50%; font-size:16px; }
.khb .kbtn .ti { line-height:1; }

/* ---------- cards ---------- */
.khb .kcard { background:#fff; border-radius:14px; box-shadow:0 8px 0 #ccd2dd;
  margin-bottom:26px; position:relative; }
.khb .kcard-hd { display:flex; align-items:center; gap:8px; padding:14px 16px; border-bottom:2px solid #eef2f4; position:relative; min-height:64px; }
.khb .kcard-hd h2 { font-size:15px; font-weight:700; margin-right:auto; }
.khb .kaccent { position:absolute; left:0; top:50%; transform:translateY(-50%); width:4px; height:20px; border-radius:0 4px 4px 0; }
.khb .kaccent.green{ background:#7bc143; } .khb .kaccent.pink{ background:#f45f93; }
.khb .kaccent.orange{ background:#f7941d; } .khb .kaccent.teal{ background:#3d7688; }
.khb .ksearch { display:flex; align-items:center; background:#eef2f4; border-radius:18px; padding:6px 14px;
  font-size:12px; color:#a7b3ba; min-width:150px; font-weight:500; }

/* ============ HEADER (céu) ============ */
/* Faixa azul alta (respiro tipo Kihabbo): logo no topo, azul continua
   atrás da navbar e do topo do 1º card (navbar sobe via margin negativa). */
.khb-sky { background:linear-gradient(180deg,#45bbf8 0%,#38b0f2 100%); position:relative;
  padding:180px 0 275px; text-align:center; overflow:hidden; }
.khb-hero-logo { position:relative; z-index:2; text-align:center; }
.khb-hero-logo img { height:130px; width:auto; max-width:92vw; object-fit:contain; image-rendering:pixelated;
  filter:drop-shadow(0 6px 10px rgba(0,40,80,.35)); margin:0 auto; }
.khb-topbar { max-width:1280px; margin:0 auto; padding:0 12px; display:flex; align-items:flex-start; justify-content:space-between; }

/* logo cubo iso */
.khb-logo { display:flex; align-items:center; gap:10px; }
.khb-cube { width:44px; height:48px; position:relative; filter:drop-shadow(0 3px 0 rgba(0,0,0,.15)); }
.khb-cube i { position:absolute; }
.khb-cube .t { left:0; top:0; width:44px; height:24px; background:linear-gradient(90deg,#ff4d4d,#ffd24d,#5ad45a,#4db8ff,#b44dff); clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.khb-cube .l { left:0; top:12px; width:22px; height:30px; background:#e33d3d; clip-path:polygon(0 0,100% 40%,100% 100%,0 62%); }
.khb-cube .r { left:22px; top:12px; width:22px; height:30px; background:#2e8fd8; clip-path:polygon(0 40%,100% 0,100% 62%,0 100%); }
.khb-logo b { font-size:34px; font-weight:700; color:#fff; letter-spacing:.5px;
  text-shadow:0 3px 0 rgba(20,80,120,.35), 0 0 2px rgba(20,80,120,.4); }

.khb-topright { display:flex; align-items:center; gap:10px; }
.khb-key { font-size:22px; filter:drop-shadow(0 2px 0 rgba(0,0,0,.2)); }
.khb-fichas { display:flex; align-items:center; gap:8px; background:#ffd23f; border-radius:18px; padding:5px 14px 5px 6px;
  font-weight:700; font-size:13px; color:#7a5200; border-bottom:3px solid #d9a616; }
.khb-coin { width:22px; height:22px; border-radius:50%; background:radial-gradient(circle at 35% 35%,#ffcc4d,#f7941d);
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:11px; font-weight:700; border:2px solid #d9a616; }
.khb-burger { width:38px; height:38px; border-radius:50%; background:#ffd23f; border:0; border-bottom:3px solid #d9a616;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; }
.khb-burger i { width:16px; height:2.5px; background:#7a5200; border-radius:2px; }

/* nuvens */
.khb-cloud { position:absolute; width:46px; height:14px; background:#fff; border-radius:10px; opacity:.95; }
.khb-cloud::before { content:""; position:absolute; left:10px; top:-8px; width:20px; height:14px; background:#fff; border-radius:10px; }

/* praça de tiles */
.khb-plaza { max-width:1280px; margin:0 auto; padding:6px 12px 40px; position:relative; height:250px; }
.khb-tile { position:absolute; width:92px; height:50px; }
.khb-tile .top { position:absolute; inset:0; background:#fdfdfd; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.khb-tile .side { position:absolute; inset:0; top:7px; background:#cdd7db; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); z-index:-1; }
.khb-tile .ic { position:absolute; left:50%; top:50%; transform:translate(-50%,-72%); font-size:22px; filter:drop-shadow(0 2px 0 rgba(0,0,0,.12)); }
.khb-rtile .lbl { position:absolute; left:50%; top:105%; transform:translateX(-50%); background:#fff; color:#5a6b73;
  font-size:11px; font-weight:700; padding:3px 12px; border-radius:8px; box-shadow:0 2px 0 rgba(20,80,120,.18); }

/* tile central + avatar + menus */
.khb-center { position:absolute; left:50%; top:88px; transform:translateX(-50%); width:190px; height:104px; }
.khb-center .top { position:absolute; inset:0; background:#fdfdfd; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.khb-center .side { position:absolute; inset:0; top:12px; background:#c3cfd4; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); z-index:-1; }
.khb-center .avatar { position:absolute; left:50%; bottom:28px; transform:translateX(-50%); width:96px; }
.khb-welcome { position:absolute; left:50%; bottom:176px; transform:translateX(-50%); background:#fff; border-radius:9px;
  padding:7px 14px; font-size:12px; font-weight:700; color:#4a5b63; white-space:nowrap; box-shadow:0 3px 0 rgba(20,80,120,.15); z-index:3; }
.khb-welcome::after { content:""; position:absolute; left:50%; bottom:-6px; transform:translateX(-50%);
  border:6px solid transparent; border-top-color:#fff; border-bottom:0; }
.khb-menu { position:absolute; top:-34px; display:flex; flex-direction:column; gap:5px; z-index:2; }
.khb-menu.l { right:100%; margin-right:-4px; align-items:flex-end; }
.khb-menu.r { left:100%; margin-left:-4px; align-items:flex-start; }
.khb-menu .kbtn { padding:6px 14px; border-radius:7px; font-size:12px; }

/* ============ NAVBAR ============ */
.khb-userwrap { max-width:1280px; margin:-165px auto 0; padding:0 12px; position:relative; z-index:20; }
.khb-nav { background:#fff; border-radius:16px; box-shadow:0 8px 0 #ccd2dd;
  display:flex; align-items:center; gap:16px; padding:11px 18px; }
.khb-nav-search { display:flex; align-items:center; gap:8px; background:#eef2f4; border-radius:22px;
  padding:9px 18px; color:#a7b3ba; font-size:13px; font-weight:500; min-width:190px; flex-shrink:0; }
.khb-nav-search i { font-size:16px; }
.khb-nav-search input { flex:1; min-width:0; border:0; outline:0; background:none; font-family:inherit;
  font-size:13px; font-weight:500; color:#5a6b73; }
.khb-nav-search input::placeholder { color:#a7b3ba; }
.khb-nav-search input::-webkit-search-cancel-button { -webkit-appearance:none; }
.khb-nav-links { display:flex; align-items:center; gap:22px; margin:0 auto; }
.khb-nav-item { display:flex; align-items:center; gap:6px; font-size:14px; font-weight:700; color:#2d3b41; white-space:nowrap; cursor:pointer; }
.khb-nav-item i { font-size:17px; color:#8a9aa3; transition:color .15s; }
.khb-nav-item.on i, .khb-nav-item:hover i { color:#f7941d; }
.khb-nav-menu { position:relative; }
.khb-nav-drop { position:absolute; top:calc(100% + 14px); right:0; min-width:210px; background:#fff;
  border-radius:12px; box-shadow:0 8px 24px rgba(45,59,65,.18); padding:8px; opacity:0; visibility:hidden;
  transform:translateY(-6px); transition:.16s; z-index:30; }
.khb-nav-menu:hover .khb-nav-drop,
.khb-nav-menu.open .khb-nav-drop { opacity:1; visibility:visible; transform:translateY(0); }
.khb-nav-drop::before { content:""; position:absolute; top:-14px; left:0; right:0; height:14px; }
.khb-nav-drop a { display:block; padding:8px 12px; border-radius:8px; font-size:13px; font-weight:500; color:#2d3b41; }
.khb-nav-drop a:hover { background:#eef2f4; }
.khb-nav-drop .sep { padding:8px 12px 4px; }
.khb-nav-drop .sep span { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:#a7b3ba; }
.khb-nav-right { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.khb-nav-theme { width:34px; height:34px; border-radius:50%; background:none; border:0; color:#5a6b73;
  font-size:19px; display:flex; align-items:center; justify-content:center; }
.khb-nav-theme:hover { background:#eef2f4; }
.khb-nav-login { background:#f7941d; color:#fff; font-weight:700; font-size:13px; padding:9px 24px;
  border-radius:22px; border-bottom:3px solid #d9770a; }
.khb-nav-login:active { transform:translateY(1px); border-bottom-width:2px; }
.khb-nav-burger { display:none; width:38px; height:38px; flex:0 0 auto; border:0; border-radius:10px; background:#eef2f4;
  color:#5a6b73; font-size:20px; align-items:center; justify-content:center; cursor:pointer; }
.khb-nav-burger:hover { background:#e2e7ec; }

/* ============ LAYOUT PRINCIPAL ============ */
.khb-container { max-width:1280px; margin:18px auto 0; padding:0 12px; }
.khb-cols { display:flex; gap:18px; align-items:flex-start; }
.khb-main { flex:1; min-width:0; }
.khb-side { width:300px; flex-shrink:0; }

/* ============ HERO ============ */
.khb-hero { display:flex; gap:16px; padding:16px; }
.khb-slider { flex:1.35; min-width:0; border-radius:12px; overflow:hidden; position:relative; height:250px;
  background:linear-gradient(135deg,#1e8fd2,#274a77); }
/* destaque estilo Kihabbo: caixa preta central com título + resumo (sem data) */
.khb .khb-spot { position:absolute; inset:0; }
.khb .khb-spot-slide { position:absolute; inset:0; background-size:cover; background-repeat:no-repeat;
  display:flex; align-items:flex-end; justify-content:center; text-decoration:none; opacity:0; padding:0 20px 30px; }
.khb .khb-spot-slide.active { opacity:1; }
.khb .khb-spot { cursor:grab; user-select:none; -webkit-user-select:none; }
.khb .khb-spot:active { cursor:grabbing; }
.khb .khb-spot-slide img, .khb .khb-spot-slide { -webkit-user-drag:none; }
.khb .khb-spot-box { position:relative; z-index:2; background:rgba(16,22,30,.78); border-radius:12px;
  padding:12px 30px; text-align:center; max-width:80%; }
.khb .khb-spot-title { color:#fff; font-size:20px; font-weight:700; line-height:1.2; text-shadow:0 1px 4px rgba(0,0,0,.4); }
.khb .khb-spot-sub { color:#dfe7ee; font-size:12.5px; margin-top:4px; line-height:1.35; }
.khb .khb-spot-dots { position:absolute; left:50%; transform:translateX(-50%); bottom:11px; z-index:6; display:flex; gap:7px; }
.khb .khb-spot-dots button { width:9px; height:9px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.55); cursor:pointer; }
.khb .khb-spot-dots button.active { background:#fff; }
.khb-hero-col { flex:1; min-width:0; display:flex; flex-direction:column; gap:8px; }
.khb-hero-col h3 { font-size:14px; font-weight:700; display:flex; align-items:center; justify-content:space-between; margin-bottom:4px; }
.khb-alert-item { display:flex; align-items:center; gap:10px; padding:13px 12px; background:#f6f8f9; border-radius:10px; flex:1; }
.khb-alert-item .aic { width:38px; height:38px; border-radius:8px; background:#fff; display:flex; align-items:center; justify-content:center;
  font-size:19px; box-shadow:inset 0 0 0 2px #eef2f4; flex-shrink:0; }
.khb-alert-item p { font-size:11.5px; font-weight:500; color:#5a6b73; line-height:1.35; }
.khb-alert-item p b { color:#2d3b41; }
.khb-star-item { display:flex; align-items:center; gap:10px; padding:11px 12px; background:#f6f8f9; border-radius:10px; flex:1; }
.khb-star-item.rev { flex-direction:row-reverse; text-align:right; }
.khb-star-item img { width:38px; height:38px; }
.khb-star-item b { display:block; font-size:12px; }
.khb-star-item span { font-size:10.5px; color:#8a9aa3; font-weight:500; }

/* Fique atento = últimos comentários / Habbo Stars = hall da fama (avatar busto à esquerda) */
.khb-fa-list { display:flex; flex-direction:column; gap:8px; flex:1; }
.khb-fa-item, .khb-hof-item { display:flex; align-items:center; gap:10px; padding:9px 12px; background:#f6f8f9; border-radius:10px; flex:1; text-decoration:none; }
.khb-fa-item:hover, .khb-hof-item:hover { background:#eef2f4; }
.khb-fa-av, .khb-hof-av { width:40px; height:40px; flex:0 0 auto; border-radius:9px; overflow:hidden; background:#eef2f4 no-repeat;
  background-size:auto; background-position:-6px -10px; image-rendering:pixelated; }
.khb-fa-av.khb-fa-empty, .khb-hof-av.khb-fa-empty { display:grid; place-items:center; background-position:0 0; color:#adb3c0; font-size:18px; }
.khb-fa-tx { min-width:0; font-size:11.5px; line-height:1.35; color:#5a6b73; }
.khb-fa-body { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.khb-fa-tx b { color:#2d3b41; }
.khb-fa-tx small { display:block; color:#8a9aa3; font-size:10px; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-hof-tx { min-width:0; }
.khb-hof-tx b { display:block; font-size:12.5px; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-hof-tx small { display:block; font-size:10.5px; color:#f7941d; font-weight:700; margin-top:1px; }

/* ============ EVENTOS ============ */
.khb-events { display:flex; gap:12px; padding:14px; }
.khb-event { flex:1; min-width:0; border:2px solid #eef2f4; border-radius:12px; padding:8px; display:flex; flex-direction:column; gap:8px; }
.khb-thumb { border-radius:8px; height:86px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center; font-size:30px; }
.khb-thumb .tag { position:absolute; left:6px; top:6px; background:#f45f93; color:#fff; font-size:9.5px; font-weight:700;
  padding:3px 8px; border-radius:8px; border-bottom:2px solid rgba(0,0,0,.22); }
.khb-thumb.d1 { background:linear-gradient(135deg,#3d3357,#221c33); }
.khb-thumb.d2 { background:linear-gradient(135deg,#7a5a35,#3f2d18); }
.khb-thumb.d3 { background:linear-gradient(135deg,#274b63,#122736); }
.khb-thumb.d4 { background:linear-gradient(135deg,#454f57,#22282d); }
.khb-event h4 { font-size:12px; line-height:1.3; min-height:32px; }
.khb-event .status { width:100%; font-size:11px; padding:6px 8px; }
.khb-vote2 { display:flex; gap:6px; }
.khb-vote2 .kbtn { flex:1; font-size:11px; padding:6px 6px; }
.khb-react { display:flex; gap:6px; justify-content:center; padding:2px 0; }
.khb-react i { width:30px; height:30px; border-radius:8px; display:flex; align-items:center; justify-content:center;
  font-size:15px; font-style:normal; border-bottom:3px solid rgba(0,0,0,.22); }
.khb-react .r1{background:#29a8e0;} .khb-react .r2{background:#f7941d;} .khb-react .r3{background:#f45f93;} .khb-react .r4{background:#f4494e;}
.khb-result { display:flex; gap:4px; }
.khb-result i { font-style:normal; color:#fff; font-size:10.5px; font-weight:700; padding:6px 0; text-align:center;
  border-radius:7px; border-bottom:3px solid rgba(0,0,0,.22); }
.khb-result .win { background:#7bc143; width:72%; } .khb-result .lose { background:#f4494e; width:28%; }

/* eventos REAIS (via HB:EVENTS_VOTE) — estiliza o markup .hb-evc injetado */
.khb-events { flex-wrap:wrap; }
.khb-events > [class*="col-"] { flex:0 0 calc(25% - 9px); max-width:calc(25% - 9px); min-width:0; padding:0; }
.khb .hb-evc { display:flex; flex-direction:column; height:100%; border:1px solid #eef2f4; border-radius:12px; overflow:hidden; text-decoration:none; background:#fff; box-shadow:0 3px 0 #e7eaf1; margin-bottom:6px; }
.khb .hb-evc-img { position:relative; height:96px; background-size:cover; background-position:center; }
.khb .hb-evc-tag { position:absolute; left:8px; top:8px; background:#f45f93; color:#fff; font-size:9.5px; font-weight:700; padding:3px 8px; border-radius:8px; border-bottom:2px solid rgba(0,0,0,.22); }
.khb .hb-evc-body { display:flex; flex-direction:column; gap:8px; flex:1; padding:12px; }
.khb .hb-evc-title { font-size:12px; line-height:1.3; color:#2d3b41; font-weight:700; min-height:32px; }
.khb .hb-evc-status { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; font-size:11px; font-weight:700; padding:6px 8px; background:#eef2f4; color:#8a9aa3; border-radius:8px; border-bottom:3px solid #d4dce0; margin-top:auto; }
/* relógio pixel-art do Felipe no lugar do ícone Tabler */
.khb .hb-evc-status .ti { display:none; }
.khb .hb-evc-status::before { content:""; flex:0 0 auto; width:18px; height:15px; image-rendering:pixelated;
  background:url('/media/bd164a89-3c96-47fa-a087-8120d4c29488.png') center/contain no-repeat; }
.khb .hb-evc-vote { display:flex; gap:6px; }
.khb .hb-evc-vote span { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:5px; font-size:11px; font-weight:700; color:#fff; padding:6px; border-radius:8px; border-bottom:3px solid rgba(0,0,0,.28); }
.khb .hb-evc-vote .up { background:#7bc143; } .khb .hb-evc-vote .down { background:#f4494e; }

/* mudança de valor (via HB:VALUES_MINI) — cards com selo de tendência */
.khb-vmini-wrap { padding:16px; }
.khb .hb-vmini { display:flex; gap:12px; }
.khb .hb-vmini-tile { flex:1; min-width:0; border:1px solid #eef2f4; border-radius:12px; padding:14px 10px 10px; background:#fff; text-decoration:none; box-shadow:0 3px 0 #e7eaf1; margin-bottom:4px; display:flex; flex-direction:column; align-items:center; gap:12px; transition:.15s; }
.khb .hb-vmini-tile:hover { border-color:#c3cfd4; transform:translateY(-2px); }
.khb .hb-vmini-thumb { height:52px; display:flex; align-items:center; justify-content:center; }
.khb .hb-vmini-thumb img { max-width:52px; max-height:52px; image-rendering:crisp-edges; }
.khb .hb-vmini-foot { display:flex; align-items:center; justify-content:space-between; width:100%; gap:6px; }
.khb .hb-vmini-val { display:inline-flex; align-items:center; gap:5px; font-weight:700; font-size:13px; color:#5a6b73; }
.khb .hb-vmini-coin { width:16px; height:16px; image-rendering:pixelated; }
.khb .hb-vmini-trend { width:28px; height:28px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:15px; flex:0 0 auto; border-bottom:2px solid rgba(0,0,0,.2); }
.khb .hb-vmini-trend.hb-t-up { background:#7bc143; }
.khb .hb-vmini-trend.hb-t-down { background:#f4494e; }
.khb .hb-vmini-trend.hb-t-eq { background:#9aa7ae; }

/* ============ VOZ DA COMUNIDADE (notícias reais injetadas pelo servidor) ============ */
.khb-articles { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:16px; }
/* reset dos wrappers bootstrap (col-12 col-md-6 col-xl-4) que o render injeta */
.khb-articles > [class*="col-"] { width:auto; max-width:none; flex:none; padding:0; }
.khb .khb-nc { display:flex; flex-direction:column; height:100%; border:1px solid #eef2f4; border-radius:12px;
  overflow:hidden; background:#fff; text-decoration:none; transition:.16s; box-shadow:0 3px 0 #e7eaf1; margin-bottom:6px; }
.khb .khb-nc:hover { transform:translateY(-2px); }
/* banner (coverPos aplicado inline pelo editor) + título ABAIXO no branco */
.khb .khb-nc-img { position:relative; height:120px; background-size:cover; background-repeat:no-repeat; }
/* tag da notícia no MESMO padrão dos eventos (pill rosa) */
.khb .khb-nc-tag { position:absolute; top:8px; left:8px; z-index:2; background:#f45f93 !important; color:#fff !important;
  font-size:9.5px; font-weight:700; padding:3px 8px; border-radius:8px; border-bottom:2px solid rgba(0,0,0,.22);
  text-transform:none; letter-spacing:0; }
.khb .khb-nc-tag::before { content:"#"; }
.khb .khb-nc-title { padding:12px 14px 0; color:#2d3b41; font-weight:700; font-size:14px; line-height:1.3;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.khb .khb-nc-foot { display:flex; align-items:center; justify-content:flex-start; padding:10px 14px 12px; margin-top:auto; gap:0; }
.khb .khb-nc-author { display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:700; color:#3a4152; min-width:0; }
/* avatar BUSTO estilo Habbo: corpo size=s cortado no box (cabeça + ombros) */
.khb .khb-nc-av { width:20px; height:27px; flex:0 0 auto; background-repeat:no-repeat;
  background-position:-5px -12px; image-rendering:pixelated; }
.khb .khb-nc-av-empty { width:22px; height:22px; border-radius:50%; background:#eef2f4; display:grid; place-items:center; color:#adb3c0; background-position:0 0; }
.khb .khb-nc-date { font-size:11.5px; color:#9aa5b1; font-weight:500; display:inline-flex; align-items:center; white-space:nowrap; }
.khb .khb-nc-date::before { content:"·"; margin:0 5px 0 6px; color:#c3cbd6; font-weight:700; }
.khb .khb-nc-date .ti { display:none; }

/* ============ CARDS COM ABA LATERAL ============ */
.khb-tabcard { padding-left:44px; }
.khb-sidetab { position:absolute; left:0; top:0; bottom:0; width:44px; border-radius:14px 0 0 14px;
  display:flex; align-items:center; justify-content:center; font-size:22px; color:#fff; }
.khb-sidetab.pink { background:#f45f93; box-shadow:0 8px 0 #e15589; } .khb-sidetab.teal { background:#3d7688; box-shadow:0 8px 0 #336474; }

/* novos emblemas (reais, injetados pelo servidor) */
.khb-badges { display:flex; gap:12px; padding:16px; }
.khb .hb-nemb { position:relative; flex:1; min-width:0; display:flex; flex-direction:column; align-items:center; gap:10px;
  padding:14px 8px 10px; border:1px solid #eef2f4; border-radius:12px; background:#fff; text-decoration:none; transition:.15s;
  box-shadow:0 3px 0 #e7eaf1; margin-bottom:6px; }
.khb .hb-nemb:hover { border-color:#f45f93; transform:translateY(-2px); }
.khb .hb-nemb-new { position:absolute; left:6px; top:6px; background:#f4494e; color:#fff; font-size:8.5px; font-weight:700; padding:2px 6px; border-radius:6px; }
.khb .hb-nemb-img { width:48px; height:48px; display:grid; place-items:center; }
.khb .hb-nemb-img img { max-width:48px; max-height:48px; width:auto; image-rendering:pixelated; }
.khb .hb-nemb-code { display:block; width:100%; text-align:center; background:#eef2f4; border-radius:7px; font-size:10.5px; font-weight:700; color:#8a9aa3; padding:5px 0; }

/* ============ IMAGER ============ */
.khb-imager { display:flex; gap:14px; padding:14px; }
.khb-im-left { flex:1.5; min-width:0; }
.khb-im-tabs { display:flex; gap:8px; margin-bottom:10px; }
.khb-im-tabs .kbtn { font-size:11px; padding:8px 10px; flex:1; line-height:1.2; }
.khb-im-tabs .kbtn.on { background:#3d5a66; }
.khb-im-tabs .kbtn.off { background:#fff; color:#5a6b73; border:2px solid #eef2f4; border-bottom:3px solid #dfe6e9; }
.khb-genders { display:flex; gap:8px; margin-bottom:10px; }
.khb-genders button { width:36px; height:32px; border-radius:8px; background:#fff; border:2px solid #eef2f4;
  border-bottom:3px solid #dfe6e9; color:#29a8e0; font-size:15px; font-weight:700; }
.khb-genders button.on { border-color:#29a8e0; }
.khb-faces { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; margin-bottom:12px; }
.khb-faces i { height:44px; border-radius:8px; background:#f6f8f9; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.khb-faces img { width:38px; height:38px; object-fit:cover; object-position:top; }
.khb-swatches { display:grid; grid-template-columns:repeat(13,1fr); gap:5px; }
.khb-swatches i { height:20px; border-radius:5px; border:1px solid #dfe6e9; }
.khb-im-right { flex:1; min-width:0; display:flex; flex-direction:column; align-items:center; }
.khb-preview { position:relative; padding:10px 30px 0; }
.khb-preview .shadow { position:absolute; left:50%; bottom:6px; transform:translateX(-50%); width:120px; height:26px;
  background:radial-gradient(ellipse, rgba(45,59,65,.16) 0%, transparent 70%); }
.khb-preview img { width:128px; position:relative; }
.khb-rotate { display:flex; justify-content:center; gap:90px; margin:-40px 0 24px; position:relative; }
.khb-rotate button { background:none; border:0; color:#4fc3f7; font-size:26px; font-weight:700;
  text-shadow:0 2px 0 rgba(0,0,0,.12); }
.khb-opts { width:100%; font-size:12px; font-weight:700; color:#5a6b73; }
.khb-opts .row { display:flex; align-items:center; gap:14px; margin-bottom:10px; }
.khb-opts .row > span { width:64px; }
.khb-check { display:flex; align-items:center; gap:6px; font-weight:500; }
.khb-check i { width:16px; height:16px; border-radius:4px; border:2px solid #c3cfd4; display:inline-block; }
.khb-check.on i { background:#4fc3f7; border-color:#4fc3f7; position:relative; }
.khb-check.on i::after { content:"✓"; color:#fff; font-size:11px; position:absolute; left:2px; top:-2px; }
.khb-im-bottom { display:flex; gap:8px; padding:12px 14px; border-top:2px solid #eef2f4; align-items:center; }
.khb-im-bottom .cloth { width:40px; height:36px; border-radius:8px; background:#f6f8f9; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.khb-im-bottom .kbtn { flex:1; background:#fff; color:#5a6b73; border:2px solid #eef2f4; border-bottom:3px solid #dfe6e9; font-size:10.5px; line-height:1.25; padding:6px; }

/* ============ SIDEBAR ESCURA ============ */
.khb-dark { background:#35505a; border-radius:14px; margin-bottom:26px; padding:0 10px 10px; position:relative; box-shadow:0 8px 0 #2b4650; }
.khb-dark .kcard-hd { border-bottom-color:#2b434d; padding:12px 14px; gap:6px; }
.khb-dark .kcard-hd h2 { color:#fff; font-size:14px; white-space:nowrap; }
.khb-dark .kicon { width:30px; height:30px; font-size:16px; }
.khb-ritem { background:#2b434d; border-radius:12px; padding:12px; display:flex; gap:12px; margin-top:12px; position:relative; align-items:center; }
.khb-ritem .fimg { width:104px; display:flex; align-items:center; justify-content:center; flex-shrink:0; align-self:stretch; }
.khb-ritem .fimg img { max-width:104px; max-height:118px; }
.khb-ritem .new { position:absolute; left:8px; top:8px; background:#f4494e; color:#fff; font-size:9.5px; font-weight:700; padding:3px 8px; border-radius:7px; z-index:2; }
.khb-ritem .info { flex:1; min-width:0; }
.khb-ritem .info b { display:block; color:#fff; font-size:15px; margin-bottom:8px; }
.khb-rdate { display:block; width:100%; text-align:center; background:#24363f; color:#9fb3bc; font-size:11.5px; font-weight:700; padding:6px 8px; border-radius:8px; margin-bottom:9px; }
.khb-rprice { display:flex; gap:16px; font-size:13.5px; font-weight:700; color:#ffd23f; margin-bottom:10px; align-items:center; }
.khb-rprice span { display:flex; align-items:center; gap:5px; }
.khb-rprice .dia { color:#7fd4f5; }
.khb-rvotes { display:flex; gap:8px; }
.khb-rvotes .kbtn { flex:1; padding:7px 8px; font-size:12.5px; border-radius:8px; }
.khb-vertodos { width:100%; margin-top:12px; padding:10px; font-size:13px; }

/* radar REAL (via HB:RADAR) — estiliza o markup .hb-radar injetado */
.khb .hb-radar-card { display:flex; gap:12px; align-items:center; background:#2b434d; border-radius:12px; padding:12px; margin-top:12px; text-decoration:none; }
.khb .hb-radar-img { width:64px; flex-shrink:0; align-self:stretch; display:flex; align-items:center; justify-content:center; }
.khb .hb-radar-img img { max-width:100%; max-height:56px; image-rendering:crisp-edges; }
.khb .hb-radar-info { flex:1; min-width:0; }
.khb .hb-radar-name { color:#fff; font-size:15px; font-weight:700; margin-bottom:8px; }
.khb .hb-radar-date { display:block; width:100%; text-align:center; background:#24363f; color:#9fb3bc; font-size:11.5px; font-weight:700; padding:6px 8px; border-radius:8px; margin-bottom:9px; }
.khb .hb-radar-date:empty { display:none; }
.khb .hb-radar-vals { display:flex; gap:12px; font-size:13.5px; font-weight:700; color:#ffd23f; margin-bottom:0; flex-wrap:wrap; align-items:center; }
.khb .hb-radar-vals span { display:inline-flex; align-items:center; gap:6px; }
.khb .hb-radar-coin { width:18px; height:18px; image-rendering:pixelated; }
.khb .hb-radar-cred { color:#ffd23f; }
.khb .hb-radar-cred::before { content:""; display:inline-block; width:1px; height:13px; background:#4b6470; margin-right:6px; }
.khb .hb-radar-purse { height:22px; width:auto; image-rendering:pixelated; }
.khb .hb-radar-vote { display:none; }
.khb .hb-radar-vote span { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:7px 8px; font-size:12.5px; font-weight:700; color:#fff; border-radius:8px; border-bottom:3px solid rgba(0,0,0,.28); }
.khb .hb-radar-vote .up { background:#7bc143; } .khb .hb-radar-vote .down { background:#f4494e; }

/* encontrar habbo */
.khb-findbar { display:flex; align-items:center; gap:8px; background:#fff; border-radius:18px; padding:4px 12px 4px 4px; margin-top:2px; }
.khb-findbar .kround { width:26px; height:26px; font-size:11px; flex-shrink:0; }
.khb-findbar input { border:0; outline:0; background:none; font-family:inherit; font-size:12px; font-weight:500; color:#5a6b73; width:100%; }
.khb-profile { margin-top:12px; }
.khb-profile > b { color:#fff; font-size:14px; display:block; margin-bottom:8px; }
.khb-prow { display:flex; gap:8px; }
.khb-pbadges { flex:1; }
.khb-pbadges .grid { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; margin-bottom:6px; }
.khb-pbadges .grid i { height:34px; background:#2b434d; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:17px; }
.khb-pava { width:74px; flex-shrink:0; text-align:center; }
.khb-pava .box { background:#2b434d; border-radius:10px; padding:6px 4px 0; overflow:hidden; }
.khb-pava img { width:60px; margin:0 auto; }
.khb-on { display:inline-block; background:#7bc143; color:#fff; font-size:10px; font-weight:700; padding:3px 12px; border-radius:7px; border-bottom:2px solid rgba(0,0,0,.22); margin-top:6px; }
.khb-meta { border-top:2px solid #2b434d; margin-top:10px; padding-top:9px; font-size:11px; color:#9fb3bc; font-weight:500; }
.khb-meta b { color:#fff; }
.khb-meta .pill { display:block; background:#24363f; border-radius:8px; padding:6px 10px; margin-top:8px; text-align:center; font-weight:700; color:#c3d2d9; }
.khb-pstats { display:flex; gap:8px; margin-top:10px; }
.khb-pstats div { flex:1; min-width:0; background:#2b434d; border-radius:10px; padding:8px 4px; display:flex; align-items:center; gap:5px; justify-content:center; }
.khb-pstats i { font-style:normal; font-size:16px; }
.khb-pstats b { color:#fff; font-size:12px; display:block; line-height:1.1; }
.khb-pstats span { color:#9fb3bc; font-size:9.5px; font-weight:700; }

/* top habbo */
.khb-titem { background:#2b434d; border-radius:11px; padding:9px; display:flex; gap:10px; margin-top:10px; align-items:center; }
.khb-titem .timg { width:52px; height:52px; border-radius:8px; flex-shrink:0; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center; }
.khb-titem .timg.t1 { background:linear-gradient(135deg,#4a4030,#25201a); }
.khb-titem .timg.t2 { background:linear-gradient(135deg,#3a4048,#20262b); }
.khb-titem .timg.t3 { background:linear-gradient(135deg,#4a3730,#251a15); }
.khb-titem .timg .medal { position:absolute; left:4px; top:4px; width:20px; height:20px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-style:normal; font-size:11px; font-weight:800; color:#fff;
  border:2px solid rgba(255,255,255,.55); box-shadow:0 1px 3px rgba(0,0,0,.4); }
.khb-titem .timg .g1 { background:radial-gradient(circle at 35% 30%,#ffd76a,#e0a91c); color:#7a5200; }
.khb-titem .timg .g2 { background:radial-gradient(circle at 35% 30%,#e2e8ee,#9fb0bd); color:#43525e; }
.khb-titem .timg .g3 { background:radial-gradient(circle at 35% 30%,#e0a878,#b06a38); color:#4a2a15; }
.khb-titem .tinfo { flex:1; min-width:0; }
.khb-titem .tinfo b { color:#fff; font-size:11px; line-height:1.3; display:block; margin-bottom:7px; }
.khb-tbars { display:flex; gap:5px; }
.khb-tbars i { font-style:normal; color:#fff; font-size:10px; font-weight:700; padding:4px 0; text-align:center;
  border-radius:6px; display:inline-flex; align-items:center; justify-content:center; gap:4px; border-bottom:2px solid rgba(0,0,0,.25); }
.khb-tbars i .ti { font-size:11px; }
.khb-tbars .g { background:#7bc143; width:72%; } .khb-tbars .r { background:#f4494e; width:28%; }

/* atividades do jogo (lista via HB:ACTIVITIES; timer dirigido por home-widgets.js) */
#khb-acts > .col { padding:0; }
#khb-acts .col .card.activity-card { background:#2b434d !important; border:0 !important; border-radius:11px; margin-top:10px; box-shadow:none !important; }
#khb-acts .card-body { padding:9px !important; display:grid; grid-template-columns:54px 1fr 36px;
  grid-template-rows:auto auto auto; column-gap:11px; align-items:center; text-align:left; }
#khb-acts .activity-img-wrap { grid-column:1; grid-row:1 / 4; position:relative; width:54px; height:54px;
  border-radius:8px; overflow:hidden; background:#24363f; display:flex; align-items:center; justify-content:center; }
#khb-acts .activity-img { max-width:100%; max-height:100%; image-rendering:crisp-edges; }
#khb-acts .activity-overlay { position:absolute; inset:0; pointer-events:none; }
#khb-acts .activity-overlay .badge { position:absolute; left:3px; top:3px; background:#7bc143; color:#0d1f0a;
  font-size:8px; font-weight:800; padding:2px 5px; border-radius:5px; letter-spacing:.3px; }
/* sino movido pra 3ª coluna (direita do item) via JS; estado on/off claro */
#khb-acts .card-body > .hb-act-bell { position:static; grid-column:3; grid-row:1 / 4; align-self:center; justify-self:end;
  width:34px; height:34px; border:0; border-radius:8px; background:#24363f; color:#8a9aa3; font-size:16px;
  display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:2; transition:.15s; }
#khb-acts .card-body > .hb-act-bell:hover { background:#31505c; color:#d7e2e8; }
#khb-acts .card-body > .hb-act-bell.on { background:#ffd23f; color:#7a5200; }
/* enquanto ainda não foi movido (dentro do thumb), esconde pra evitar flash */
#khb-acts .activity-img-wrap .hb-act-bell { display:none; }
#khb-acts .col .card-body .activity-title { grid-column:2; grid-row:1; color:#fff !important; font-size:12.5px; font-weight:700; line-height:1.2;
  align-self:end; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-align:left; }
#khb-acts .activity-label { grid-column:2; grid-row:2; color:#9fb3bc !important; font-size:10.5px; font-weight:600; margin:2px 0 0; text-align:left; }
#khb-acts .activity-time { grid-column:2; grid-row:3; color:#ffd23f !important; font-size:12.5px; font-weight:800; margin:0; align-self:start; text-align:left; }
/* item AO VIVO (badge sem d-none): borda amarela + "AO VIVO" verde */
#khb-acts .col .card.activity-card:has([data-ends-badge]:not(.d-none)) { border:2px solid #ffd23f !important; }
#khb-acts .card-body:has([data-ends-badge]:not(.d-none)) .activity-label { color:#7bc143 !important; font-weight:800; }

/* ============ FOOTER ============ */
/* conteúdo sobre o AZUL, grama só numa faixa fina embaixo (igual referência) */
.khb-footer { margin-top:26px; }
.khb-footer-sky { background:linear-gradient(180deg,#45bbf8,#38b0f2); padding:40px 0 34px; }
.khb-footer .grass { height:40px; background:#7dc855; }
.khb-footer .inner { max-width:1280px; margin:0 auto; padding:0 24px; display:flex; align-items:center; gap:24px; }
.khb-footer .build { width:120px; flex-shrink:0; text-align:center; font-size:56px; filter:drop-shadow(0 4px 0 rgba(0,0,0,.15)); }
.khb-footer .txt { flex:1; color:#fff; min-width:0; }
/* conteúdo injetado do admin (elemento footer real) estilizado no shell Kihabbo */
.khb-footer .txt .footer { background:transparent !important; border:0 !important; padding:0 !important; margin:0; color:#fff; width:100%; box-shadow:none !important; }
.khb-footer .txt .footer .container-fluid { padding:0 !important; }
.khb-footer .txt .footer .row { margin:0; display:flex; flex-wrap:wrap; gap:6px 14px; }
.khb-footer .txt .footer .row > div { padding:0 !important; }
.khb-footer .txt .footer .row:first-child { font-size:12.5px; font-weight:700; justify-content:space-between; margin-bottom:8px; }
.khb-footer .txt .footer .hb-footer-legal { font-size:10.5px; line-height:1.5; opacity:.85; font-weight:400; }
.khb-footer .txt .footer a { color:#fff !important; text-decoration:underline; font-weight:700; }
.khb-forsite { width:110px; flex-shrink:0; text-align:center; }
.khb-forsite .shield { background:linear-gradient(180deg,#ffd23f,#f0a818); border:3px solid #b97e0e; border-radius:10px;
  color:#7a5200; font-weight:700; font-size:11px; padding:10px 6px; line-height:1.3; transform:rotate(-3deg);
  box-shadow:0 4px 0 rgba(0,0,0,.18); }

/* ===================== RESPONSIVO ===================== */
/* tablet: sidebar desce pra baixo da coluna principal */
@media (max-width: 980px) {
  .khb-cols { flex-direction:column; align-items:stretch; }
  .khb-main, .khb-side { width:100%; min-width:0; max-width:100%; }
}

/* tablet estreito / celular grande */
@media (max-width: 760px) {
  .khb-container { padding:0 10px; }
  /* faixa azul + logo menores */
  .khb-sky { padding:64px 0 160px; }
  .khb-hero-logo img { height:auto; width:auto; max-width:84vw; max-height:86px; }
  /* NAVBAR empilha: busca full-width em cima, ações à direita, links com scroll horizontal */
  .khb-userwrap { margin-top:-132px; padding:0 10px; }
  .khb-nav { flex-wrap:nowrap; gap:8px; padding:10px 12px; position:relative; }
  .khb-nav-search { order:1; flex:1 1 auto; min-width:0; }
  .khb-nav-burger { order:2; display:flex; }
  .khb-nav-right { order:3; flex:0 0 auto; }
  /* links viram DROPDOWN (nada de arrastar): escondidos até abrir o burger */
  .khb-nav-links { order:4; position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:45;
    flex-direction:column; align-items:stretch; gap:2px; margin:0; padding:8px; max-height:70vh; overflow:auto;
    background:#fff; border-radius:12px; box-shadow:0 10px 26px rgba(45,59,65,.20); display:none; }
  .khb-nav.open .khb-nav-links { display:flex !important; }
  .khb-nav-links .khb-nav-item { flex:0 0 auto; width:100%; padding:11px 12px; border-radius:9px; font-size:15px; }
  .khb-nav-links .khb-nav-item:hover { background:#f2f5f8; }
  .khb-nav-menu { width:100%; }
  .khb-nav-drop { position:static; opacity:1 !important; visibility:visible !important; transform:none !important;
    box-shadow:none; padding:4px 0 4px 12px; min-width:0; margin-top:2px; }
  .khb-nav-drop::before { display:none; }
  /* HERO empilha (slider, Fique atento, Habbo Stars um embaixo do outro) */
  .khb-hero { flex-direction:column; padding:12px; gap:12px; }
  .khb-slider { flex:none; width:100%; height:190px; }
  .khb-hero-col { flex:none; width:100%; }
  .khb-alert-item, .khb-star-item { flex:none; }
  /* headers de card: deixa a barra de botões quebrar linha e some a busca fake */
  .khb .kcard-hd { flex-wrap:wrap; min-height:0; padding:12px 14px; row-gap:8px; }
  .khb .ksearch { display:none; }
  /* EVENTOS: 2 por linha */
  .khb-events { flex-wrap:wrap; }
  .khb-events > [class*="col-"] { flex:0 0 calc(50% - 6px); max-width:calc(50% - 6px); }
  /* VOZ: 1 coluna */
  .khb-articles { grid-template-columns:1fr; }
  /* MUDANÇA DE VALOR: rolagem horizontal */
  .khb .hb-vmini { overflow-x:auto; padding-bottom:4px; }
  .khb .hb-vmini::-webkit-scrollbar { height:0; }
  .khb .hb-vmini-tile { flex:0 0 44%; }
  /* NOVOS EMBLEMAS: 4 por vez + resto rola pelas setas */
  .khb-badges { flex-wrap:nowrap; overflow-x:auto; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; gap:12px; padding:14px; }
  .khb-badges::-webkit-scrollbar { height:0; }
  .khb .hb-nemb { flex:0 0 calc(25% - 9px); }
  /* footer empilha */
  .khb-footer .inner { flex-direction:column; text-align:center; gap:16px; }
  .khb-footer .txt p { max-width:none; }
  .khb-footer .credits { justify-content:center; }
}

/* celular */
@media (max-width: 460px) {
  .khb-hero-logo img { max-height:66px; }
  .khb-sky { padding:48px 0 150px; }
  /* EVENTOS: 1 por linha */
  .khb-events > [class*="col-"] { flex:0 0 100%; max-width:100%; }
  .khb .hb-vmini-tile { flex:0 0 58%; }
  /* radar: imagem um pouco menor */
  .khb .hb-radar-img { width:56px; }
}

/* ---- chrome interno das paginas (Shell): faixa azul slim ---- */

/* =========================================================================
   ADAPTADOR khb: paginas legadas envolvidas em <div class="khb"> adotam o
   tema claro + sombras solidas do padrao Kihabbo (serve todas as internas).
   ========================================================================= */
.khb { --bs-body-bg:#e6eaf2; --bs-body-color:#2d3b41; --bs-secondary-color:#8a9aa3;
  --bs-border-color:#eef2f4; --bs-secondary-bg:#eef2f4; --bs-tertiary-bg:#eef2f4;
  --bs-emphasis-color:#2d3b41; color:#2d3b41; }
.khb h1,.khb h2,.khb h3,.khb h4,.khb h5,.khb h6 { color:#2d3b41; }
.khb .text-muted,.khb .text-body-secondary { color:#8a9aa3 !important; }
.khb .card { background:#fff !important; border:0 !important; border-radius:14px !important;
  box-shadow:0 8px 0 #ccd2dd !important; color:#2d3b41 !important; }
.khb .card-header { background:transparent !important; border-bottom:2px solid #eef2f4 !important; color:#2d3b41 !important; }
.khb .card-footer { background:transparent !important; border-top:2px solid #eef2f4 !important; color:#2d3b41 !important; }
.khb .form-control { background:#eef2f4 !important; border:0 !important; border-radius:12px !important; color:#2d3b41 !important; }
.khb .form-control::placeholder { color:#a7b3ba !important; }
.khb .btn-primary { background:#f7941d !important; border:0 !important; border-bottom:3px solid #d97d0a !important;
  border-radius:12px !important; font-weight:700 !important; color:#fff !important; }
.khb .btn-primary:hover { background:#ffa532 !important; }
.khb .link-primary { color:#29a8e0 !important; }
.khb .link-reset { color:#2d3b41 !important; }
.khb .badge { border-radius:8px; }

/* =========================================================================
   REPAGINACAO KHB — cabecalho de pagina + filtros + grade de conteudo
   (estrutura nova, nao herda o layout Bobba/Habbase v1)
   ========================================================================= */
.khb-phead { display:flex; align-items:center; gap:13px; margin-bottom:18px; }
.khb-phead-bar { width:5px; height:38px; flex:0 0 auto; border-radius:0 5px 5px 0; background:#f7941d; }
.khb-phead-bar.pink { background:#f45f93; } .khb-phead-bar.blue { background:#29a8e0; } .khb-phead-bar.green { background:#7bc143; }
.khb-phead-tx h1 { font-size:22px; font-weight:700; line-height:1.1; color:#2d3b41; }
.khb-phead-tx p { font-size:13px; color:#6b7a99; margin-top:3px; }

.khb-filterbar { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:18px; }
.khb-search2 { display:flex; align-items:center; gap:8px; background:#fff; border-radius:12px; padding:10px 14px;
  box-shadow:0 5px 0 #ccd2dd; flex:1 1 240px; min-width:0; }
.khb-search2 i { color:#a7b3ba; font-size:16px; }
.khb-search2 input { border:0; outline:0; background:none; flex:1; min-width:0; font-family:inherit; font-size:13px; color:#2d3b41; }
.khb-search2 input::placeholder { color:#a7b3ba; }
.khb-pills { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.khb-pill { display:inline-flex; align-items:center; gap:6px; background:#fff; border-radius:11px; padding:9px 14px;
  font-size:13px; font-weight:700; color:#5a6b73; box-shadow:0 5px 0 #ccd2dd; cursor:pointer; white-space:nowrap; user-select:none; }
.khb-pill b { background:#eef2f4; color:#8a9aa3; border-radius:7px; padding:1px 7px; font-size:11px; }
.khb-pill.active { background:#f7941d; color:#fff; box-shadow:0 5px 0 #d97d0a; }
.khb-pill.active b { background:rgba(255,255,255,.28); color:#fff; }
.khb-seg { display:inline-flex; background:#fff; border-radius:11px; box-shadow:0 5px 0 #ccd2dd; overflow:hidden; }
.khb-seg button { border:0; background:none; padding:9px 14px; font-size:13px; font-weight:700; color:#8a9aa3; cursor:pointer; font-family:inherit; display:flex; align-items:center; gap:5px; }
.khb-seg button.active { background:#29a8e0; color:#fff; }

.khb-newsgrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.khb-ncard { padding:0 !important; display:flex; flex-direction:column; overflow:hidden; }
.khb-ncard-cover { display:block; position:relative; aspect-ratio:16/8; background:#dfe6ee no-repeat center/cover; }
.khb-ncard-tag { position:absolute; left:11px; top:11px; background:#f45f93; color:#fff; font-size:11px; font-weight:700;
  padding:4px 11px; border-radius:8px; box-shadow:0 3px 0 rgba(0,0,0,.14); }
.khb-ncard-bd { padding:13px 15px 8px; flex:1; }
.khb-ncard-bd h3 { font-size:15.5px; font-weight:700; line-height:1.28; margin-bottom:6px; }
.khb-ncard-bd h3 a { color:#2d3b41; }
.khb-ncard-bd h3 a:hover { color:#f7941d; }
.khb-ncard-bd p { font-size:12.5px; color:#7c8b93; line-height:1.42;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.khb-ncard-ft { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 15px; border-top:2px solid #eef2f4; }
.khb-ncard-au { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:700; color:#5a6b73; min-width:0; }
.khb-ncard-au .av { width:26px; height:26px; flex:0 0 auto; border-radius:50%; overflow:hidden; background:#eef2f4;
  display:flex; align-items:center; justify-content:center; color:#a7b3ba; }
.khb-ncard-au .av img { width:100%; height:100%; object-fit:cover; object-position:center -2px; image-rendering:pixelated; }
.khb-ncard-au > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-ncard-meta { display:flex; align-items:center; gap:10px; font-size:11.5px; color:#a7b3ba; flex:0 0 auto; }
.khb-ncard-meta span { display:flex; align-items:center; gap:3px; }
.khb-empty2 { grid-column:1/-1; text-align:center; color:#8a9aa3; padding:44px 0; }
.khb-empty2 i { font-size:34px; display:block; margin-bottom:6px; }

/* card destaque (primeiro item) ocupa a fileira toda, layout horizontal */
.khb-ncard.wide { grid-column:1/-1; flex-direction:row; }
.khb-ncard.wide .khb-ncard-cover { flex:0 0 44%; aspect-ratio:auto; align-self:stretch; }
.khb-ncard.wide .khb-ncard-main { display:flex; flex-direction:column; flex:1; min-width:0; }
.khb-ncard.wide .khb-ncard-bd { padding:20px 22px 10px; }
.khb-ncard.wide .khb-ncard-bd h3 { font-size:21px; }
.khb-ncard.wide .khb-ncard-bd p { -webkit-line-clamp:3; font-size:13.5px; }
.khb-ncard.wide .khb-ncard-tag { left:14px; top:14px; font-size:12px; padding:5px 13px; }

@media (max-width:760px){
  .khb-newsgrid { grid-template-columns:1fr; gap:14px; }
  .khb-ncard.wide { flex-direction:column; }
  .khb-ncard.wide .khb-ncard-cover { flex:auto; aspect-ratio:16/8; }
  .khb-ncard.wide .khb-ncard-bd h3 { font-size:17px; }
  .khb-phead-ic { width:46px; height:46px; font-size:22px; }
  .khb-phead-tx h1 { font-size:19px; }
}


/* ---- mata o gradiente rosa (skin prism) nas paginas khb: fundo solido igual a home ---- */
html[data-skin=prism][data-bs-theme=light] body { background:#e6eaf2 !important; background-image:none !important; background-attachment:initial !important; }

/* ---- caixa (painel) que envolve o conteudo das paginas internas ---- */
.khb-panel { padding:20px 22px 24px !important; margin-bottom:18px; }
.khb-panel .khb-phead { margin-bottom:16px; }

/* ---- tag rosa com sombra solida (igual aos itens da home) ---- */
.khb-ncard-tag { box-shadow:0 3px 0 #cf4f7d !important; }

/* =========================================================================
   ARTIGO — pagina de dentro da noticia (repaginacao khb)
   ========================================================================= */
/* restaura gutters de grids bootstrap dentro do .khb (o reset .khb * zera padding) */
.khb .row > * { padding-left:calc(var(--bs-gutter-x,1.5rem)*.5); padding-right:calc(var(--bs-gutter-x,1.5rem)*.5); }

.khb-back { margin-bottom:14px; }
.khb-artrow { display:grid; grid-template-columns:minmax(0,1fr) 336px; gap:18px; align-items:start; }
.khb-artmain { min-width:0; }

.khb-art { padding:0 !important; overflow:hidden; }
.khb-art-cover { position:relative; height:340px; background:#dfe6ee no-repeat center/cover; }
.khb-art-tag { position:absolute; left:16px; top:16px; background:#f45f93; color:#fff; font-size:12px; font-weight:700;
  padding:5px 13px; border-radius:9px; box-shadow:0 3px 0 #cf4f7d; }
.khb-art-in { padding:22px 26px 28px; }
.khb-art-title { font-size:28px; font-weight:700; line-height:1.15; color:#2d3b41; margin-bottom:14px; }
.khb-art-byline { display:flex; align-items:center; gap:11px; padding-bottom:16px; margin-bottom:18px; border-bottom:2px solid #eef2f4; flex-wrap:wrap; }
.khb-art-by-tx { display:flex; flex-direction:column; gap:1px; margin-right:auto; }
.khb-art-by-tx b { font-size:14px; color:#2d3b41; }
.khb-art-by-tx small { font-size:12px; color:#9aa5b1; display:flex; align-items:center; gap:4px; }
.khb-art-stats { display:flex; gap:8px; flex-wrap:wrap; }
.khb-stat { display:inline-flex; align-items:center; gap:5px; background:#eef2f4; color:#6b7a99; font-size:12.5px; font-weight:700;
  padding:6px 12px; border-radius:10px; box-shadow:0 3px 0 #d7dde5; }
.khb-stat.pink { background:#ffe4ee; color:#e0407c; box-shadow:0 3px 0 #f4c2d6; }
.khb-art-lead { font-size:16px; line-height:1.55; color:#5a6b73; font-weight:500; margin-bottom:18px;
  background:#f6f8fa; border-left:4px solid #f7941d; padding:13px 16px; border-radius:0 10px 10px 0; }

/* tipografia do corpo do artigo */
.khb-art-body { font-size:15px; line-height:1.7; color:#3a474e; }
.khb-art-body > * + * { margin-top:14px; }
.khb-art-body h2 { font-size:21px; font-weight:700; color:#2d3b41; margin-top:26px; }
.khb-art-body h3 { font-size:18px; font-weight:700; color:#2d3b41; margin-top:22px; }
.khb-art-body a { color:#29a8e0; font-weight:600; }
.khb-art-body img { max-width:100%; height:auto; border-radius:12px; box-shadow:0 6px 0 #ccd2dd; }
.khb-art-body ul, .khb-art-body ol { padding-left:22px; }
.khb-art-body li { margin:6px 0; }
.khb-art-body blockquote { border-left:4px solid #f7941d; background:#fff7ec; padding:12px 16px; border-radius:0 10px 10px 0; color:#7a5f3a; }
.khb-art-body hr { border:0; border-top:2px solid #eef2f4; }

@media (max-width:980px){
  .khb-artrow { grid-template-columns:1fr; }
  .khb-art-cover { height:220px; }
  .khb-art-title { font-size:23px; }
  .khb-art-in { padding:18px 18px 22px; }
}

/* ===== restyle EngagementPanel (curtir / compartilhar / comentarios) ===== */
.khb .btn-soft-success, .khb .btn-success { background:#7bc143 !important; color:#fff !important; border:0 !important; border-bottom:3px solid #5f9c31 !important; border-radius:11px !important; font-weight:700 !important; }
.khb .btn-soft-info { background:#29a8e0 !important; color:#fff !important; border:0 !important; border-bottom:3px solid #1f87b6 !important; border-radius:11px !important; font-weight:700 !important; }
.khb .btn-soft-primary { background:#5b8def !important; color:#fff !important; border:0 !important; border-bottom:3px solid #4670c9 !important; border-radius:11px !important; font-weight:700 !important; }
.khb .btn-warning { background:#f7941d !important; color:#fff !important; border:0 !important; border-bottom:3px solid #d97d0a !important; border-radius:11px !important; font-weight:700 !important; }
.khb .border-dashed { border:2px dashed #dbe2ea !important; }
.khb .hb-tl-title { font-size:17px; font-weight:700; color:#2d3b41; }
.khb .hb-tl-input { background:#eef2f4 !important; border:0 !important; border-radius:12px !important; }
.khb .hb-author-recent-item:hover { color:#f7941d; }

/* ===== restyle ContentSidebar (headers com barrinha de acento) ===== */
.khb-artside .card-header { position:relative; padding-left:16px; }
.khb-artside .card-header .card-title { font-size:14px; font-weight:700; }
.khb-artside .card-header::before { content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:4px; height:18px; border-radius:0 4px 4px 0; background:#f7941d; }

/* =========================================================================
   ARTIGO v2 — sidebar repaginada (card do autor verde/escuro + modulos novos)
   ========================================================================= */
.khb-artside > * { margin-bottom:16px; }
.khb-art-body h2, .khb-art-body h3 { scroll-margin-top:20px; }

/* --- CARD DO AUTOR: paleta verde/escura do Radar/Atividades (.khb-dark) --- */
.khb-authorcard { padding:0 12px 16px !important; text-align:center; }
.khb-authorcard .kcard-hd { text-align:left; margin:0 -2px; }
.khb-au-ava { width:100px; margin:16px auto 0; background:#2b434d; border-radius:12px; padding:8px 4px 0; overflow:hidden; }
.khb-au-ava img { width:100%; height:auto; image-rendering:pixelated; display:block; }
.khb-au-name { color:#fff; font-size:18px; font-weight:700; margin-top:12px; }
.khb-au-roles { display:flex; flex-wrap:wrap; gap:5px; justify-content:center; margin-top:9px; }
.khb-au-role { background:#2b434d; color:#8fd14f; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; padding:4px 9px; border-radius:7px; }
.khb-au-motto { color:#9fb3bc; font-size:12.5px; font-style:italic; margin-top:11px; padding:0 4px; line-height:1.4; }
.khb-au-stats { display:flex; gap:8px; margin:14px 4px 0; }
.khb-au-stat { flex:1; background:#2b434d; border-radius:10px; padding:9px 4px; }
.khb-au-stat b { display:block; color:#fff; font-size:16px; font-weight:700; }
.khb-au-stat span { font-size:10px; color:#8ba1aa; text-transform:uppercase; letter-spacing:.4px; }
.khb-au-btn { display:flex; align-items:center; justify-content:center; gap:6px; margin:14px 4px 0; background:#7bc143; color:#0d1f0a !important; font-weight:700; font-size:13px; padding:10px; border-radius:11px; box-shadow:0 4px 0 #5f9c31; }
.khb-au-btn:hover { background:#8bd150; }
.khb-au-btn:active { transform:translateY(2px); box-shadow:0 2px 0 #5f9c31; }

/* --- modulos claros da sidebar --- */
.khb-scard { padding:0 !important; overflow:hidden; }
.khb-scard-hd { display:flex; align-items:center; gap:9px; padding:13px 15px; border-bottom:2px solid #eef2f4; }
.khb-scard-hd i.bar { width:4px; height:17px; border-radius:0 4px 4px 0; background:#f7941d; flex:0 0 auto; }
.khb-scard-hd h3 { font-size:14px; font-weight:700; color:#2d3b41; }
.khb-scard-bd { padding:11px 15px 13px; }

/* indice */
.khb-toc a { display:flex; gap:9px; padding:8px 0; font-size:13px; color:#5a6b73; font-weight:600; border-bottom:1px solid #f1f4f7; }
.khb-toc a:last-child { border-bottom:0; }
.khb-toc a:hover { color:#f7941d; }
.khb-toc a.lvl3 { padding-left:16px; font-weight:500; font-size:12.5px; color:#8794a0; }
.khb-toc a .n { color:#c3cbd6; font-weight:700; flex:0 0 auto; }

/* continue lendo */
.khb-nav2 { display:flex; flex-direction:column; gap:11px; }
.khb-nav2 a { display:flex; gap:10px; align-items:center; }
.khb-nav2 .cap { width:54px; height:42px; flex:0 0 auto; border-radius:8px; background:#dfe6ee no-repeat center/cover; box-shadow:0 3px 0 #d0d7df; }
.khb-nav2 .tx { min-width:0; }
.khb-nav2 .tx small { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.3px; color:#a7b3ba; display:flex; align-items:center; gap:3px; }
.khb-nav2 .tx b { display:block; font-size:12.5px; color:#2d3b41; line-height:1.28; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; margin-top:2px; }
.khb-nav2 a:hover .tx b { color:#f7941d; }

/* mais lidas */
.khb-top a { display:flex; gap:11px; align-items:center; padding:8px 0; border-bottom:1px solid #f1f4f7; }
.khb-top a:last-child { border-bottom:0; }
.khb-top .rk { width:26px; height:26px; flex:0 0 auto; border-radius:8px; background:#eef2f4; color:#8a9aa3; font-weight:700; font-size:12px; display:flex; align-items:center; justify-content:center; }
.khb-top a:nth-child(1) .rk { background:#f7941d; color:#fff; box-shadow:0 3px 0 #d97d0a; }
.khb-top a:nth-child(2) .rk { background:#b9c2cc; color:#fff; }
.khb-top a:nth-child(3) .rk { background:#cd9b6a; color:#fff; }
.khb-top .tx { min-width:0; }
.khb-top .tx b { display:block; font-size:12.5px; color:#2d3b41; line-height:1.28; overflow:hidden; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; }
.khb-top .tx small { font-size:11px; color:#a7b3ba; display:flex; align-items:center; gap:3px; margin-top:1px; }
.khb-top a:hover .tx b { color:#f7941d; }

/* comunidade */
.khb-comm { display:flex; flex-direction:column; gap:9px; }
.khb-comm a { display:flex; align-items:center; gap:9px; padding:11px 13px; border-radius:11px; font-weight:700; font-size:13px; color:#fff; }
.khb-comm a:active { transform:translateY(2px); }
.khb-comm a.discord { background:#5865f2; box-shadow:0 4px 0 #3c47c9; }
.khb-comm a.x { background:#1d2b33; box-shadow:0 4px 0 #0e181d; }
.khb-comm a i { font-size:17px; }

/* barra de reacao: botoes de compartilhar so com icone */
.khb .hb-react-share { width:44px; padding:0 !important; display:inline-flex; align-items:center; justify-content:center; }
.khb .hb-react-share i { margin:0 !important; font-size:16px; }

@media (max-width:980px){
  .khb-artside > * { margin-bottom:14px; }
}

/* =========================================================================
   ARTIGO v3 — correcoes: card autor VERDE, boneco nativo, alinhamento, Curtir
   ========================================================================= */
/* alinhamento: todos os cards da sidebar com a mesma margem inferior */
.khb-authorcard { margin-bottom:16px !important; }

/* boneco do autor em TAMANHO NATIVO (igual ao corpo da noticia; nao distorcer) */
.khb-au-ava { width:-moz-fit-content; width:fit-content; margin:16px auto 4px; background:#2b434d;
  border-radius:12px; padding:12px 14px 4px; overflow:hidden; }
.khb-au-ava img { width:auto; height:auto; max-width:100%; display:block; image-rendering:pixelated; }

/* botao Curtir sem cortar o texto */
.khb .card .btn-success, .khb .card .btn-soft-success { white-space:nowrap; padding-left:18px; padding-right:18px; }

/* =========================================================================
   COMENTARIOS (EngagementPanel) no padrao khb — arredondamento "quase quadrado",
   avatar recortado na cabeca, texto quebrando certo (sem estourar)
   ========================================================================= */
.khb .hb-timeline .hb-tl-title { font-size:17px; font-weight:700; color:#2d3b41; }

/* --- composer (escrever comentario) --- */
.khb .hb-tl-composer { display:flex; align-items:center; gap:10px; }
.khb .hb-tl-composer .hb-tl-me { width:44px; height:44px; flex:0 0 auto; border-radius:11px; overflow:hidden; background:#eef2f4; }
.khb .hb-tl-composer .hb-tl-me img { width:44px; height:44px; object-fit:none; object-position:-12px -13px; image-rendering:pixelated; }
.khb .hb-tl-input { flex:1; min-width:0; border-radius:11px !important; background:#eef2f4 !important; border:0 !important; padding:11px 16px !important; color:#2d3b41 !important; }
.khb .hb-tl-composer .btn-success { border-radius:11px !important; padding-left:20px !important; padding-right:20px !important; white-space:nowrap; }

/* --- botao "Entre para comentar" — quase quadrado (nao pilula) --- */
.khb .hb-timeline .btn-warning { border-radius:11px !important; }

/* --- item de comentario --- */
.khb .hb-tl-item { display:flex; gap:12px; align-items:flex-start; background:#f6f8fa; border:0; border-radius:13px; padding:12px 14px; box-shadow:none; }
.khb .hb-tl-avatar { width:46px; height:46px; flex:0 0 auto; border-radius:11px; overflow:hidden; background:#e7edf2; display:block; }
.khb .hb-tl-avatar img { width:46px; height:46px; object-fit:none; object-position:-9px -11px; image-rendering:pixelated; }
.khb .hb-tl-item .flex-grow-1 { min-width:0; }
.khb .hb-tl-item .fw-bold { color:#2d3b41; font-size:13.5px; }
.khb .hb-tl-bubble { background:#fff; border-radius:11px; padding:9px 13px; color:#3a474e; font-size:13.5px; line-height:1.5;
  box-shadow:none; word-break:break-word; overflow-wrap:anywhere; }
.khb .hb-tl-like { background:#eef2f4 !important; border:0 !important; border-radius:10px !important; padding:5px 12px !important;
  font-weight:700; font-size:12.5px; color:#8a9aa3 !important; display:inline-flex; align-items:center; gap:5px; cursor:pointer; }
.khb .hb-tl-like.liked { background:#ffe4ee !important; color:#e0407c !important; }
.khb .hb-tl-like:hover { background:#e4e9ef !important; color:#5a6b73 !important; }
.khb .hb-tl-report { background:none; border:0; color:#c3cbd6; width:30px; height:30px; border-radius:9px; flex:0 0 auto; cursor:pointer; }
.khb .hb-tl-report:hover { background:#fdecec; color:#e0555a; }

/* =========================================================================
   FIX (2026-07-15): padding de card-body (o reset .khb * zerava o lateral),
   botoes quase-quadrados robustos, footer centrado
   ========================================================================= */
/* restaura o padding lateral dos .card-body legados (reacao/comentarios) */
.khb .card-body { padding:1.15rem 1.4rem; }

/* botoes bootstrap dentro do .khb = arredondamento quase-quadrado (~9px), sobrepondo o tema */
.khb .btn { border-radius:9px !important; }

/* footer: bloco centralizado + texto legal centralizado e estreito (3-4 linhas no meio) */
.khb .footer { padding-top:14px; }
.khb .footer .container-fluid { max-width:1160px; margin-left:auto; margin-right:auto; padding-left:12px; padding-right:12px; }
.khb .footer .hb-footer-legal { text-align:justify !important; max-width:none; margin-left:0; margin-right:0; line-height:1.6; }

/* =========================================================================
   FIX: capa cola sob a navbar (sem botao Voltar solto no azul); Voltar vira
   chip discreto no canto da capa e a tag vai pro canto oposto
   ========================================================================= */
.khb-art-tag { left:auto; right:16px; }
.khb-art-back-chip { position:absolute; left:16px; top:16px; display:inline-flex; align-items:center; gap:6px;
  background:rgba(18,28,36,.72); color:#fff; font-size:12px; font-weight:700; padding:6px 12px; border-radius:9px;
  box-shadow:0 3px 0 rgba(0,0,0,.18); }
.khb-art-back-chip i { font-size:15px; }
.khb-art-back-chip:hover { background:rgba(18,28,36,.9); }
.khb-art-back-chip:active { transform:translateY(2px); box-shadow:0 1px 0 rgba(0,0,0,.18); }
/* fallback quando nao ha capa */
.khb-art-back-inline { display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:700; color:#8a9aa3; margin-bottom:12px; }
.khb-art-back-inline:hover { color:#f7941d; }

/* tag de volta pra ESQUERDA (Felipe) */
.khb-art-tag { left:16px; right:auto; }

/* ajuste: boneco CENTRALIZADO na caixa (padding igual em volta) + sombra nos cargos */
.khb-au-ava { width:-moz-fit-content; width:fit-content; margin:16px auto 6px; padding:16px !important;
  display:flex; align-items:center; justify-content:center; }
.khb-au-ava img { display:block; width:auto; height:auto; image-rendering:pixelated; }
.khb-au-role { box-shadow:0 3px 0 #1f333b; }

/* fallback de centramento do boneco (o script refina por autor) */
.khb-au-ava img { position:relative; top:-9px; }

/* =========================================================================
   VALORES — repaginacao khb (destaques Em alta/Em queda + linhas + filtros)
   ========================================================================= */
/* abas do hub como segmentado khb */
.khb-vtabs { display:inline-flex; background:#fff; border-radius:12px; box-shadow:0 5px 0 #ccd2dd; padding:4px; gap:2px; margin-bottom:18px; }
.khb-vtab { border:0 !important; background:none; border-radius:9px; padding:8px 16px; font-weight:700; font-size:13px; color:#8a9aa3; display:inline-flex; align-items:center; gap:6px; cursor:pointer; font-family:inherit; }
.khb-vtab.active { background:#f7941d !important; color:#fff !important; }

/* destaques do mercado */
.khb-movers { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:16px; margin-bottom:18px; }
.khb-mov { padding:0 !important; overflow:hidden; display:block; }
.khb-mov-hd { display:flex; align-items:center; gap:8px; padding:11px 16px; font-size:13px; font-weight:700; color:#fff; }
.khb-mov.up .khb-mov-hd { background:#7bc143; }
.khb-mov.down .khb-mov-hd { background:#f4494e; }
.khb-mov-body { display:flex; align-items:center; gap:12px; padding:13px 16px; }
.khb-mov-thumb { width:52px; height:52px; flex:0 0 auto; background:#eef2f4; border-radius:11px; display:flex; align-items:center; justify-content:center; }
.khb-mov-thumb img { max-width:44px; max-height:44px; width:auto; height:auto; image-rendering:pixelated; }
.khb-mov-tx { flex:1; min-width:0; display:flex; flex-direction:column; gap:5px; }
.khb-mov-tx b { font-size:14px; color:#2d3b41; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* chip de valor (habloons) + seta de tendencia */
.khb-vchip { display:inline-flex; align-items:center; gap:5px; background:#eef2f4; border-radius:9px; padding:3px 10px; font-weight:700; font-size:13px; color:#2d3b41; width:-moz-fit-content; width:fit-content; }
.khb-vchip img { width:16px; height:16px; image-rendering:pixelated; }
.khb-vchip.big { font-size:15px; padding:5px 12px; }
.khb-vdelta { display:inline-flex; align-items:center; gap:2px; font-weight:700; font-size:12.5px; padding:3px 9px; border-radius:8px; flex:0 0 auto; }
.khb-vdelta.up { background:#e4f6d8; color:#4e932a; }
.khb-vdelta.down { background:#fde0e1; color:#d83a3f; }

/* barra de filtros */
.khb-vbar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.khb-vselect { background:#fff; border:0; border-radius:12px; box-shadow:0 4px 0 #ccd2dd; padding:10px 14px; font-family:inherit; font-weight:700; font-size:13px; color:#5a6b73; cursor:pointer; max-width:230px; }
.khb-vselect-sm { padding:10px 12px; }
.khb-vcount { margin-left:auto; font-size:12.5px; font-weight:700; color:#a7b3ba; }

/* linhas da lista */
.khb-vlist { display:flex; flex-direction:column; gap:10px; }
.khb-vrow { display:flex; align-items:center; gap:14px; padding:11px 15px !important; transition:transform .1s; }
.khb-vrow:hover { transform:translateY(-1px); }
.khb-vrow-thumb { width:56px; height:56px; flex:0 0 auto; background:#eef2f4; border-radius:12px; display:flex; align-items:center; justify-content:center; }
.khb-vrow-thumb img { max-width:48px; max-height:48px; width:auto; height:auto; image-rendering:pixelated; }
.khb-vrow-main { flex:1; min-width:0; }
.khb-vrow-name { font-size:14px; font-weight:700; color:#2d3b41; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-vrow-name:hover { color:#f7941d; }
.khb-vrow-desc { font-size:12px; color:#8a9aa3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-vrow-val { display:flex; align-items:center; gap:8px; flex:0 0 auto; width:190px; }
.khb-vrow-rel { display:flex; flex-direction:column; align-items:center; gap:1px; flex:0 0 auto; width:66px; color:#6b7a99; font-weight:700; font-size:13px; }
.khb-vrow-rel img { width:22px; height:auto; image-rendering:pixelated; }
.khb-vrow-cat { display:flex; flex-direction:column; align-items:flex-end; gap:5px; flex:0 0 auto; width:158px; }
.khb-vtag { background:#eaf2ff; color:#3b7dd8; font-size:11px; font-weight:700; padding:4px 10px; border-radius:8px; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-vcd { display:inline-flex; align-items:center; gap:4px; background:#fff2df; color:#d97d0a; font-size:11px; font-weight:700; padding:3px 9px; border-radius:8px; }

/* paginacao */
.khb-pager { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:22px; flex-wrap:wrap; }
.khb-pgbtn { min-width:38px; height:38px; padding:0 10px; border:0; border-radius:10px; background:#fff; box-shadow:0 4px 0 #ccd2dd; font-weight:700; font-size:13px; color:#5a6b73; cursor:pointer; }
.khb-pgbtn.on { background:#f7941d; color:#fff; box-shadow:0 4px 0 #d97d0a; }
.khb-pgbtn:disabled { opacity:.45; cursor:default; box-shadow:0 4px 0 #d7dde5; }
.khb-pgdots { color:#a7b3ba; font-weight:700; padding:0 4px; }

@media (max-width:820px){
  .khb-movers { grid-template-columns:1fr; }
  .khb-vrow { flex-wrap:wrap; }
  .khb-vrow-main { flex-basis:55%; }
  .khb-vrow-val { width:auto; margin-left:auto; }
  .khb-vrow-rel { display:none; }
  .khb-vrow-cat { width:100%; flex-direction:row; align-items:center; justify-content:flex-start; }
}

/* ===== VALORES v2: bloco de mudancas (vmini home) + bloco grande com titulo ===== */
.khb-valwrap { margin-top:4px; }
.khb-valcard { padding:0 !important; overflow:hidden; margin-bottom:18px; }
.khb-valcard .kcard-hd h2 { margin-right:auto; }
.khb-valcount { font-size:12.5px; font-weight:700; color:#a7b3ba; }
.khb-valmini { padding:14px 16px 16px; }
.khb-valbar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:14px 16px; border-bottom:2px solid #eef2f4; }
.khb-valbody { padding:4px 8px 12px; }
/* tabela dentro do .khb: mantem padding das celulas (o reset .khb * zera) */
.khb .rares-table > :not(caption) > * > * { padding:14px 12px; }
.khb .rares-table thead th { padding:12px; color:#a7b3ba; }
.khb .rares-table .rare-desc { color:#8a9aa3; }

/* Valores: tiles de mudanca de valor FIXOS + scroll horizontal (setas via home-widgets.js) */
.khb-valmini .hb-vmini { overflow-x:auto; scroll-behavior:smooth; padding-bottom:6px; }
.khb-valmini .hb-vmini::-webkit-scrollbar { height:0; }
.khb-valmini .hb-vmini-tile { flex:0 0 150px; }

/* FIX ordem de pintura: sky (position:relative) pintava por cima do conteudo; eleva o container acima da faixa azul */
.khb-container { position:relative; z-index:1; }

/* bloco branco de cabecalho da Valores (titulo + abas, arredondado padrao) */
.khb-vhead { padding:18px 20px !important; margin-bottom:18px; }
.khb-vhead .khb-phead { margin-bottom:14px; }
.khb-vhead .khb-vtabs { margin-bottom:0; background:#eef2f4; box-shadow:none; }

/* barra de busca/filtros da Valores: tom azul-acinzentado (branco apagava) */
.khb-valbar { background:#eaf1fb; }

/* fix arredondamento: filho com scroll (.table-responsive) quebra o border-radius+overflow do card; forcar camada */
.khb-valcard { transform: translateZ(0); }

/* =========================================================================
   COLEÇÕES — álbum de figurinhas repaginado em khb + gamificação
   ========================================================================= */
.khb-col { padding:0 !important; overflow:hidden; transform:translateZ(0); margin-bottom:18px; }
.khb-col .kcard-hd h2 { margin-right:10px; }
.khb-col-hint { font-size:11.5px; color:#a7b3ba; font-weight:600; display:inline-flex; align-items:center; gap:4px; margin-right:auto; }
.khb-col-bar { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:14px 16px; background:#eaf1fb; border-bottom:2px solid #e2e9f2; }
.khb-col-body { padding:16px; }
.khb-col-empty { text-align:center; color:#8a9aa3; padding:36px 0; }

/* chips de grupo */
.khb-col-chips { gap:7px; }
.khb-col-chips .khb-pill { padding:7px 13px; box-shadow:0 4px 0 #ccd2dd; cursor:pointer; }

/* overview de progresso geral (gamificação) */
.khb-col-overview { display:flex; align-items:center; gap:16px; background:#f3f8f0; border:2px solid #e4f0d8; border-radius:13px; padding:13px 18px; margin-bottom:18px; }
.ov-ring { width:62px; height:62px; border-radius:50%; flex:0 0 auto; display:flex; align-items:center; justify-content:center; position:relative; }
.ov-ring::before { content:""; position:absolute; inset:7px; background:#fff; border-radius:50%; }
.ov-ring span { position:relative; font-weight:700; font-size:14px; color:#2d3b41; }
.ov-tx { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.ov-tx b { font-size:15px; color:#2d3b41; }
.ov-tx span { font-size:12.5px; color:#7c8b93; }
.ov-count { text-align:center; flex:0 0 auto; }
.ov-count b { display:block; font-size:26px; font-weight:700; color:#5f9c31; line-height:1; }
.ov-count small { font-size:10px; text-transform:uppercase; color:#9bb37f; letter-spacing:.4px; }

/* login prompt */
.khb-col-login { display:flex; align-items:center; gap:12px; background:#eaf1fb; border-radius:12px; padding:14px 16px; margin-bottom:16px; text-decoration:none; color:#5a6b73; font-size:13.5px; }
.khb-col-login i { font-size:22px; color:#f7941d; flex:0 0 auto; }
.khb-col-login b { color:#2d3b41; }

/* grupos + grade de cards */
.khb-col-group { margin-bottom:20px; }
.khb-col-grouptitle { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; color:#2d3b41; margin-bottom:11px; }
.khb-col-grouptitle .kaccent { position:static; transform:none; width:4px; height:16px; flex:0 0 auto; }
.khb-col-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(215px,1fr)); gap:14px; }

/* cover card */
.khb-colcard { padding:0 !important; overflow:hidden; display:flex; flex-direction:column; text-align:left; cursor:pointer; border:0; transition:transform .1s; }
.khb-colcard:hover { transform:translateY(-2px); }
.khb-colcard.done { box-shadow:0 8px 0 #b6d98f; }
.khb-colcard-strip { position:relative; display:flex; align-items:center; justify-content:center; gap:8px; background:#eef2f4; padding:16px 12px; min-height:80px; }
.khb-colcard-strip img { max-width:46px; max-height:50px; width:auto; height:auto; image-rendering:pixelated; }
.khb-colcard-strip img.dim { filter:grayscale(1); opacity:.32; }
.khb-colcard-strip .more { background:#fff; border-radius:8px; padding:3px 9px; font-size:12px; font-weight:700; color:#8a9aa3; box-shadow:0 2px 0 #d7dde5; }
.khb-colcard-ribbon { position:absolute; top:9px; right:9px; width:24px; height:24px; border-radius:50%; background:#7bc143; color:#fff; display:flex; align-items:center; justify-content:center; font-size:15px; box-shadow:0 2px 0 #5f9c31; }
.khb-colcard-bd { padding:11px 13px 13px; display:flex; flex-direction:column; gap:8px; }
.khb-colcard-name { font-size:13.5px; font-weight:700; color:#2d3b41; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-colcard-meta { display:flex; align-items:center; justify-content:space-between; font-size:12px; color:#8a9aa3; font-weight:700; }
.khb-colcard-meta b { color:#f7941d; }
.khb-colcard-meta b.done { color:#5f9c31; }
.khb-colcard-meta b.muted { color:#c3cbd6; }

/* barra de progresso */
.khb-colbar { height:8px; border-radius:99px; background:#eef2f4; overflow:hidden; }
.khb-colbar span { display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,#f7941d,#ffb04a); transition:width .3s; }
.khb-colbar.done span { background:linear-gradient(90deg,#7bc143,#9ed860); }

/* selo Completa */
.khb-col-seal { display:inline-flex; align-items:center; gap:4px; background:#e4f6d8; color:#4e932a; font-size:12px; font-weight:700; padding:3px 10px; border-radius:8px; }

/* album expandido */
.khb-col-back { margin-bottom:14px; }
.khb-colfull-hd { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:8px; }
.khb-colfull-tx h3 { font-size:19px; font-weight:700; color:#2d3b41; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.khb-colfull-grp { font-size:12px; color:#8a9aa3; font-weight:600; margin-top:3px; display:block; }
.khb-colfull-count { font-size:17px; font-weight:700; color:#2d3b41; white-space:nowrap; }
.khb-colfull-count b { color:#a7b3ba; }
.khb-colfull-prog { display:flex; align-items:center; gap:11px; margin-bottom:18px; }
.khb-colfull-prog .khb-colbar { flex:1; height:11px; }
.khb-colpct { font-size:13px; font-weight:700; color:#5f9c31; }
.khb-col-tiles { display:grid; grid-template-columns:repeat(auto-fill,minmax(98px,1fr)); gap:12px; }
.khb-coltile { display:flex; flex-direction:column; align-items:center; gap:6px; padding:12px 6px 9px; background:#fff; border-radius:12px; box-shadow:0 4px 0 #e7eaf1; position:relative; text-decoration:none; transition:.12s; }
.khb-coltile:hover { transform:translateY(-2px); }
.khb-coltile img { width:auto; height:auto; max-width:52px; max-height:52px; image-rendering:pixelated; }
.khb-coltile .nm { font-size:10.5px; color:#5a6b73; text-align:center; line-height:1.2; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.khb-coltile.miss { background:#f4f6f8; box-shadow:0 4px 0 #e2e6ea; }
.khb-coltile.miss img { filter:grayscale(1); opacity:.3; }
.khb-coltile.miss .nm { color:#b3bcc4; }
.khb-coltile .qty { position:absolute; top:5px; right:5px; background:#f7941d; color:#fff; font-size:10px; font-weight:700; padding:1px 6px; border-radius:7px; z-index:2; }

@media (max-width:600px){
  .khb-col-cards { grid-template-columns:1fr 1fr; }
  .khb-col-overview { flex-wrap:wrap; }
}

/* painel lateral "Meu Estoque" (aba Coleções) no padrao khb */
.khb-stkmini { padding:0 !important; overflow:hidden; }
.khb-stkmini .kcard-hd { padding:14px 16px; }
.khb-stkmini .kcard-hd h2 { display:flex; align-items:center; gap:6px; font-size:14px; }
.khb-stkmini-bd { padding:13px 14px; }
.khb-stkmini-empty { text-align:center; color:#8a9aa3; font-size:12.5px; padding:14px 0; margin:0; }
.khb-stkmini-stats { display:flex; gap:9px; margin-bottom:12px; }
.khb-stkmini-stat { flex:1; background:#eef2f4; border-radius:11px; padding:9px 6px; text-align:center; }
.khb-stkmini-stat span { display:block; font-size:9.5px; font-weight:700; letter-spacing:.4px; color:#a7b3ba; text-transform:uppercase; }
.khb-stkmini-stat b { font-size:16px; font-weight:700; display:inline-flex; align-items:center; gap:4px; margin-top:3px; }
.khb-stkmini-stat b.blue { color:#29a8e0; }
.khb-stkmini-stat b.gold { color:#e6a413; }
.khb-stkmini-stat b img { width:15px; height:15px; image-rendering:pixelated; }
.khb-stkmini-list { display:flex; flex-direction:column; gap:7px; max-height:360px; overflow-y:auto; }
.khb-stkmini-item { display:flex; align-items:center; gap:9px; background:#f6f8fa; border-radius:10px; padding:6px 10px; }
.khb-stkmini-item img { width:26px; height:26px; flex:0 0 auto; image-rendering:pixelated; object-fit:contain; }
.khb-stkmini-item .nm { font-size:12px; color:#2d3b41; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; min-width:0; }
.khb-stkmini-item .qty { font-size:11.5px; font-weight:700; color:#8a9aa3; flex:0 0 auto; }

/* =========================================================================
   ESTOQUE — gerenciador de inventário repaginado em khb
   ========================================================================= */
.khb .khb-stk, .khb .khb-cat { padding:0 !important; overflow:hidden; transform:translateZ(0); margin-bottom:18px; }
.khb .khb-stk > .card-header { border-bottom:2px solid #eef2f4 !important; padding:14px 16px !important; background:transparent !important; position:relative; }
.khb .khb-stk .card-title { font-size:15px; font-weight:700; color:#2d3b41; display:flex; align-items:center; gap:6px; }
.khb .khb-stk > .card-body { padding:16px !important; }
.khb .khb-cat > .card-body { padding:6px 8px 12px !important; }
.khb .khb-cat .kcard-hd h2 { margin-right:auto; }

/* barra de filtros do catálogo (tintada) */
.khb .khb-catbar { background:#eaf1fb !important; border-bottom:2px solid #e2e9f2 !important; padding:13px 16px !important; }
.khb .khb-catbar .app-search .form-control, .khb .khb-catbar .form-select { background:#fff !important; border:0 !important; border-radius:10px !important; box-shadow:0 3px 0 #ccd2dd; }
.khb .khb-catbar .form-check-label { font-size:12.5px; font-weight:600; color:#5a6b73; }

/* view toggle lista/grade */
.khb .hb-stk-view { display:inline-flex; background:#eef2f4; border-radius:10px; padding:3px; gap:2px; }
.khb .hb-stk-viewbtn { border:0; background:none; width:32px; height:30px; border-radius:8px; color:#8a9aa3; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.khb .hb-stk-viewbtn.active { background:#f7941d; color:#fff; }

/* totais (tiles) */
.khb .hb-stk-totals { display:grid; grid-template-columns:repeat(auto-fit,minmax(108px,1fr)); gap:10px; margin-bottom:14px; }
.khb .hb-stk-tot { background:#eef2f4; border-radius:12px; padding:10px 8px; text-align:center; }
.khb .hb-stk-tot .k { display:block; font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; color:#a7b3ba; }
.khb .hb-stk-tot .v { display:block; font-size:19px; font-weight:700; color:#2d3b41; margin-top:2px; }

/* pastas (chips) */
.khb .hb-stk-folders { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.khb .hb-fld-chip, .khb .hb-fld-manage { border:0; background:#fff; box-shadow:0 4px 0 #ccd2dd; border-radius:11px; padding:8px 13px; font-size:12.5px; font-weight:700; color:#5a6b73; cursor:pointer; display:inline-flex; align-items:center; }
.khb .hb-fld-chip.active { background:#f7941d; color:#fff; box-shadow:0 4px 0 #d97d0a; }
.khb .hb-fld-chip .op { opacity:.6; margin-left:4px; font-weight:600; }
.khb .hb-fld-manage { background:#eef2f4; box-shadow:none; color:#8a9aa3; }

/* toolbar do meu estoque (tintada) */
.khb .hb-stk-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; background:#eaf1fb; border-radius:12px; padding:11px 13px; margin-bottom:14px; }
.khb .hb-stk-search { display:flex; align-items:center; gap:7px; background:#fff; border-radius:10px; padding:8px 12px; flex:1 1 200px; min-width:0; box-shadow:0 3px 0 #ccd2dd; }
.khb .hb-stk-search i { color:#a7b3ba; }
.khb .hb-stk-search input { border:0; outline:0; background:none; flex:1; min-width:0; font-size:13px; color:#2d3b41; }
.khb .hb-stk-chk { font-size:12.5px; font-weight:600; color:#5a6b73; display:inline-flex; align-items:center; gap:5px; cursor:pointer; }
.khb .hb-stk-sort { border:0; background:#fff; border-radius:10px; box-shadow:0 3px 0 #ccd2dd; padding:8px 12px; font-size:12.5px; font-weight:700; color:#5a6b73; cursor:pointer; }

/* meu estoque — lista */
.khb .hb-stk-thead { display:none; }
.khb .hb-stk-table { display:flex; flex-direction:column; gap:8px; }
.khb .hb-stk-row { display:flex; flex-wrap:wrap; align-items:center; gap:10px; background:#f6f8fa; border-radius:11px; padding:9px 12px; }
.khb .hb-stk-row .c-item { display:flex; align-items:center; gap:9px; min-width:0; flex:1 1 200px; }
.khb .hb-stk-row .c-item img { width:34px; height:34px; image-rendering:pixelated; object-fit:contain; flex:0 0 auto; }
.khb .hb-stk-row .c-item .tx { display:flex; flex-direction:column; min-width:0; }
.khb .hb-stk-row .c-item .nm { font-size:13px; font-weight:700; color:#2d3b41; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb .hb-stk-row .c-item .ct { font-size:11px; color:#8a9aa3; }
.khb .hb-stk-row .c-qty { display:inline-flex; align-items:center; gap:6px; }
.khb .hb-stk-row .c-qty b { min-width:18px; text-align:center; font-size:13px; }
.khb .hb-stk-row .c-site { color:#29a8e0 !important; font-weight:700; font-size:13px; min-width:44px; text-align:center; }
.khb .hb-stk-row .c-mine input { width:74px; background:#fff; border:0; border-radius:8px; box-shadow:0 2px 0 #d7dde5; padding:6px 8px; text-align:center; color:#e6a413; font-weight:700; font-size:12.5px; }
.khb .hb-stk-q { border:0; background:#eef2f4; width:26px; height:26px; border-radius:8px; color:#5a6b73; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.khb .hb-stk-tag { border:0; background:#eef2f4; width:30px; height:30px; border-radius:9px; color:#a7b3ba; cursor:pointer; }
.khb .hb-stk-tag.on { background:#e4f6d8; color:#4e932a; }
.khb .hb-fld-sel { border:0; background:#eef2f4; border-radius:9px; padding:6px 9px; font-size:12px; color:#5a6b73; font-weight:600; }
.khb .hb-stk-del { border:0; background:none; color:#c3cbd6; cursor:pointer; width:26px; height:26px; border-radius:7px; }
.khb .hb-stk-del:hover { background:#fdecec; color:#e0555a; }

/* meu estoque — grade */
.khb .hb-stk-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); gap:12px; }
.khb .hb-stk-card { background:#fff; border-radius:13px; box-shadow:0 5px 0 #ccd2dd; padding:12px; position:relative; text-align:center; display:flex; flex-direction:column; gap:7px; }
.khb .hb-stk-card.on-sale { box-shadow:0 5px 0 #b6d98f; }
.khb .hb-stk-card .hb-stk-del { position:absolute; top:6px; right:6px; }
.khb .hb-stk-saletag { position:absolute; top:8px; left:8px; background:#7bc143; color:#fff; width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12px; }
.khb .hb-stk-card-img { height:54px; display:flex; align-items:center; justify-content:center; }
.khb .hb-stk-card-img img { max-width:52px; max-height:52px; image-rendering:pixelated; }
.khb .hb-stk-card-nm { font-size:12px; font-weight:700; color:#2d3b41; text-decoration:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:block; }
.khb .hb-stk-card-qty { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.khb .hb-stk-card-vals { display:inline-flex; align-items:center; justify-content:center; gap:6px; font-size:12px; font-weight:700; }
.khb .hb-stk-card-vals input { width:56px; background:#eef2f4; border:0; border-radius:8px; padding:4px 6px; text-align:center; color:#e6a413; font-weight:700; }
.khb .hb-stk-card-vals .sep { color:#c3cbd6; }
.khb .hb-stk-cardsale { border:0; background:#eef2f4; border-radius:9px; padding:7px; font-size:12px; font-weight:700; color:#8a9aa3; cursor:pointer; }
.khb .hb-stk-cardsale.on { background:#7bc143; color:#fff; }

/* tabela do catálogo: controles inline khb */
.khb .khb-cat .rares-table input.form-control-sm { background:#eef2f4 !important; border:0 !important; border-radius:8px !important; box-shadow:none; }
.khb .khb-cat .rares-table .btn-icon { background:#eef2f4 !important; border:0 !important; border-radius:8px !important; color:#5a6b73 !important; }
.khb .khb-cat .rares-table td .form-control[style*="facc15"], .khb .khb-cat .rares-table input[style*="facc15"] { color:#e6a413 !important; }

/* modal de pastas */
.khb .hb-fb-dialog { border-radius:16px !important; box-shadow:0 12px 0 rgba(0,0,0,.12) !important; }
.khb .hb-fld-tag { border:0; background:#eef2f4; border-radius:8px; padding:4px 10px; font-size:11.5px; font-weight:600; color:#8a9aa3; cursor:pointer; }
.khb .hb-fld-tag.on { background:#f7941d; color:#fff; }

/* paginacao + aviso login */
.khb .khb-cat + * .btn-light, .khb .card-body > .d-flex .btn-light { border-radius:10px !important; }

@media (max-width:700px){ .khb .hb-stk-row { flex-direction:column; align-items:stretch; } }

/* fix modal preso: tira translateZ do card Meu Estoque (nao tem scroll; o modal position:fixed precisa do viewport) */
.khb .khb-stk { transform:none; }
/* alinhar cards do Estoque/Colecoes com a navbar (zera recuo da col) */
.khb-vrow2 > .col-12 { padding-left:0 !important; padding-right:0 !important; }
/* modal Gerenciar pastas no padrao khb */
.khb .hb-fb-dialog { border-radius:16px !important; overflow:hidden; max-width:520px; box-shadow:0 14px 0 rgba(20,30,45,.18) !important; }
.khb .hb-fb-dialog .card-header { border-bottom:2px solid #eef2f4 !important; padding:14px 16px !important; }
.khb .hb-fb-dialog .card-title { font-size:15px !important; font-weight:700 !important; color:#2d3b41; }
.khb .hb-fld-edit { border:2px solid #eef2f4 !important; border-radius:12px !important; padding:11px 12px !important; margin-bottom:10px !important; background:#f8fafc !important; }
.khb .hb-fld-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; max-height:120px; overflow-y:auto; }
.khb .hb-fld-tag { border:0; background:#eef2f4; border-radius:8px; padding:4px 10px; font-size:11px; font-weight:600; color:#8a9aa3; cursor:pointer; }
.khb .hb-fld-tag.on { background:#f7941d; color:#fff; }

/* botao "Nova pasta" do modal: khb (menos arredondado, maior, texto cabe) */
.khb .hb-fb-dialog .btn-soft-primary { background:#5b8def !important; color:#fff !important; border:0 !important; border-radius:11px !important; padding:10px 18px !important; font-size:13px !important; font-weight:700 !important; box-shadow:0 4px 0 #4670c9; display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.khb .hb-fb-dialog .btn-soft-primary:active { transform:translateY(2px); box-shadow:0 2px 0 #4670c9; }

/* =========================================================================
   DETALHE DO RARO (/valores/[slug]) — repaginado em khb, valor valorizado (verde)
   ========================================================================= */
.khb-rare .row.mt-3 { margin-bottom:16px; }
.khb-rare-name { display:flex; align-items:center; gap:12px; font-size:24px; font-weight:700; color:#2d3b41; margin:0; }
.khb-rare-name .khb-phead-bar { height:32px; }

/* card principal */
.khb-rare .card { border-radius:14px !important; }
.khb-rare > .row > .col-12 > .card { box-shadow:0 8px 0 #ccd2dd; }
.khb-rare .card .card { box-shadow:none !important; }

/* caixa da imagem (NAO mexer na imagem — só a moldura) */
.khb .hb-rare-imgbox { border-radius:13px !important; overflow:hidden; min-height:300px; }

/* chip de tendência */
.khb .hb-trend { display:inline-flex !important; align-items:center; gap:5px; font-size:12.5px; font-weight:700; padding:5px 12px; border-radius:9px; }
.khb .hb-trend-up { background:#e4f6d8; color:#4e932a; }
.khb .hb-trend-down { background:#fde0e1; color:#d83a3f; }
.khb .hb-trend-stable { background:#eef2f4; color:#8a9aa3; }

/* badge de categoria -> tag khb */
.khb .hb-rare-hero + p, .khb-rare .badge.rounded-pill { border-radius:9px !important; }
.khb-rare .badge.bg-secondary-subtle { background:#eef2f4 !important; color:#5a6b73 !important; font-weight:700; font-size:12px; padding:5px 12px !important; border-radius:9px !important; }

/* VALOR ATUAL — bloco verde/escuro valorizado (o astro) */
.khb .hb-rare-hero { background:linear-gradient(135deg,#3a5560,#2b434d) !important; border:0 !important; border-radius:14px !important; padding:16px 20px !important; color:#fff !important; box-shadow:0 6px 0 #223740; margin-top:4px; }
.khb .hb-rare-hero .lbl { font-size:11px !important; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:#8fd14f !important; }
.khb .hb-rare-hero .val { display:flex; align-items:center; gap:11px; margin-top:5px; }
.khb .hb-rare-hero .val img { width:36px !important; height:36px !important; image-rendering:pixelated; }
.khb .hb-rare-hero .val .num { font-size:36px !important; font-weight:800; color:#fff !important; line-height:1; }
.khb .hb-rare-hero .val .cur { font-size:14px; color:#9fb3bc !important; font-weight:600; }
.khb .hb-rare-hero .sub { font-size:12px !important; color:#9fb3bc !important; margin-top:7px; }
.khb .hb-rare-hero .sub strong { color:#cdd9df; }

/* specs (composição, preço, data) */
.khb .hb-rare-specs { display:flex; flex-direction:column; gap:0; }
.khb .hb-rare-spec { display:flex; align-items:center; gap:12px; padding:11px 2px !important; border-bottom:1px solid #f1f4f7; }
.khb .hb-rare-spec:last-child { border-bottom:0; }
.khb .hb-rare-spec .ic { width:34px; height:34px; border-radius:9px; background:#eef2f4; display:flex; align-items:center; justify-content:center; color:#8a9aa3; flex:0 0 auto; }
.khb .hb-rare-spec .ic i { font-size:17px; }
.khb .hb-rare-spec .k { font-size:13px; color:#5a6b73; font-weight:600; margin-right:auto; }
.khb .hb-rare-spec .v { font-size:14px; font-weight:700; color:#2d3b41; text-align:right; }

/* cards Disponibilidade / Categorias / Histórico: header com barrinha */
.khb-rare .card-header { border-bottom:2px solid #eef2f4 !important; background:transparent !important; position:relative; padding:14px 16px !important; }
.khb-rare .card-header .card-title { font-size:15px; font-weight:700; color:#2d3b41; padding-left:14px; }
.khb-rare .card-header::before { content:""; position:absolute; left:16px; top:50%; transform:translateY(-50%); width:4px; height:18px; border-radius:0 4px 4px 0; background:#f7941d; }

/* histórico: linhas de mudança de valor no padrao khb */
.khb-rare .hb-rare-histrow, .khb .hb-rare-histrow { background:#f6f8fa !important; border:0 !important; border-radius:11px !important; }

/* detalhe: titulo num bloco branco + acoes com botoes khb */
.khb-rare-head { padding:15px 20px !important; margin-bottom:18px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.khb-rare-head .khb-rare-name { font-size:22px; }
.khb-rare-actions { display:flex; gap:9px; align-items:center; flex-wrap:wrap; }
.khb-rare-actions .kbtn { padding:9px 16px; font-size:13px; }

/* icones dos botoes de acao do detalhe: tamanho consistente */
.khb-rare-actions .kbtn i { font-size:16px; }

/* DETALHE v2 — Ficha de Colecionavel (card esquerda sticky + detalhes direita) */
.khb-rare-grid { display:grid; grid-template-columns:370px minmax(0,1fr); gap:18px; align-items:start; }
.khb-ficha { position:sticky; top:90px; }
.khb-ficha-card { padding:0 !important; overflow:hidden; }
.khb .khb-ficha-img { min-height:240px !important; border-radius:0 !important; display:flex; align-items:center; justify-content:center; padding:24px; }
.khb-ficha-bd { padding:16px 18px 20px; }
.khb-ficha-badges { display:flex; gap:8px; margin-bottom:12px; flex-wrap:wrap; align-items:center; }
.khb-ficha-cat { background:#eef2f4; color:#5a6b73; font-weight:700; font-size:12px; padding:5px 12px; border-radius:9px; }
.khb .khb-ficha .hb-rare-hero { margin-top:0; }
.khb-ficha-desc { font-size:13px; color:#7c8b93; line-height:1.5; margin:13px 0 0; }
.khb-ficha-note { font-size:13px; color:#2d3b41; margin:10px 0 0; }
.khb-ficha-specs { margin-top:14px; }
.khb-ficha-warn { margin-top:13px; background:#fff7ec; color:#a06a1f; border-radius:11px; padding:11px 13px; font-size:12px; display:flex; gap:8px; align-items:flex-start; line-height:1.4; }
.khb-ficha-warn i { font-size:16px; flex:0 0 auto; margin-top:1px; }
.khb-rare-main > * { margin-bottom:18px; }
.khb-rare-main > *:last-child { margin-bottom:0; }
@media (max-width:900px){ .khb-rare-grid { grid-template-columns:1fr; } .khb-ficha { position:static; } }

/* DETALHE fixes: ficha = 1 bloco com borda (sem linha da imagem), specs c/ margem, historico menos indentado */
.khb-ficha-card { border:2px solid #e7ecf1; }
.khb .khb-ficha-img { border-bottom:0 !important; }
.khb .hb-rare-spec { padding-left:12px !important; padding-right:14px !important; }
.khb .hb-rare-histrow { padding:10px 12px !important; gap:10px; }
.khb .hb-rare-histrow .arr { width:28px; height:28px; }

/* Historico do raro em largura cheia (abaixo do grid ficha+detalhes) */
.khb-rare-histfull { margin-top:18px; }

/* DETALHE v3 — TUDO num quadro branco unico (borda ate o fim + sombra + espaco pro footer) */
.khb-rare-box { padding:20px !important; border:2px solid #e7ecf1; margin-bottom:28px; transform:translateZ(0); }
.khb-rare-box .khb-rare-grid { margin:0; }
.khb-rare-box .khb-ficha { position:static; }
.khb-rare-box .khb-ficha-card { border:0 !important; box-shadow:none !important; overflow:visible; }
.khb-rare-box .khb-ficha-card .khb-ficha-img { border-radius:13px !important; overflow:hidden; }
.khb-rare-box .khb-rare-main > .kcard, .khb-rare-box .card, .khb-rare-box .khb-rare-histfull .kcard { border:0 !important; box-shadow:none !important; }
.khb-rare-box .khb-rare-main > .kcard { border:2px solid #eef2f4 !important; border-radius:13px; }
.khb-rare-box .khb-rare-histfull { margin-top:18px; border-top:2px solid #eef2f4; padding-top:18px; }
.khb-rare-box .khb-rare-histfull .kcard { border:2px solid #eef2f4 !important; border-radius:13px; }

/* titulo agora e uma SECAO no topo do box unico (sem card/sombra propria) */
.khb-rare-box > .khb-rare-head { padding:2px 0 18px !important; margin-bottom:20px !important; border-bottom:2px solid #eef2f4; box-shadow:none !important; background:transparent !important; }

/* detalhe do raro: wrapper transparente -> o canto redondo do box mostra o AZUL atras (nao cinza) */
.khb.khb-page.khb-rare { background:transparent; }
/* botoes Historico/Grafico no padrao khb (quase-quadrado, laranja ativo) */
.khb-rare .hb-cat-chip { border:0 !important; background:#eef2f4 !important; border-radius:9px !important; padding:7px 14px !important; font-size:12.5px !important; font-weight:700 !important; color:#8a9aa3 !important; cursor:pointer; }
.khb-rare .hb-cat-chip.active { background:#f7941d !important; color:#fff !important; box-shadow:0 3px 0 #d97d0a !important; }

/* GERAL: paginas internas comecam com card branco -> wrapper transparente
   deixa o canto arredondado mostrar o AZUL atras (igual detalhe do raro) */
.khb.khb-page { background:transparent; }

/* mobile: tira das colecoes mostra 3 mobis (4o cortava na borda) */
@media (max-width:600px){ .khb-colcard-strip img:nth-of-type(4){display:none} }

/* fix mobile: barrinha ancorada no TITULO (nao no header) — nao desgruda quando o header quebra em 2 linhas */
.khb-rare .card-header::before { content:none; }
.khb-rare .card-header .card-title { position:relative; }
.khb-rare .card-header .card-title::before { content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:4px; height:18px; border-radius:0 4px 4px 0; background:#f7941d; }

/* =========================================================================
   GUIAS — Central de Conhecimento (CTA comunidade + estantes por categoria)
   ========================================================================= */
.khb-cta-guia { display:flex; align-items:center; gap:14px; background:linear-gradient(135deg,#eaf6df,#f3faec); border:2px solid #d6ecc2; border-radius:14px; padding:14px 18px; margin-bottom:18px; text-decoration:none; }
.khb-cta-ic { width:46px; height:46px; flex:0 0 auto; border-radius:12px; background:#7bc143; color:#fff; display:flex; align-items:center; justify-content:center; font-size:24px; box-shadow:0 4px 0 #5f9c31; }
.khb-cta-tx { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.khb-cta-tx b { font-size:15px; color:#2d3b41; }
.khb-cta-tx small { font-size:12.5px; color:#6f8b58; }
.khb-cta-guia .kbtn { flex:0 0 auto; }
.khb-cta-guia:hover .kbtn { background:#8bd150; }

.khb-shelf { margin-bottom:24px; }
.khb-shelf:last-of-type { margin-bottom:6px; }
.khb-shelf-hd { display:flex; align-items:center; gap:9px; margin-bottom:12px; }
.khb-shelf-hd .kaccent { position:static; transform:none; width:4px; height:18px; flex:0 0 auto; }
.khb-shelf-hd h2 { font-size:16px; font-weight:700; color:#2d3b41; margin-right:auto; }
.khb-shelf-hd span { font-size:12px; font-weight:700; color:#a7b3ba; }

.khb-gcard-comm { position:absolute; right:11px; top:11px; display:inline-flex; align-items:center; gap:5px; background:#7bc143; color:#fff; font-size:11px; font-weight:700; padding:4px 11px; border-radius:8px; box-shadow:0 3px 0 #5f9c31; }
.khb-art-comm { right:16px; top:16px; left:auto; font-size:12px; padding:5px 13px; }
.khb-au-role.comm { background:#7bc143; color:#0d1f0a; }
.khb-comm a.criar { background:#7bc143; box-shadow:0 4px 0 #5f9c31; color:#0d1f0a; }

/* =========================================================================
   EVENTOS — Agenda do Hotel (ao vivo / proximos c/ countdown / encerrados)
   ========================================================================= */
.khb-evacts { padding:16px 18px 14px !important; margin-bottom:18px; }
.khb-acts-ev { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:10px; }
.khb-acts-ev > .col { padding:0 !important; }
.khb-acts-ev .card.activity-card { margin-top:0 !important; }

.khb-ev-dot { width:12px; height:12px; border-radius:50%; background:#f4494e; flex:0 0 auto; box-shadow:0 0 0 0 rgba(244,73,78,.5); animation:khbpulse 1.6s infinite; }
@keyframes khbpulse { 0%{box-shadow:0 0 0 0 rgba(244,73,78,.45)} 70%{box-shadow:0 0 0 9px rgba(244,73,78,0)} 100%{box-shadow:0 0 0 0 rgba(244,73,78,0)} }
.khb-ev-live { display:inline-flex; align-items:center; gap:6px; background:#f4494e; color:#fff; font-size:11px; font-weight:800; letter-spacing:.5px; padding:4px 11px; border-radius:8px; box-shadow:0 3px 0 #c93338; position:absolute; right:11px; top:11px; }
.khb-ev-live i { width:7px; height:7px; border-radius:50%; background:#fff; animation:khbblink 1s infinite; }
@keyframes khbblink { 50%{opacity:.25} }
.khb-art-live { right:16px; top:16px; font-size:12px; }
.khb-evsec-now .khb-ncard { box-shadow:0 8px 0 #f0b9bb; }

.khb-ev-soonbar { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 15px; border-top:2px solid #eef2f4; background:#fff9f0; }
.khb-ev-count { display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:700; color:#d97d0a; }
.khb-ev-remind { display:inline-flex; align-items:center; gap:5px; background:#f7941d; color:#fff !important; font-size:12px; font-weight:700; padding:6px 12px; border-radius:9px; box-shadow:0 3px 0 #d97d0a; white-space:nowrap; }
.khb-ev-remind:active { transform:translateY(2px); box-shadow:0 1px 0 #d97d0a; }
.khb-ev-remind.big { font-size:13px; padding:9px 16px; }

.khb-evsec-past .khb-ncard { opacity:.72; }
.khb-evsec-past .khb-ncard:hover { opacity:1; }
.khb-evsec-past .khb-ncard-cover { filter:saturate(.55); }
.khb-evsec-past .khb-ncard:hover .khb-ncard-cover { filter:none; }

/* bloco Quando (evento individual) */
.khb-ev-quando { background:#f6f8fa; border:2px solid #eef2f4; border-radius:13px; padding:13px 16px; margin-bottom:16px; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.khb-ev-quando.live { background:#fff5f5; border-color:#f8d7d8; }
.khb-ev-quando .q-item { display:flex; flex-direction:column; gap:2px; }
.khb-ev-quando .q-k { font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; color:#a7b3ba; display:inline-flex; align-items:center; gap:4px; }
.khb-ev-quando .q-item b { font-size:14px; color:#2d3b41; }
.khb-ev-quando .q-actions { margin-left:auto; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.khb-ev-quando .khb-ev-live { position:static; }

/* ===== EVENTOS v2: calendario (esq) + cards tamanho da home (dir) ===== */
.khb-ev-row { display:grid; grid-template-columns:330px minmax(0,1fr); gap:20px; align-items:start; }
.khb-ev-cal { position:sticky; top:90px; }
.khb-cal-card { background:#f6f8fa; border:2px solid #eef2f4; border-radius:13px; padding:13px; }
.khb-cal-hd { display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.khb-cal-my { flex:1; display:flex; gap:6px; min-width:0; }
.khb-cal-my select, .khb-cal-my input { border:0; background:#fff; border-radius:9px; box-shadow:0 3px 0 #d7dde5; padding:7px 8px; font-family:inherit; font-weight:700; font-size:12.5px; color:#2d3b41; min-width:0; }
.khb-cal-my select { flex:1; }
.khb-cal-my input { width:64px; text-align:center; }
.khb-cal-week { display:grid; grid-template-columns:repeat(7,1fr); gap:2px; margin-bottom:4px; }
.khb-cal-week span { text-align:center; font-size:10px; font-weight:700; color:#a7b3ba; }
.khb-cal-days { display:grid; grid-template-columns:repeat(7,1fr); gap:2px; }
.khb-cal-days .flatpickr-day { display:flex; align-items:center; justify-content:center; height:34px; border-radius:9px; font-size:12.5px; font-weight:600; color:#2d3b41; cursor:pointer; position:relative; }
.khb-cal-days .flatpickr-day:hover { background:#eef2f4; }
.khb-cal-days .prevMonthDay, .khb-cal-days .nextMonthDay { color:#c3cbd6; }
.khb-cal-days .today { box-shadow:inset 0 0 0 2px #29a8e0; }
.khb-cal-days .has-event { background:#fff; box-shadow:0 2px 0 #e3e9f0; font-weight:700; }
.khb-cal-days .has-event::after { content:""; position:absolute; bottom:4px; left:50%; transform:translateX(-50%); width:5px; height:5px; border-radius:50%; background:#f7941d; }
.khb-cal-days .selected { background:#f7941d !important; color:#fff !important; box-shadow:0 2px 0 #d97d0a; }
.khb-cal-days .selected::after { background:#fff; }
.khb-cal-agenda { margin-top:12px; background:#fff; border:2px solid #eef2f4; border-radius:13px; padding:12px 14px; }
.khb-cal-agtitle { font-size:12.5px; font-weight:700; color:#2d3b41; margin-bottom:6px; }
.khb-cal-agtitle a { color:#29a8e0; font-weight:700; }
.khb-cal-aglist { list-style:none; margin:0; padding:0; font-size:12.5px; }
.khb-cal-aglist li a { display:flex !important; }
.khb-cal-aglist .text-muted { color:#a7b3ba !important; font-size:11.5px; }

.khb-evgrid2 { display:grid; grid-template-columns:repeat(auto-fill,minmax(215px,1fr)); gap:14px; }
.khb-evc-wrap { display:flex; flex-direction:column; }
.khb-evc-wrap .hb-evc { flex:1; margin-bottom:0; }
.khb-evc-host { font-size:11px; font-weight:600; color:#8a9aa3; display:flex; align-items:center; gap:4px; margin-top:-2px; }
.khb-ev-remind.wfull { justify-content:center; margin-top:8px; }
.khb-evsec-past .hb-evc { opacity:.72; }
.khb-evsec-past .hb-evc:hover { opacity:1; }
.khb-evsec-past .hb-evc-img { filter:saturate(.55); }
.khb-evsec-past .hb-evc:hover .hb-evc-img { filter:none; }
.khb-evsec-now .hb-evc { box-shadow:0 4px 0 #f0b9bb; }

@media (max-width:900px){
  .khb-ev-row { grid-template-columns:1fr; }
  .khb-ev-cal { position:static; }
}

/* ===== EVENTOS v3: KANBAN Hoje | Proximos | Encerrados ===== */
.khb-kanban { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:start; }
.khb-kb-col { background:#f6f8fa; border:2px solid #eef2f4; border-radius:13px; padding:12px; }
.khb-kb-hd { display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.khb-kb-hd h2 { font-size:14px; font-weight:700; color:#2d3b41; margin-right:auto; }
.khb-kb-hd .kaccent { position:static; transform:none; width:4px; height:16px; flex:0 0 auto; }
.khb-kb-col.soon .kaccent { background:#f7941d; }
.khb-kb-col.past .kaccent { background:#3d7688; }
.khb-kb-count { min-width:24px; height:22px; padding:0 7px; border-radius:8px; background:#fff; box-shadow:0 2px 0 #dfe5ec; font-size:11.5px; font-weight:700; color:#8a9aa3; display:inline-flex; align-items:center; justify-content:center; }
.khb-kb-col.hoje { background:#fff7f2; border-color:#fde3d2; }
.khb-kb-col.hoje .khb-kb-count { color:#e0653a; }
.khb-kb-cards { display:flex; flex-direction:column; gap:12px; }
.khb-kb-cards .hb-evc { background:#fff; }
.khb-kb-empty { text-align:center; color:#a7b3ba; font-size:12px; font-weight:600; padding:22px 6px; border:2px dashed #dfe5ec; border-radius:11px; display:flex; flex-direction:column; align-items:center; gap:6px; }
.khb-kb-empty i { font-size:20px; }
.khb-kb-col.past .hb-evc { opacity:.78; }
.khb-kb-col.past .hb-evc:hover { opacity:1; }
.khb-kb-col.past .hb-evc-img { filter:saturate(.55); }
.khb-kb-col.past .hb-evc:hover .hb-evc-img { filter:none; }
.khb-cal-agenda2 { margin-top:10px; border-top:2px solid #e7ecf2; padding-top:10px; }
@media (max-width:1240px){ .khb-kanban { grid-template-columns:1fr; } }

/* EVENTOS v4: padronizar titulos do kanban (todos barrinha) + marcador HOJE limpo */
.khb-kb-hd .kaccent { background:#3d7688; }
.khb-kb-col.hoje .kaccent { background:#f4494e; }
.khb-kb-col.soon .kaccent { background:#f7941d; }
.khb-kb-col.past .kaccent { background:#3d7688; }
/* dia de hoje no calendario: destaque limpo (anel completo, sem barra torta) */
.khb-cal-days .flatpickr-day.today,
.khb-cal-days .flatpickr-day.today:hover {
  box-shadow:none !important;
  border:0 !important;
  background:#eaf6fc !important;
  color:#1583b8 !important;
  font-weight:700 !important;
}
.khb-cal-days .flatpickr-day.today::before {
  content:"";
  position:absolute; inset:0;
  border:2px solid #29a8e0;
  border-radius:9px;
  pointer-events:none;
}
.khb-cal-days .flatpickr-day.selected.today { background:#f7941d !important; color:#fff !important; }
.khb-cal-days .flatpickr-day.selected.today::before { border-color:#d97d0a; }

/* EVENTOS v5: 2 colunas (Hoje 1 card-col / Proximos 2 card-cols) + encerrados recolhivel */
.khb-kanban { grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
.khb-kb-cards { display:grid; gap:12px; }
.khb-kb-col.hoje .khb-kb-cards { grid-template-columns:1fr; }
.khb-kb-col.soon .khb-kb-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
.khb-kb-more { margin-top:10px; text-align:center; font-size:11.5px; font-weight:700; color:#8a9aa3; }
.khb-ev-archive { margin-top:16px; }
.khb-ev-arcbtn { width:100%; display:flex; align-items:center; gap:9px; background:#f6f8fa; border:2px solid #eef2f4; border-radius:12px; padding:11px 15px; font-family:inherit; font-size:13.5px; font-weight:700; color:#5a6b73; cursor:pointer; }
.khb-ev-arcbtn > span:first-of-type { margin-right:auto; }
.khb-ev-arcbtn .arc-chev { transition:transform .18s; color:#a7b3ba; }
.khb-ev-arcbtn.open .arc-chev { transform:rotate(180deg); }
.khb-ev-arcbtn:hover { border-color:#dfe5ec; }
.khb-ev-arcbody { margin-top:12px; }
.khb-ev-archive .hb-evc { opacity:.82; }
.khb-ev-archive .hb-evc:hover { opacity:1; }
.khb-ev-archive .hb-evc-img { filter:saturate(.6); }
.khb-ev-archive .hb-evc:hover .hb-evc-img { filter:none; }
@media (max-width:1240px){
  .khb-kanban { grid-template-columns:1fr; }
  .khb-kb-col.soon .khb-kb-cards { grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); }
}
@media (max-width:560px){ .khb-kb-col.soon .khb-kb-cards { grid-template-columns:1fr; } }

/* FIX: flatpickr vendor width:14.28%/max-width:39px espreme celulas no grid -> neutralizar */
.khb-cal-days .flatpickr-day { width:auto !important; max-width:none !important; line-height:normal !important; border:0; box-sizing:border-box; }

/* =========================================================================
   INSPIRAÇÕES — Galeria & Pódio
   ========================================================================= */
/* phead com CTA e data */
.khb-phead { display:flex; align-items:flex-start; gap:12px; flex-wrap:wrap; }
.khb-phead-tx { flex:1; min-width:200px; }
.khb-phead-dt { font-size:13px; font-weight:700; color:#a7b3ba; margin-left:10px; }
.khb-phead-cta { flex:0 0 auto; align-self:center; }
.insp-detail { position:relative; }
.khb-crumb { flex-basis:100%; display:inline-flex; align-items:center; gap:4px; background:none; border:0; padding:0; margin-bottom:4px; font-family:inherit; font-size:12.5px; font-weight:700; color:#29a8e0; cursor:pointer; }
.khb-crumb:hover { text-decoration:underline; }

/* chips de tipo de quarto */
.khb-tagrow { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; align-items:center; }
.khb-tagrow .lbl { font-size:11.5px; font-weight:700; color:#a7b3ba; margin-right:2px; }
.khb-tagrow .mut { font-size:12px; color:#a7b3ba; }
.khb-chip { border:0; font-family:inherit; cursor:pointer; background:#eef2f4; color:#5a6b73; font-size:12px; font-weight:700; padding:6px 12px; border-radius:9px; text-transform:capitalize; box-shadow:0 2px 0 #dfe5ec; }
.khb-chip:disabled { opacity:.45; cursor:default; }
.khb-chip.on { background:#29a8e0; color:#fff; box-shadow:0 2px 0 #1583b8; }
.khb-chip-clear { background:none !important; box-shadow:none !important; color:#a7b3ba; text-decoration:underline; text-transform:none; }

/* pills de hotel */
.khb-hotpills { display:flex; gap:8px; flex-wrap:wrap; }
.khb-insp-tabs { margin-top:16px; }
.khb-hotpill { border:0; font-family:inherit; cursor:pointer; display:inline-flex; align-items:center; gap:7px; background:#f6f8fa; color:#5a6b73; font-size:13px; font-weight:700; padding:8px 16px; border-radius:10px; box-shadow:0 3px 0 #e2e7ee; }
.khb-hotpill .n { font-size:11px; opacity:.75; font-weight:800; }
.khb-hotpill:disabled { opacity:.4; cursor:default; }
.khb-hotpill.on { color:#fff; }
.khb-hotpill.on.br { background:#57b846; box-shadow:0 3px 0 #429033; }
.khb-hotpill.on.en { background:#3b82d6; box-shadow:0 3px 0 #2c63a6; }
.khb-hotpill.on.es { background:#f4494e; box-shadow:0 3px 0 #c93338; }
.khb-hotpill.on.all { background:#29a8e0; box-shadow:0 3px 0 #1583b8; }

.khb-hbadge { display:inline-block; font-size:10.5px; font-weight:800; color:#fff; padding:3px 8px; border-radius:7px; letter-spacing:.4px; }
.khb-hbadge.br { background:#57b846; } .khb-hbadge.en { background:#3b82d6; } .khb-hbadge.es { background:#f4494e; }

.khb-insp-count { font-size:12.5px; font-weight:700; color:#8a9aa3; margin-top:14px; }
.khb-insp-count b { color:#29a8e0; text-transform:capitalize; }
.khb-insp-sechd { margin-top:22px; }

/* galeria de concursos */
.khb-cgrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; margin-top:16px; }
.khb-ccard { display:flex; flex-direction:column; cursor:pointer; overflow:hidden; padding:0 !important; transition:transform .12s; }
.khb-ccard:hover { transform:translateY(-3px); }
.khb-ccard .cover { position:relative; aspect-ratio:16/9; background:#0d1b2a; overflow:hidden; }
.khb-ccard .cover img { width:100%; height:100%; object-fit:cover; display:block; }
.khb-ccard .cover .ph, .khb-rmcard .fr .ph, .khb-pod .frame .ph { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color:#4a5a6a; font-size:26px; }
.khb-ccard .cover .hotels { position:absolute; top:10px; right:10px; display:flex; gap:5px; }
.khb-ccard .cover .cnt { position:absolute; left:10px; bottom:10px; display:inline-flex; align-items:center; gap:5px; background:rgba(0,0,0,.62); color:#fff; font-size:11.5px; font-weight:700; padding:4px 10px; border-radius:8px; }
.khb-ccard .bd { padding:13px 15px 15px; }
.khb-ccard .bd h3 { font-size:15.5px; font-weight:800; color:#2d3b41; margin:0 0 3px; }
.khb-ccard .bd .dt { font-size:11.5px; color:#a7b3ba; font-weight:700; }
.khb-ccard .bd p { font-size:12.5px; color:#8a9aa3; margin:7px 0 0; line-height:1.45; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

/* pódio */
.khb-podium { display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:14px; align-items:end; margin:14px 0 8px; }
.khb-podium.pods-1 { grid-template-columns:minmax(0,420px); justify-content:center; }
.khb-podium.pods-2 { grid-template-columns:1fr 1fr; max-width:640px; margin-left:auto; margin-right:auto; align-items:end; }
.khb-pod { cursor:pointer; }
.khb-pod .frame { position:relative; border-radius:12px; overflow:hidden; background:#0d1b2a; aspect-ratio:4/3; border:3px solid var(--bd,#b9c2cc); box-shadow:0 5px 0 var(--sh,#95a0ab); }
.khb-pod .frame img { width:100%; height:100%; object-fit:cover; display:block; }
.khb-pod.p1 .frame { --bd:#f7b500; --sh:#c99f18; aspect-ratio:16/11; }
.khb-pod.p2 .frame { --bd:#b9c2cc; --sh:#93a0ac; }
.khb-pod.p3 .frame { --bd:#cd7f4b; --sh:#a5652f; }
.khb-pod .medal { position:absolute; top:7px; left:8px; font-size:22px; filter:drop-shadow(0 1px 1px rgba(0,0,0,.5)); }
.khb-pod .cap { text-align:center; margin-top:9px; padding:0 4px; }
.khb-pod .cap b { display:block; font-size:13.5px; font-weight:800; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-pod .cap small { display:inline-flex; align-items:center; gap:4px; font-size:11.5px; color:#8a9aa3; margin-top:1px; }

/* grade de quartos */
.khb-rmgrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; margin-top:12px; }
.khb-rmcard { cursor:pointer; overflow:hidden; display:flex; flex-direction:column; padding:0 !important; transition:transform .12s; }
.khb-rmcard:hover { transform:translateY(-3px); }
.khb-rmcard .fr { position:relative; aspect-ratio:16/10; background:#0d1b2a; overflow:hidden; }
.khb-rmcard .fr img { width:100%; height:100%; object-fit:cover; display:block; }
.khb-rmcard .pos { position:absolute; top:8px; left:8px; background:#2d3b41; color:#fff; font-size:11px; font-weight:800; padding:3px 8px; border-radius:7px; }
.khb-rmcard .bd { padding:9px 11px 11px; }
.khb-rmcard .bd b { display:block; font-size:13px; font-weight:800; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-rmcard .bd .by { display:flex; align-items:center; gap:4px; font-size:11px; color:#8a9aa3; margin-top:1px; }
.khb-rmcard .bd .tgs { display:flex; flex-wrap:wrap; gap:4px; margin-top:7px; }
.khb-rmtag { font-size:10px; font-weight:700; color:#5a6b73; background:#eef2f4; padding:2px 7px; border-radius:6px; text-transform:capitalize; }
.khb-rmtag.on { background:#29a8e0; color:#fff; }

/* lightbox */
.khb-lightbox { position:fixed; inset:0; z-index:1200; background:rgba(8,14,22,.9); display:flex; align-items:center; justify-content:center; padding:22px; }
.khb-lb-in { max-width:960px; width:100%; position:relative; }
.khb-lb-in img { width:100%; max-height:74vh; object-fit:contain; border-radius:12px; display:block; }
.khb-lb-x { position:absolute; top:-14px; right:-10px; width:36px; height:36px; border-radius:50%; border:0; background:#fff; color:#2d3b41; font-size:17px; cursor:pointer; box-shadow:0 3px 0 rgba(0,0,0,.3); display:flex; align-items:center; justify-content:center; }
.khb-lb-bar { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:14px; color:#fff; }
.khb-lb-pos { background:#f7b500; color:#3a2c00; font-size:12px; font-weight:800; padding:3px 10px; border-radius:8px; }
.khb-lb-bar strong { font-size:15px; }
.khb-lb-bar .by { color:rgba(255,255,255,.6); font-size:12.5px; }
.khb-lb-bar .lb-sug { margin-left:auto; }
.khb-lb-bar .tgs { flex-basis:100%; display:flex; flex-wrap:wrap; gap:5px; }

/* modal sugerir categorias */
.khb-modal { position:fixed; inset:0; z-index:1300; background:rgba(8,14,22,.72); display:flex; align-items:center; justify-content:center; padding:16px; }
.khb-modal-card { background:#fff; border-radius:16px; max-width:560px; width:100%; max-height:88vh; overflow-y:auto; box-shadow:0 22px 64px rgba(0,0,0,.45); }
.khb-modal-hd { display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:2px solid #eef2f4; }
.khb-modal-hd h3 { display:flex; align-items:center; gap:8px; font-size:16px; font-weight:800; color:#2d3b41; margin:0; }
.khb-modal-x { width:30px; height:30px; border-radius:9px; border:0; background:#f1f4f6; color:#8a9aa3; cursor:pointer; font-size:15px; }
.khb-modal-bd { padding:16px 18px 18px; }
.khb-modal-lead { font-size:13px; color:#8a9aa3; margin:0 0 14px; line-height:1.5; }
.khb-flabel { display:block; font-size:12px; font-weight:800; color:#5a6b73; margin:12px 0 6px; text-transform:uppercase; letter-spacing:.3px; }
.khb-flabel .mut { color:#a7b3ba; font-weight:700; text-transform:none; }
.khb-fselect, .khb-finput { width:100%; border:2px solid #eef2f4; border-radius:11px; padding:10px 12px; font-family:inherit; font-size:13.5px; color:#2d3b41; background:#fff; }
.khb-fselect:focus, .khb-finput:focus { outline:0; border-color:#bfe0f2; }
.khb-modal-pick { display:flex; align-items:center; gap:11px; border:2px solid #eef2f4; border-radius:12px; padding:9px; margin:12px 0; }
.khb-modal-pick .pic { width:76px; height:48px; border-radius:8px; overflow:hidden; background:#0d1b2a; flex:0 0 auto; }
.khb-modal-pick .pic img { width:100%; height:100%; object-fit:cover; }
.khb-modal-pick .inf { min-width:0; }
.khb-modal-pick .inf b { display:block; font-size:13.5px; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-modal-pick .inf small { display:block; font-size:11.5px; color:#8a9aa3; margin-top:2px; }
.khb-modal-pick .inf em { display:block; font-size:11px; color:#a7b3ba; font-style:normal; margin-top:3px; }
.khb-finput-row { display:flex; gap:8px; margin-top:10px; }
.khb-finput-row .khb-finput { flex:1; }
.khb-modal-alert { display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:12.5px; font-weight:600; padding:10px 13px; border-radius:11px; margin:14px 0; }
.khb-modal-alert.info { background:#eaf6fc; color:#1583b8; }
.khb-modal-alert.info span { display:inline-flex; align-items:center; gap:6px; }
.khb-modal-alert.info .kbtn { margin-left:auto; }
.khb-modal-alert.ok { background:#e9f8ef; color:#2a9d5a; }
.khb-modal-alert.warn { background:#fff5e9; color:#d97d0a; }
.khb-modal-ft { display:flex; gap:9px; margin-top:16px; }

@media (max-width:640px){
  .khb-podium, .khb-podium.pods-2 { grid-template-columns:1fr; max-width:340px; margin-left:auto; margin-right:auto; }
  .khb-pod.p1 { order:-1; }
  .khb-pod .frame, .khb-pod.p1 .frame { aspect-ratio:16/10; }
}

/* =========================================================================
   NOCO — Bazar do mercador
   ========================================================================= */
.khb-noco-hero { display:flex; align-items:center; gap:18px; background:linear-gradient(100deg,#eef7 f1,#f6f8fa); background:#f6f8fa; border:2px solid #eef2f4; border-radius:14px; padding:16px 18px; margin-bottom:18px; flex-wrap:wrap; }
.khb-noco-hero .npc { flex:0 0 auto; width:96px; height:96px; border-radius:12px; background:radial-gradient(circle at 50% 40%,#e7f0e8,#dfe8ea); display:flex; align-items:flex-end; justify-content:center; overflow:hidden; }
.khb-noco-hero .npc img { height:88px; width:auto; object-fit:contain; transform:scaleX(-1); image-rendering:pixelated; }
.khb-noco-hero .tx { flex:1; min-width:200px; }
.khb-noco-hero .tx h2 { font-size:19px; font-weight:800; color:#2d3b41; margin:0 0 4px; display:flex; align-items:center; gap:8px; }
.khb-noco-npc { font-size:10.5px; font-weight:800; letter-spacing:.5px; color:#fff; background:#57b846; padding:3px 9px; border-radius:7px; }
.khb-noco-hero .tx p { font-size:13px; color:#8a9aa3; margin:0; line-height:1.5; }
.khb-noco-hero .stats { display:flex; gap:10px; flex:0 0 auto; }
.khb-noco-hero .st { background:#fff; border-radius:11px; box-shadow:0 3px 0 #e2e7ee; padding:9px 15px; text-align:center; min-width:74px; }
.khb-noco-hero .st b { display:block; font-size:19px; font-weight:800; color:#2d3b41; line-height:1; }
.khb-noco-hero .st span { font-size:10.5px; font-weight:700; color:#a7b3ba; text-transform:uppercase; letter-spacing:.3px; }
.khb-noco-hero .st.burn b { color:#f4494e; }

.khb-noco-tabs .khb-vtab.on { background:#f7941d !important; color:#fff !important; }
.khb-noco-body { }

.khb-noco-jump { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-bottom:16px; }
.khb-noco-jump .lbl { font-size:11px; font-weight:700; text-transform:uppercase; color:#a7b3ba; }
.khb-jchip { display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:700; color:#5a6b73; background:#eef2f4; padding:5px 11px; border-radius:9px; box-shadow:0 2px 0 #dfe5ec; text-decoration:none; }
.khb-jchip:hover { background:#e3e9ee; }

.khb-noco-vinda { margin-bottom:22px; }
.khb-noco-vinda .khb-shelf-hd h2 { display:inline-flex; align-items:center; gap:7px; }
.khb-noco-note { display:flex; align-items:flex-start; gap:7px; font-size:12.5px; color:#8a9aa3; background:#fff9f0; border:2px solid #fdeccf; border-radius:11px; padding:9px 13px; margin-bottom:14px; }
.khb-noco-note i { color:#f7941d; margin-top:1px; }

.khb-noco-offers { display:flex; flex-direction:column; gap:12px; }
.khb-offer { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1.1fr) minmax(0,1fr); gap:0; background:#f6f8fa; border:2px solid #eef2f4; border-radius:13px; overflow:hidden; }
.khb-offer.soldout { opacity:.82; }
.khb-offer > * { padding:14px 16px; }
.khb-offer-col { border-left:2px solid #eef2f4; }
.khb-offer-prod { display:flex; align-items:center; gap:14px; }
.khb-offer-prod .pimg { position:relative; width:78px; height:78px; flex:0 0 auto; border-radius:11px; background:#fff; border:2px solid #eef2f4; display:flex; align-items:center; justify-content:center; }
.khb-offer-prod .pimg img { max-width:64px; max-height:64px; object-fit:contain; }
.khb-offer-prod .pimg > i { color:#c3ccd4; font-size:26px; }
.khb-offer-prod .pimg .stk { position:absolute; top:-8px; right:-8px; min-width:24px; height:24px; padding:0 6px; border-radius:8px; background:#2d3b41; color:#fff; font-size:12px; font-weight:800; display:flex; align-items:center; justify-content:center; border:2px solid #f6f8fa; }
.khb-offer-prod .pimg .stk.out { background:#f4494e; }
.khb-offer-prod .pinfo { min-width:0; flex:1; }
.khb-offer-prod .ptop { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.khb-offer-prod .ptop b { font-size:15px; font-weight:800; color:#2d3b41; }
.khb-noco-cost { font-size:11px; font-weight:800; color:#d97d0a; background:#fff2dd; padding:3px 8px; border-radius:7px; }
.khb-noco-out { font-size:10.5px; font-weight:800; color:#fff; background:#f4494e; padding:3px 8px; border-radius:7px; text-transform:uppercase; letter-spacing:.3px; }
.khb-offer-prod .stockbar { margin-top:9px; }
.khb-offer-prod .stockbar .track { height:7px; border-radius:5px; background:#e3e9ee; overflow:hidden; }
.khb-offer-prod .stockbar .track span { display:block; height:100%; border-radius:5px; background:linear-gradient(90deg,#57b846,#7bc95f); }
.khb-offer.soldout .stockbar .track span { background:#c3ccd4; }
.khb-offer-prod .stockbar small { display:block; font-size:11.5px; color:#8a9aa3; margin-top:5px; }
.khb-offer-prod .stockbar small b { color:#2d3b41; }
.khb-offer-prod .stockbar small em { color:#2a9d5a; font-style:normal; font-weight:700; }

.khb-offer-col .lbl { display:flex; align-items:center; gap:5px; font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.3px; color:#a7b3ba; margin-bottom:10px; }
.khb-offer-col.burn .lbl { color:#f4494e; }
.khb-offer-col .mut { font-size:12.5px; color:#a7b3ba; }
.khb-offer-col .tiles { display:flex; flex-wrap:wrap; gap:9px; }
.khb-rtile { position:static; width:70px; text-align:center; }
.khb-rtile .ph { position:relative; width:56px; height:56px; margin:0 auto; border-radius:10px; background:#fff; border:2px solid #eef2f4; display:flex; align-items:center; justify-content:center; }
.khb-rtile .ph img { max-width:44px; max-height:44px; object-fit:contain; }
.khb-rtile .ph > i { color:#c3ccd4; font-size:20px; }
.khb-rtile .ph .q { position:absolute; bottom:-7px; right:-6px; background:#f7941d; color:#fff; font-size:11px; font-weight:800; padding:1px 6px; border-radius:7px; border:2px solid #f6f8fa; }
.khb-rtile .lb { font-size:10.5px; color:#8a9aa3; margin-top:8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.khb-offer-col.burn .burnlist { display:flex; flex-direction:column; gap:5px; }
.khb-offer-col.burn .brow { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12.5px; }
.khb-offer-col.burn .brow .nm { color:#5a6b73; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-offer-col.burn .brow .qt { display:inline-flex; align-items:center; gap:3px; color:#f4494e; font-weight:800; white-space:nowrap; }
.khb-offer-col.burn .brow.total { border-top:2px solid #eef2f4; padding-top:6px; margin-top:2px; }
.khb-offer-col.burn .brow.total .nm { color:#8a9aa3; font-weight:600; }

.khb-noco-lead { font-size:13px; color:#8a9aa3; line-height:1.55; margin:0 0 14px; }
.khb-burnrank { display:flex; flex-direction:column; gap:10px; }
.khb-brank { background:#f6f8fa; border:2px solid #eef2f4; border-radius:13px; padding:11px 14px; }
.khb-brank.r1 { background:#fffaf0; border-color:#f6e2b8; }
.khb-brank .head { display:flex; align-items:center; gap:12px; }
.khb-brank .rk { flex:0 0 auto; width:30px; text-align:center; font-size:16px; font-weight:800; color:#a7b3ba; }
.khb-brank.r1 .rk, .khb-brank.r2 .rk, .khb-brank.r3 .rk { font-size:20px; }
.khb-brank .im { flex:0 0 auto; width:44px; height:44px; border-radius:10px; background:#fff; border:2px solid #eef2f4; display:flex; align-items:center; justify-content:center; }
.khb-brank .im img { max-width:36px; max-height:36px; object-fit:contain; }
.khb-brank .im > i { color:#c3ccd4; }
.khb-brank .nm { flex:1; min-width:0; font-size:14px; font-weight:800; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-brank .tot { flex:0 0 auto; display:inline-flex; align-items:baseline; gap:4px; color:#f4494e; font-size:17px; font-weight:800; }
.khb-brank .tot i { font-size:14px; }
.khb-brank .tot small { font-size:10.5px; font-weight:700; color:#c98a8c; }
.khb-brank .pv { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; padding-left:42px; }
.khb-brank .pvchip { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:700; color:#5a6b73; background:#fff; box-shadow:0 2px 0 #dfe5ec; padding:4px 9px; border-radius:8px; }
.khb-brank .pvchip b { color:#f4494e; }
.khb-brank .pvchip i { color:#a7b3ba; }

@media (max-width:820px){
  .khb-offer { grid-template-columns:1fr; }
  .khb-offer-col { border-left:0; border-top:2px solid #eef2f4; }
  .khb-noco-hero .stats { width:100%; }
}

/* NOCO: raros clicaveis (produto, tiles da receita, ranking) -> /valores/... */
a.khb-rtile.is-link { text-decoration:none; display:block; transition:transform .1s; }
a.khb-rtile.is-link:hover { transform:translateY(-2px); }
a.khb-rtile.is-link:hover .ph { border-color:#bfe0f2; box-shadow:0 3px 0 #dbeaf3; }
a.pimg.is-link { cursor:pointer; text-decoration:none; transition:border-color .12s, box-shadow .12s; }
a.pimg.is-link:hover { border-color:#bfe0f2 !important; box-shadow:0 4px 0 #dbeaf3; }
a.khb-noco-name { font-size:15px; font-weight:800; color:#2d3b41; text-decoration:none; }
a.khb-noco-name:hover { color:#1583b8; text-decoration:underline; }
.khb-brank .im.is-link { cursor:pointer; text-decoration:none; transition:border-color .12s; }
.khb-brank .im.is-link:hover { border-color:#bfe0f2 !important; }
a.nm.is-link { text-decoration:none; }
a.nm.is-link:hover { color:#1583b8; text-decoration:underline; }

/* =========================================================================
   IMAGER — branco + verde radar/atividades (#35505a / #2b434d)
   ========================================================================= */
.khb .kaccent.rad { background:#35505a; }
.khb .kbtn.rad { background:#35505a; box-shadow:0 3px 0 #2b434d; color:#fff; }
.khb .kbtn.rad:active { transform:translateY(2px); box-shadow:0 1px 0 #2b434d; }

.khb-imager { display:grid; grid-template-columns:1.35fr 1fr; gap:18px; align-items:start; }
.khb-img-export { grid-column:1 / -1; }

.khb-img-search { display:flex; gap:10px; margin-bottom:12px; }
.khb-img-search .khb-search2 { flex:1; }
.khb-img-alert { display:flex; align-items:center; gap:7px; font-size:12.5px; font-weight:600; color:#d97d0a; background:#fff5e9; border:2px solid #fdeccf; border-radius:11px; padding:9px 13px; margin-bottom:12px; }
.khb-img-found { font-size:12.5px; color:#8a9aa3; margin-bottom:12px; }
.khb-img-found b { color:#35505a; }

.khb-img-stage { position:relative; min-height:300px; display:flex; align-items:center; justify-content:center; background:#35505a; border-radius:14px; box-shadow:inset 0 2px 16px rgba(0,0,0,.25), 0 6px 0 #2b434d; margin-bottom:18px; overflow:hidden; }
.khb-img-stage::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size:28px 28px; pointer-events:none; }
.khb-img-stage img { position:relative; }

.khb-img-ctrls { display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px 14px; }
.khb-img-ctrls .c { min-width:0; }
.khb-flabel .mut { color:#a7b3ba; font-weight:700; text-transform:none; }
.khb-rotgrp { display:flex; gap:6px; }
.khb-rotgrp button { flex:1; height:38px; border:2px solid #eef2f4; background:#fff; border-radius:10px; color:#35505a; font-size:16px; cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:0 3px 0 #eef2f4; }
.khb-rotgrp button:hover { border-color:#cdd9db; }
.khb-rotgrp button:active { transform:translateY(2px); box-shadow:none; }
.khb-img-switchcell { grid-column:1 / -1; margin-top:2px; }
.khb-switch { display:inline-flex; align-items:center; gap:9px; font-size:13px; font-weight:700; color:#2d3b41; cursor:pointer; }
.khb-switch input { display:none; }
.khb-switch .tk { width:42px; height:24px; border-radius:14px; background:#dfe5ec; position:relative; transition:background .15s; flex:0 0 auto; }
.khb-switch .tk::after { content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.25); transition:transform .15s; }
.khb-switch.on .tk { background:#35505a; }
.khb-switch.on .tk::after { transform:translateX(18px); }

.khb-gseg { display:inline-flex; background:#eef2f4; border-radius:10px; padding:3px; gap:2px; }
.khb-gseg.wide { display:flex; margin:14px 0 12px; }
.khb-gseg.wide button { flex:1; }
.khb-gseg button { border:0; background:none; border-radius:8px; padding:7px 14px; font-family:inherit; font-weight:700; font-size:12.5px; color:#8a9aa3; cursor:pointer; }
.khb-gseg button.on { background:#35505a; color:#fff; }
.khb-shelf-hd.wardhd .khb-gseg { margin-left:auto; }

.khb-gpills { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
.khb-gpill { border:0; background:#f6f8fa; border-radius:9px; padding:6px 12px; font-family:inherit; font-weight:700; font-size:12px; color:#5a6b73; cursor:pointer; box-shadow:0 2px 0 #e2e7ee; }
.khb-gpill.on { background:#35505a; color:#fff; box-shadow:0 2px 0 #2b434d; }

.khb-swgrid { display:flex; flex-wrap:wrap; gap:8px; max-height:320px; overflow-y:auto; margin-bottom:14px; padding:2px; }
.khb-swtile { width:58px; height:66px; padding:0; border:2px solid #eef2f4; border-radius:11px; background:#fff; overflow:hidden; cursor:pointer; display:flex; align-items:flex-start; justify-content:center; }
.khb-swtile.none { align-items:center; color:#c3ccd4; font-size:22px; }
.khb-swtile.on { border-color:#35505a; background:#eef2f4; box-shadow:0 0 0 3px rgba(53,80,90,.16); }
.khb-swtile:hover { border-color:#cdd9db; }

.khb-img-corlabel { display:flex; align-items:center; gap:8px; }
.khb-img-corcur { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:700; color:#35505a; background:#eef2f4; padding:3px 8px; border-radius:7px; text-transform:none; }
.khb-img-corcur .sw { width:12px; height:12px; border-radius:3px; border:1px solid rgba(0,0,0,.2); }
.khb-swcolors { display:flex; flex-wrap:wrap; gap:5px; max-height:130px; overflow-y:auto; margin-top:6px; }
.khb-swcol { width:24px; height:24px; border:0; border-radius:6px; cursor:pointer; outline:1px solid rgba(0,0,0,.2); }
.khb-swcol.on { outline:2px solid #35505a; outline-offset:2px; box-shadow:0 0 0 4px rgba(53,80,90,.22); transform:scale(1.12); position:relative; z-index:1; }

.khb-img-hint { display:flex; align-items:flex-start; gap:6px; font-size:11.5px; color:#a7b3ba; margin:12px 0 0; }
.khb-img-load { font-size:12.5px; color:#a7b3ba; padding:8px 0; }

.khb-img-exgrid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.khb-ftext { width:100%; border:2px solid #eef2f4; border-radius:11px; padding:9px 11px; font-family:ui-monospace,monospace; font-size:11.5px; color:#2d3b41; resize:vertical; background:#f9fafb; }
.khb-ftext:focus { outline:0; border-color:#bcd7e0; }
.khb-img-exbtns { display:flex; gap:9px; margin-top:14px; flex-wrap:wrap; }
.khb-img-exbtns .reset { margin-left:auto; }

@media (max-width:920px){ .khb-imager { grid-template-columns:1fr; } }
@media (max-width:620px){ .khb-img-ctrls { grid-template-columns:1fr 1fr; } .khb-img-exgrid { grid-template-columns:1fr; } }

/* =========================================================================
   AUTH — "Recepção do Hotel": fundo verde-radar + card branco flutuante
   ========================================================================= */
/* botão de login no navbar (verde-radar com ícone) */
.khb-nav-login { display:inline-flex; align-items:center; gap:7px; background:#35505a; color:#fff; font-weight:700; font-size:13px; padding:9px 20px; border-radius:22px; border-bottom:3px solid #2b434d; }
.khb-nav-login i { font-size:16px; }
.khb-nav-login:hover { background:#3d5c67; color:#fff; }
.khb-nav-login:active { transform:translateY(1px); border-bottom-width:2px; }

.kbauth { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px; background:#35505a; position:relative; overflow:hidden; }
.kbauth::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:34px 34px; pointer-events:none; }
.kbauth::after { content:""; position:absolute; top:-32%; left:50%; transform:translateX(-50%); width:900px; height:720px; background:radial-gradient(ellipse at center, rgba(123,193,67,.15), transparent 62%); pointer-events:none; }

.kbauth-card { position:relative; z-index:1; width:100%; max-width:452px; background:#fff; border-radius:22px; box-shadow:0 16px 0 rgba(0,0,0,.14), 0 34px 70px rgba(0,0,0,.4); padding:32px 30px 24px; text-align:center; }
.kbauth-logo { display:inline-block; margin-bottom:2px; text-decoration:none; }
.kbauth-logo img { height:32px; }
.kbauth-logo b { font-size:22px; font-weight:800; color:#35505a; }

.kbauth-coin { width:82px; height:82px; margin:12px auto 16px; border-radius:22px; background:#35505a; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 0 #2b434d; overflow:hidden; }
.kbauth-coin img { width:82px; height:82px; object-fit:contain; image-rendering:pixelated; }
.kbauth-coin i { color:#fff; font-size:34px; }

.kbauth-title { font-size:21px; font-weight:800; color:#2d3b41; margin:0 0 5px; }
.kbauth-sub { font-size:13px; color:#8a9aa3; line-height:1.5; margin:0 auto 20px; max-width:330px; }

.kbauth-seg { display:flex; background:#eef2f4; border-radius:13px; padding:4px; gap:3px; margin-bottom:20px; }
.kbauth-seg button { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:6px; border:0; background:none; border-radius:10px; padding:9px; font-family:inherit; font-weight:700; font-size:13px; color:#8a9aa3; cursor:pointer; }
.kbauth-seg button.on { background:#35505a; color:#fff; box-shadow:0 3px 0 #2b434d; }

.kbauth-steps { display:flex; align-items:center; justify-content:center; margin-bottom:20px; }
.kbauth-steps .row { display:flex; align-items:center; }
.kbauth-steps .st { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:700; color:#c3ccd4; }
.kbauth-steps .st b { width:24px; height:24px; border-radius:50%; background:#eef2f4; color:#a7b3ba; display:flex; align-items:center; justify-content:center; font-size:12px; }
.kbauth-steps .st.on { color:#35505a; }
.kbauth-steps .st.on b { background:#35505a; color:#fff; }
.kbauth-steps .st.done { color:#35505a; }
.kbauth-steps .st.done b { background:#2b434d; color:#fff; }
.kbauth-steps .ln { width:22px; height:2px; background:#eef2f4; margin:0 8px; border-radius:2px; }
.kbauth-steps .ln.done { background:#35505a; }

.kbauth-field { display:block; text-align:left; margin-bottom:13px; }
.kbauth-field .lb { display:block; font-size:12px; font-weight:700; color:#5a6b73; margin-bottom:6px; }
.kbauth-field .in { display:flex; align-items:center; gap:9px; border:2px solid #eef2f4; border-radius:12px; padding:0 13px; background:#f9fafb; transition:border-color .12s, background .12s; }
.kbauth-field .in:focus-within { border-color:#9db9c1; background:#fff; }
.kbauth-field .in i { color:#a7b3ba; font-size:17px; }
.kbauth-field .in input { flex:1; min-width:0; border:0; background:none; padding:12px 0; font-family:inherit; font-size:14px; color:#2d3b41; outline:none; }

.kbauth-row { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:3px 0 16px; }
.kbauth-check { display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:600; color:#5a6b73; cursor:pointer; }
.kbauth-check.mb { margin-bottom:16px; }
.kbauth-check input { display:none; }
.kbauth-check .bx { width:18px; height:18px; border-radius:6px; border:2px solid #cdd5dd; background:#fff; position:relative; flex:0 0 auto; }
.kbauth-check input:checked + .bx { background:#35505a; border-color:#35505a; }
.kbauth-check input:checked + .bx::after { content:""; position:absolute; left:5px; top:2px; width:4px; height:8px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }

.kbauth-link { background:none; border:0; color:#8a9aa3; font-size:12.5px; font-weight:700; cursor:pointer; font-family:inherit; padding:0; }
.kbauth-link:hover { color:#35505a; text-decoration:underline; }
.kbauth-link.back { display:inline-flex; align-items:center; gap:3px; margin-top:14px; }

.kbtn.rad.kbauth-btn { display:inline-flex; align-items:center; justify-content:center; gap:7px; width:100%; padding:13px; font-size:14px; margin-top:2px; }

.kbauth-nick { font-size:16px; font-weight:800; color:#2d3b41; margin-bottom:10px; }
.kbauth-ol { text-align:left; color:#8a9aa3; font-size:13px; line-height:1.6; margin:0 0 16px; padding-left:20px; }
.kbauth-ol b { color:#5a6b73; }
.kbauth-key { position:relative; display:flex; align-items:center; justify-content:center; gap:12px; background:#eef4f2; border:2px dashed #9cc0b4; border-radius:14px; padding:18px 16px; margin-bottom:16px; }
.kbauth-key .tag { position:absolute; top:-9px; left:14px; background:#35505a; color:#fff; font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; padding:2px 8px; border-radius:6px; }
.kbauth-key code { font-family:ui-monospace,monospace; font-size:24px; font-weight:800; letter-spacing:3px; color:#35505a; }
.kbauth-key .cp { width:34px; height:34px; border:0; border-radius:9px; background:#35505a; color:#fff; cursor:pointer; font-size:16px; flex:0 0 auto; }

.kbauth-reqs { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:5px 10px; padding:0; margin:0 0 14px; }
.kbauth-reqs li { display:flex; align-items:center; gap:6px; font-size:12px; color:#a7b3ba; font-weight:600; }
.kbauth-reqs li.ok { color:#2a9d5a; }
.kbauth-reqs li i { font-size:15px; }

.kbauth-ok { display:flex; align-items:center; gap:8px; background:#e9f8ef; color:#2a9d5a; border:2px solid #bfe8cf; border-radius:12px; padding:11px 13px; font-size:12.5px; font-weight:600; margin-bottom:16px; text-align:left; }
.kbauth-ok b { color:#238a4d; }
.kbauth-err { display:flex; align-items:flex-start; gap:8px; background:#fdecea; color:#d64545; border:2px solid #f6cbc6; border-radius:12px; padding:11px 13px; font-size:12.5px; font-weight:600; margin-bottom:16px; text-align:left; }
.kbauth-foot { font-size:11.5px; color:#a7b3ba; margin:20px 0 0; }

@media (max-width:520px){ .kbauth-card { padding:26px 20px 20px; } .kbauth-reqs { grid-template-columns:1fr; } }

/* =========================================================================
   AUTH v2 — Cena do Hotel (diegética): recepcionista + janela retrô do cliente
   ========================================================================= */
.kbscene { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px; position:relative; overflow:hidden; background:#35505a; }
.kbscene::before { content:""; position:absolute; inset:0; background-image:url(/assets/images/bg/bobba.png); background-size:120px; opacity:.05; pointer-events:none; }
.kbscene::after { content:""; position:absolute; left:50%; top:42%; transform:translate(-50%,-50%); width:780px; height:640px; background:radial-gradient(ellipse at center, rgba(123,193,67,.14), transparent 60%); pointer-events:none; }

.kbscene-stage { position:relative; z-index:1; display:flex; align-items:flex-end; justify-content:center; }

/* recepcionista na cena */
.kbnpc { position:relative; align-self:flex-end; margin-right:-16px; margin-bottom:26px; z-index:2; }
.kbnpc img { height:224px; width:auto; image-rendering:pixelated; display:block; position:relative; z-index:1; }
.kbnpc-sh { position:absolute; left:50%; bottom:0; transform:translateX(-50%); width:120px; height:26px; background:radial-gradient(ellipse at center, rgba(0,0,0,.4), transparent 70%); border-radius:50%; z-index:0; }
.kbnpc-bubble { position:absolute; top:14px; left:-6px; transform:translateX(-100%); background:#fff; color:#35505a; font-size:12px; font-weight:800; padding:7px 12px; border-radius:13px 13px 0 13px; box-shadow:0 3px 0 rgba(0,0,0,.2); white-space:nowrap; }
.kbnpc-bubble::after { content:""; position:absolute; right:-6px; bottom:0; border:7px solid transparent; border-top-color:#fff; border-right:0; }

/* janela retrô da recepção */
.kbwin { position:relative; z-index:3; width:432px; max-width:100%; background:#fff; border:3px solid #2b434d; border-radius:14px; box-shadow:0 12px 0 rgba(0,0,0,.22), 0 26px 54px rgba(0,0,0,.45); overflow:hidden; }
.kbwin-bar { display:flex; align-items:center; gap:9px; background:#35505a; color:#fff; padding:11px 14px; border-bottom:3px solid #2b434d; }
.kbwin-bar > i { font-size:18px; color:#8fd0a0; }
.kbwin-bar .ttl { font-weight:800; font-size:14px; }
.kbwin-bar .home { margin-left:auto; color:rgba(255,255,255,.7); font-size:16px; display:inline-flex; text-decoration:none; }
.kbwin-bar .home:hover { color:#fff; }
.kbwin-bar .dots { display:inline-flex; gap:5px; }
.kbwin-bar .dots i { width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,.28); }
.kbwin-body { padding:24px 26px 18px; text-align:center; }

.kbauth-coin.sm { width:58px; height:58px; margin:0 auto 12px; border-radius:16px; box-shadow:0 4px 0 #2b434d; }
.kbauth-coin.sm img { width:58px; height:58px; }

@media (max-width:780px){ .kbnpc { display:none; } }
@media (max-width:520px){ .kbwin-body { padding:22px 18px 16px; } }

/* fix mobile: janela da recepcao encolhe */
.kbscene-stage { max-width:100%; }
@media (max-width:520px){ .kbscene-stage { width:100%; } .kbwin { width:100%; } }

/* =========================================================================
   AUTH v3 — POPUP (modal) no estilo da home (branco + verde)
   ========================================================================= */
.kbauth-modal { position:fixed; inset:0; z-index:1400; background:rgba(20,32,38,.7); display:flex; align-items:center; justify-content:center; padding:18px; }
.kbauth-modal-card { position:relative; width:100%; max-width:418px; max-height:92vh; overflow-y:auto; background:#fff; border-radius:20px; box-shadow:0 14px 0 rgba(0,0,0,.1), 0 30px 64px rgba(0,0,0,.4); padding:32px 28px 22px; text-align:center; }
.kbauth-modal-card .kbauth-coin { margin-top:2px; }
.kbauth-modal-x { position:absolute; top:14px; right:14px; width:34px; height:34px; border:0; border-radius:11px; background:#f1f4f6; color:#8a9aa3; cursor:pointer; font-size:16px; display:flex; align-items:center; justify-content:center; z-index:2; }
.kbauth-modal-x:hover { background:#e7ecef; color:#5a6b73; }
@media (max-width:520px){ .kbauth-modal-card { padding:28px 20px 18px; } }

.kbauth-title-top { margin-top:6px; }

/* botao Entrar: garantir texto branco legivel + ocultar toggle de tema (por ora) */
.khb-nav-login, .khb-nav-login i, .khb-nav-login b { color:#fff !important; }
.khb-nav-theme { display:none !important; }

/* =========================================================================
   CHANGELOG — hero verde-radar + timeline de versões
   ========================================================================= */
.khb-cl-badge.feature, .khb-cl-node.feature { --c:#2f9e44; --s:#e6f4ea; }
.khb-cl-badge.fix, .khb-cl-node.fix { --c:#1e8fd2; --s:#e6f2fb; }
.khb-cl-badge.security, .khb-cl-node.security { --c:#e03131; --s:#fdeaea; }
.khb-cl-badge.update, .khb-cl-node.update { --c:#f08c00; --s:#fdf1e0; }
.khb-cl-badge { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:800; padding:4px 9px; border-radius:8px; background:var(--s); color:var(--c); }

.khb-cl-hero { display:flex; align-items:center; gap:16px; background:#35505a; border-radius:16px; padding:18px 20px; margin:18px 0; box-shadow:0 6px 0 #2b434d; }
.khb-cl-hero .rk { width:54px; height:54px; border-radius:14px; background:rgba(255,255,255,.12); display:flex; align-items:center; justify-content:center; color:#8fd0a0; font-size:26px; flex:0 0 auto; }
.khb-cl-hero .tx { min-width:0; }
.khb-cl-hero .lbl { font-size:11px; font-weight:800; letter-spacing:.6px; text-transform:uppercase; color:rgba(255,255,255,.55); }
.khb-cl-hero .ver { display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:22px; font-weight:800; color:#fff; margin:2px 0 3px; }
.khb-cl-hero .sub { font-size:13px; color:rgba(255,255,255,.72); }

.khb-cl-chips { margin-top:0; margin-bottom:4px; }
.khb-cl-chips .khb-chip { display:inline-flex; align-items:center; gap:5px; }
.khb-cl-chips .khb-chip b { font-weight:800; opacity:.6; }
.khb-cl-chips .khb-chip.on { background:#35505a; color:#fff; box-shadow:0 2px 0 #2b434d; }
.khb-cl-chips .khb-chip.on b { opacity:.8; }

.khb-cl-timeline { position:relative; margin-top:18px; }
.khb-cl-timeline::before { content:""; position:absolute; left:19px; top:8px; bottom:8px; width:2px; background:#eef2f4; }
.khb-cl-row { position:relative; padding-left:56px; margin-bottom:14px; }
.khb-cl-node { position:absolute; left:0; top:0; width:40px; height:40px; border-radius:12px; background:var(--c); color:#fff; display:flex; align-items:center; justify-content:center; font-size:19px; box-shadow:0 3px 0 rgba(0,0,0,.14); z-index:1; }
.khb-cl-card { padding:14px 16px; }
.khb-cl-card .hd { display:flex; align-items:center; gap:9px; flex-wrap:wrap; }
.khb-cl-card .ver { font-family:ui-monospace,monospace; font-size:12.5px; font-weight:800; color:#35505a; background:#eef2f4; padding:3px 9px; border-radius:7px; }
.khb-cl-card h3 { font-size:15px; font-weight:800; color:#2d3b41; margin:0; }
.khb-cl-card .date { margin-left:auto; display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:700; color:#a7b3ba; white-space:nowrap; }
.khb-cl-card .body { font-size:13px; color:#5a6b73; line-height:1.6; margin-top:9px; white-space:pre-line; border-top:2px solid #f1f4f6; padding-top:10px; }

@media (max-width:560px){ .khb-cl-card .date { margin-left:0; width:100%; } }

/* =========================================================================
   TRAXMACHINE — editor Trax embutido
   ========================================================================= */
.khb-phead-tx h1 i { color:#f7941d; margin-right:2px; }
.khb-trax-frame { margin-top:16px; border:2px solid #eef2f4; border-radius:14px; overflow:hidden; background:#0d1b2a; box-shadow:0 4px 0 #e2e7ee; }
.khb-trax-frame iframe { width:100%; height:780px; border:0; display:block; }
.khb-trax-credit { font-size:11.5px; color:#a7b3ba; text-align:center; line-height:1.7; margin:14px 0 4px; }
.khb-trax-credit b { color:#5a6b73; }
.khb-trax-credit a { color:#35505a; font-weight:700; text-decoration:underline; }

.khb-trax-lock { display:flex; align-items:center; gap:14px; flex-wrap:wrap; background:#fff9f0; border:2px solid #fdeccf; border-radius:12px; padding:11px 15px; margin-top:16px; }
.khb-trax-lock .tag { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:800; color:#d97d0a; background:#fdeccf; padding:4px 10px; border-radius:8px; }
.khb-trax-lock .khb-switch { font-size:12.5px; }
.khb-trax-lock .khb-finput.sm { padding:7px 10px; font-size:12.5px; max-width:250px; }
.khb-trax-lock-until { display:flex; align-items:center; gap:6px; }
.khb-trax-lock-until span { font-size:11.5px; color:#a7b3ba; font-weight:700; }
.khb-trax-lock .ok { display:inline-flex; align-items:center; gap:3px; font-size:12px; font-weight:700; color:#2a9d5a; }

/* =========================================================================
   ORIGINS — páginas de conteúdo autoral (horizons, facções, habbo-club...)
   ========================================================================= */
.khb-origins-body { max-width:860px; margin:18px auto 0; }

/* =========================================================================
   NAVBAR logado — cabeça + nome + dropdown
   ========================================================================= */
.khb-navuser-wrap { position:relative; display:inline-flex; }
.khb-navuser { display:inline-flex; align-items:center; gap:8px; background:#f1f4f6; border:0; border-radius:22px; padding:4px 11px 4px 4px; cursor:pointer; font-family:inherit; }
.khb-navuser:hover, .khb-navuser.open { background:#e7ecef; }
.khb-navuser .av { width:30px; height:30px; border-radius:50%; overflow:hidden; background:#35505a; display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.khb-navuser .av img { width:42px; height:auto; max-width:none; image-rendering:pixelated; margin-top:5px; }
.khb-navuser .av i { color:#fff; font-size:16px; }
.khb-navuser .nm { font-size:13px; font-weight:700; color:#2d3b41; max-width:130px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.khb-navuser .ch { font-size:15px; color:#8a9aa3; transition:transform .15s; }
.khb-navuser.open .ch { transform:rotate(180deg); }

.khb-navuser-menu { position:absolute; right:0; top:calc(100% + 9px); min-width:196px; background:#fff; border-radius:14px; box-shadow:0 10px 0 rgba(0,0,0,.05), 0 18px 44px rgba(0,0,0,.2); padding:7px; z-index:3000; }
.khb-navuser-menu a, .khb-navuser-menu button { display:flex; align-items:center; gap:10px; width:100%; text-align:left; background:none; border:0; border-radius:9px; padding:9px 11px; font-family:inherit; font-size:13px; font-weight:600; color:#2d3b41; cursor:pointer; text-decoration:none; }
.khb-navuser-menu a:hover, .khb-navuser-menu button:hover { background:#f1f4f6; }
.khb-navuser-menu a i { font-size:16px; color:#8a9aa3; }
.khb-navuser-menu .sep { height:2px; background:#f1f4f6; margin:5px 4px; }
.khb-navuser-menu button { color:#d64545; }
.khb-navuser-menu button i { font-size:16px; color:#d64545; }

/* NavUser: busto miniatura (igual noticias) no lugar do circulo */
.khb-navuser { padding:5px 13px 5px 11px !important; gap:8px !important; }
.khb-navuser .khb-nc-av { margin-top:1px; }

/* NavUser: pill branco com borda fina (sem o quadrado cinza) */
.khb-navuser { background:#fff !important; border:2px solid #eef2f4 !important; box-shadow:0 2px 0 #e7ecef !important; }
.khb-navuser:hover, .khb-navuser.open { background:#f6f8fa !important; border-color:#e2e7ee !important; }

/* NavUser v3: um botao so, borda padrao khb (quase-quadrado), sem cinza ao redor */
.khb-navuser { background:#fff !important; border:2px solid #eef2f4 !important; border-radius:10px !important; box-shadow:none !important; padding:5px 12px 5px 9px !important; }
.khb-navuser:hover, .khb-navuser.open { background:#f6f8fa !important; border-color:#dfe5ec !important; }

/* NavUser v4: padrao khb (sem contorno; so sombra solida embaixo) */
.khb-navuser { background:#fff !important; border:0 !important; border-radius:10px !important; box-shadow:0 3px 0 #e7ecef !important; padding:6px 12px 5px 9px !important; }
.khb-navuser:hover, .khb-navuser.open { background:#f9fafb !important; box-shadow:0 3px 0 #dfe5ec !important; }

/* NavUser v5: botao CINZA (busto se funde), sem contorno/bordinha que quadra */
.khb-navuser { background:#f1f4f6 !important; border:0 !important; box-shadow:none !important; border-radius:16px !important; padding:5px 13px 5px 8px !important; }
.khb-navuser:hover, .khb-navuser.open { background:#e7ecef !important; }

/* =========================================================================
   EQUIPE + PERFIL
   ========================================================================= */
.khb-tbadge { display:inline-flex; align-items:center; font-size:11px; font-weight:800; padding:3px 9px; border-radius:7px; }
.khb-tbadge.grey { background:#eef2f4; color:#5a6b73; }
.khb-tbadge.amber { background:#fff2dd; color:#d97d0a; }
.khb-tbadge.white { background:#fff; color:#35505a; }

/* --- EQUIPE --- */
.khb-team-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:16px; margin-top:18px; }
.khb-tcard { display:flex; flex-direction:column; gap:12px; padding:16px !important; }
.khb-tcard-id { display:flex; align-items:center; gap:14px; text-decoration:none; }
.khb-tcard-id .ava { width:70px; height:92px; flex:0 0 auto; border-radius:13px; background:#35505a; overflow:hidden; display:flex; align-items:flex-end; justify-content:center; box-shadow:0 4px 0 #2b434d; }
.khb-tcard-id .ava img { height:96px; width:auto; max-width:none; image-rendering:pixelated; }
.khb-tcard-id .ava > i { color:#8fa3ad; font-size:30px; align-self:center; }
.khb-tcard-id .who { min-width:0; }
.khb-tcard-id .who b { display:block; font-size:16px; font-weight:800; color:#2d3b41; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.khb-tcard-id .who small { font-size:12px; color:#8a9aa3; font-weight:600; }
.khb-tcard-id:hover .who b { color:#1583b8; }
.khb-tcard-tags { display:flex; flex-wrap:wrap; gap:6px; }
.khb-tcard-bio { font-size:12.5px; color:#5a6b73; line-height:1.5; margin:0; }
.khb-tcard-social { display:flex; align-items:center; gap:7px; margin-top:auto; }
.khb-sicon { width:34px; height:34px; border-radius:9px; background:#f1f4f6; color:#5a6b73; display:flex; align-items:center; justify-content:center; font-size:16px; text-decoration:none; }
.khb-sicon:hover { background:#e7ecef; color:#2d3b41; }
.kbtn.rad.khb-thome { margin-left:auto; display:inline-flex; align-items:center; gap:6px; padding:8px 15px; font-size:13px; }

/* --- PERFIL --- */
.khb-prof-row { display:grid; grid-template-columns:minmax(0,340px) minmax(0,1fr); gap:18px; align-items:start; margin-top:18px; }
.khb-prof-side { display:flex; flex-direction:column; gap:16px; }
.khb-prof-card { padding:0 !important; overflow:hidden; }
.khb-prof-hero { background:#35505a; padding:22px 18px 18px; text-align:center; position:relative; }
.khb-prof-hero::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:26px 26px; pointer-events:none; }
.khb-prof-ava { position:relative; height:118px; display:flex; align-items:flex-end; justify-content:center; }
.khb-prof-ava img { height:118px; width:auto; image-rendering:pixelated; }
.khb-prof-hero h2 { position:relative; font-size:20px; font-weight:800; color:#fff; margin:8px 0 2px; }
.khb-prof-hero .func { position:relative; font-size:12.5px; font-weight:700; color:#8fd0a0; margin-bottom:4px; }
.khb-prof-hero .motto { position:relative; font-size:12.5px; color:rgba(255,255,255,.72); margin:0 0 12px; font-style:italic; }
.khb-prof-hero .badges { position:relative; display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
.khb-prof-specs { padding:6px 16px 14px; }
.khb-prof-specs .spec { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:2px solid #f4f6f8; font-size:13px; }
.khb-prof-specs .spec:last-child { border-bottom:0; }
.khb-prof-specs .ic { width:32px; height:32px; border-radius:9px; background:#eef2f4; color:#35505a; display:flex; align-items:center; justify-content:center; font-size:16px; flex:0 0 auto; }
.khb-prof-specs .k { color:#8a9aa3; font-weight:600; }
.khb-prof-specs .v { margin-left:auto; font-weight:800; color:#2d3b41; }
.khb-prof-specs .v.soon { font-weight:700; font-size:11px; color:#a7b3ba; background:#f1f4f6; padding:3px 9px; border-radius:7px; }
.khb-prof-badges .cnt { font-size:11.5px; font-weight:700; color:#a7b3ba; }
.khb-prof-badgegrid { display:flex; flex-wrap:wrap; gap:8px; }
.khb-prof-badgegrid img { width:42px; height:42px; object-fit:contain; }
.khb-prof-empty { font-size:12.5px; color:#a7b3ba; margin:0; }
.khb-prof-home { padding:0 !important; }
.khb-prof-canvas { min-height:460px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:#b5bfc8; background:repeating-linear-gradient(45deg,#f9fafb,#f9fafb 12px,#f4f6f8 12px,#f4f6f8 24px); border-radius:0 0 14px 14px; }
.khb-prof-canvas i { font-size:34px; }
.khb-prof-canvas span { font-size:13px; font-weight:600; }

@media (max-width:820px){ .khb-prof-row { grid-template-columns:1fr; } }

/* avatares equipe/perfil: tamanho NATIVO (size b 64x110), sem escalar = crisp (qualidade imager) */
.khb-prof-ava { height:auto !important; }
.khb-prof-ava img { height:auto !important; width:auto !important; max-width:none !important; image-rendering:pixelated !important; }
.khb-tcard-id .ava { width:78px !important; height:112px !important; }
.khb-tcard-id .ava img { height:auto !important; width:auto !important; max-width:none !important; image-rendering:pixelated !important; }

/* =========================================================================
   .khb-legacy — reskin de componentes Bootstrap p/ khb (paginas menores)
   ========================================================================= */
.khb-legacy .card { background:#fff !important; border:0 !important; border-radius:14px !important; box-shadow:0 4px 0 #e2e7ee !important; margin-bottom:16px; }
.khb-legacy .card-header { background:transparent !important; border-bottom:2px solid #f1f4f6 !important; padding:14px 18px !important; }
.khb-legacy .card-body { padding:18px !important; }
.khb-legacy .card-title, .khb-legacy .card-header h5, .khb-legacy .card-header h4 { font-weight:800 !important; color:#2d3b41 !important; font-size:16px !important; }

.khb-legacy .form-control, .khb-legacy .form-select, .khb-legacy textarea { border:2px solid #eef2f4 !important; border-radius:11px !important; background:#f9fafb !important; color:#2d3b41 !important; padding:10px 12px !important; box-shadow:none !important; font-size:13.5px !important; }
.khb-legacy .form-control:focus, .khb-legacy .form-select:focus, .khb-legacy textarea:focus { border-color:#bcd7e0 !important; background:#fff !important; outline:0 !important; }
.khb-legacy .form-label { font-weight:700 !important; color:#5a6b73 !important; font-size:12.5px !important; }
.khb-legacy .form-check-input:checked { background-color:#7bc143 !important; border-color:#7bc143 !important; }

.khb-legacy .btn { border-radius:9px !important; border:0 !important; border-bottom:3px solid rgba(0,0,0,.2) !important; font-weight:700 !important; }
.khb-legacy .btn:active { transform:translateY(1px); border-bottom-width:2px !important; }
.khb-legacy .btn-primary, .khb-legacy .btn-success { background-color:#7bc143 !important; color:#fff !important; border-bottom-color:#5a9e2e !important; }
.khb-legacy .btn-danger, .khb-legacy .btn-soft-danger { background-color:#f4494e !important; color:#fff !important; border-bottom-color:#c93338 !important; }
.khb-legacy .btn-info, .khb-legacy .btn-soft-info, .khb-legacy .btn-soft-primary { background-color:#29a8e0 !important; color:#fff !important; border-bottom-color:#1583b8 !important; }
.khb-legacy .btn-warning { background-color:#f7941d !important; color:#fff !important; border-bottom-color:#d97d0a !important; }
.khb-legacy .btn-light, .khb-legacy .btn-soft-secondary, .khb-legacy .btn-outline-secondary, .khb-legacy .btn-secondary, .khb-legacy .btn-outline-primary { background-color:#eef2f4 !important; color:#5a6b73 !important; border-bottom-color:#d4dce0 !important; }

.khb-legacy .badge { border-radius:7px !important; font-weight:800 !important; padding:4px 9px !important; }
.khb-legacy .nav-tabs .nav-link.active, .khb-legacy .nav-bordered .nav-link.active { color:#f7941d !important; border-bottom-color:#f7941d !important; }
.khb-legacy .alert { border-radius:12px !important; border:0 !important; }
.khb-legacy .table { color:#2d3b41; }

/* .khb-legacy: restaura utilitarios de padding do Bootstrap (o reset .khb * zera) */
.khb-legacy .p-0{padding:0 !important}
.khb-legacy .px-0{padding-left:0 !important;padding-right:0 !important}
.khb-legacy .py-0{padding-top:0 !important;padding-bottom:0 !important}
.khb-legacy .pt-0{padding-top:0 !important}
.khb-legacy .pb-0{padding-bottom:0 !important}
.khb-legacy .ps-0{padding-left:0 !important}
.khb-legacy .pe-0{padding-right:0 !important}
.khb-legacy .p-1{padding:.25rem !important}
.khb-legacy .px-1{padding-left:.25rem !important;padding-right:.25rem !important}
.khb-legacy .py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}
.khb-legacy .pt-1{padding-top:.25rem !important}
.khb-legacy .pb-1{padding-bottom:.25rem !important}
.khb-legacy .ps-1{padding-left:.25rem !important}
.khb-legacy .pe-1{padding-right:.25rem !important}
.khb-legacy .p-2{padding:.5rem !important}
.khb-legacy .px-2{padding-left:.5rem !important;padding-right:.5rem !important}
.khb-legacy .py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}
.khb-legacy .pt-2{padding-top:.5rem !important}
.khb-legacy .pb-2{padding-bottom:.5rem !important}
.khb-legacy .ps-2{padding-left:.5rem !important}
.khb-legacy .pe-2{padding-right:.5rem !important}
.khb-legacy .p-3{padding:1rem !important}
.khb-legacy .px-3{padding-left:1rem !important;padding-right:1rem !important}
.khb-legacy .py-3{padding-top:1rem !important;padding-bottom:1rem !important}
.khb-legacy .pt-3{padding-top:1rem !important}
.khb-legacy .pb-3{padding-bottom:1rem !important}
.khb-legacy .ps-3{padding-left:1rem !important}
.khb-legacy .pe-3{padding-right:1rem !important}
.khb-legacy .p-4{padding:1.5rem !important}
.khb-legacy .px-4{padding-left:1.5rem !important;padding-right:1.5rem !important}
.khb-legacy .py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}
.khb-legacy .pt-4{padding-top:1.5rem !important}
.khb-legacy .pb-4{padding-bottom:1.5rem !important}
.khb-legacy .ps-4{padding-left:1.5rem !important}
.khb-legacy .pe-4{padding-right:1.5rem !important}
.khb-legacy .p-5{padding:3rem !important}
.khb-legacy .px-5{padding-left:3rem !important;padding-right:3rem !important}
.khb-legacy .py-5{padding-top:3rem !important;padding-bottom:3rem !important}
.khb-legacy .pt-5{padding-top:3rem !important}
.khb-legacy .pb-5{padding-bottom:3rem !important}
.khb-legacy .ps-5{padding-left:3rem !important}
.khb-legacy .pe-5{padding-right:3rem !important}
.khb-legacy, .khb-legacy * { font-family:'Ubuntu','Segoe UI',sans-serif; }
.khb-legacy .ti, .khb-legacy [class^='ti-'], .khb-legacy [class*=' ti-'] { font-family:'tabler-icons' !important; }
.khb-legacy .khb-searchhit:hover { background:#f6f8fa !important; }

/* config: card de identidade (hero verde-radar + specs) */
.khb-legacy .khb-acc-card { padding:0 !important; overflow:hidden; }
.khb-legacy .khb-acc-hero2 { background:#35505a; }
.khb-legacy .khb-acc-hero2 h5 a, .khb-legacy .khb-acc-hero2 .khb-acc-motto2 { color:#fff; }
.khb-legacy .khb-acc-motto2 { font-size:12.5px; color:rgba(255,255,255,.72) !important; font-style:italic; }
.khb-legacy .khb-acc-head2 img { height:64px; width:auto; image-rendering:pixelated; }
.khb-legacy .khb-acc-specs .spec { display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:2px solid #f4f6f8; font-size:13px; }
.khb-legacy .khb-acc-specs .spec:last-child { border-bottom:0; }
.khb-legacy .khb-acc-specs .ic { width:32px; height:32px; border-radius:9px; background:#eef2f4; color:#35505a; display:flex; align-items:center; justify-content:center; font-size:16px; flex:0 0 auto; }
.khb-legacy .khb-acc-specs .k { color:#8a9aa3; font-weight:600; }
.khb-legacy .khb-acc-specs .v { margin-left:auto; font-weight:800; color:#2d3b41; }
.khb-legacy .khb-acc-specs .v.soon { font-weight:700; font-size:11px; color:#a7b3ba; background:#f1f4f6; padding:3px 9px; border-radius:7px; }

/* ComingSoon (repertório): placeholder verde-radar */
.khb .khb-soon { text-align:center; padding:38px 22px 42px; }
.khb .khb-soon-badge { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:800; color:#d97d0a; background:#fdf1e2; border:2px solid #f7d9b3; padding:5px 13px; border-radius:20px; margin-bottom:22px; }
.khb .khb-soon-ic { width:96px; height:96px; margin:0 auto 18px; border-radius:22px; background:#35505a; color:#fff; display:flex; align-items:center; justify-content:center; font-size:46px; box-shadow:0 8px 0 #24363d; }
.khb .khb-soon h2 { font-size:24px; font-weight:800; color:#2d3b41; margin-bottom:8px; }
.khb .khb-soon p { color:#7d8b93; max-width:460px; margin:0 auto 20px; font-size:14.5px; line-height:1.55; }
.khb .khb-soon-bar { width:220px; height:9px; border-radius:6px; background:#e7ecef; margin:0 auto 12px; overflow:hidden; }
.khb .khb-soon-bar span { display:block; width:55%; height:100%; border-radius:6px; background:linear-gradient(90deg,#7bc143,#f7941d); }
.khb .khb-soon small { color:#a7b3ba; font-weight:600; font-size:12px; }

/* ============================================================
   AJUSTES 2026-07-20 (Felipe): rodapé idêntico à produção +
   estados vazios e alinhamento na página do raro
   ============================================================ */

/* Rodapé: disclaimer JUSTIFICADO (cada linha cheia começa onde o "©" começa
   e termina onde "por Race" termina) — replica a regra da produção
   body:has(#hb-topnav) .footer .col-md-12 { text-align:justify }.
   No khb não existe #hb-topnav, por isso caía centralizado. */
.khb .footer .col-md-12 { text-align:justify !important; }

/* Página do raro: alinha verticalmente os dois cabeçalhos de seção
   ("Valores em Habloons" e "Últimas trocas registradas"). O da esquerda tem
   os toggles Histórico/Gráfico e ficava mais alto que o da direita. */
.khb-rare .khb-rare-histfull .card-header {
  height:58px !important; min-height:58px; padding-top:0 !important; padding-bottom:0 !important;
  display:flex; align-items:center; justify-content:space-between; gap:10px;
}

/* Página do raro: estados vazios no padrão khb (caixa neutra tracejada,
   centralizada) em vez do "alert-info" azul cru do Bootstrap. Cobre:
   "sem histórico de valor", "nenhuma negociação registrada" e
   "sem dados para o gráfico". */
.khb-rare .hb-empty-note,
.khb-rare .card-body .alert-info {
  background:#f6f8f9 !important;
  border:2px dashed #dfe6ea !important;
  border-radius:12px !important;
  color:#8a9aa3 !important;
  font-weight:600 !important;
  font-size:13px !important;
  text-align:center !important;
  padding:22px 18px !important;
  margin:0 !important;
}

/* ============================================================
   PÁGINA DE MANUTENÇÃO / REMAKE no modelo KHB (2026-07-21)
   Topo azul-claro (igual home) + mega-box com boneco à esquerda,
   barra arcade, countdown, highlights, rodapé no padrão do site.
   ============================================================ */
.khb-mnt { min-height:100vh; display:flex; flex-direction:column; background:#e6eaf2;
  background-image:url(/assets/images/hb-cubes.svg); background-size:40px 60px; }

/* topo azul CLARO — MESMO gradiente da home (.khb-sky) */
.khb-mnt-sky { position:relative; background:linear-gradient(180deg,#45bbf8 0%,#38b0f2 100%); padding:80px 0 104px; text-align:center; overflow:hidden; }
.khb-mnt-logo { display:flex; justify-content:center; align-items:center; }
.khb-mnt-logo img { height:72px; width:auto; image-rendering:pixelated; filter:drop-shadow(0 5px 0 rgba(0,0,0,.18)); }
.khb-mnt-logotx { font-family:'Baloo 2',cursive; font-weight:800; font-size:40px; color:#fff; text-shadow:0 4px 0 rgba(0,0,0,.18); }
.khb-mnt-team { position:absolute; top:16px; right:20px; display:inline-flex; align-items:center; gap:6px;
  background:#fff; color:#1f6f9e; border-radius:11px; padding:9px 14px; font-size:12.5px; font-weight:800;
  text-decoration:none; box-shadow:0 4px 0 rgba(0,0,0,.14); }
.khb-mnt-team:hover { background:#eef7fd; color:#155a82; }
.khb-mnt-team i { font-size:15px; }
.khb-mnt-badge { display:inline-flex; align-items:center; gap:7px; margin-top:16px;
  font-family:'Press Start 2P',monospace; font-size:11px; letter-spacing:.5px; padding:11px 16px; border-radius:11px;
  box-shadow:0 5px 0 rgba(0,0,0,.18); }
.khb-mnt-badge i { font-size:14px; }
.khb-mnt-badge.is-man { background:#ffc23c; color:#5a3d00; }
.khb-mnt-badge.is-remake { background:#0b2f4d; color:#fff; }

/* container que sobe por cima da faixa (igual home) */
.khb-mnt-wrap { position:relative; z-index:1; width:100%; max-width:940px; margin:-72px auto 0; padding:0 16px 8px; }

/* mega-box do herói: texto + boneco */
.khb-mnt-hero { display:flex; gap:26px; align-items:stretch; padding:26px 28px !important; }
.khb-mnt-hero-tx { flex:1; min-width:0; }
.khb-mnt-chip { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:800;
  padding:6px 12px; border-radius:9px; margin-bottom:12px; }
.khb-mnt-chip i { font-size:14px; }
.khb-mnt-chip.is-man { background:#fdecec; color:#c0392b; }
.khb-mnt-chip.is-remake { background:#e4f6fc; color:#1f87b6; }
.khb-mnt-title { font-family:'Baloo 2',cursive; font-weight:800; font-size:30px; line-height:1.18; color:#22303a; margin:0 0 10px; }
.khb-mnt-msg { font-size:14.5px; line-height:1.6; color:#5a6b73; margin:0 0 18px; }

/* barra de progresso arcade (sólida) */
.khb-mnt-prog { margin-bottom:18px; }
.khb-mnt-prog-hd { display:flex; justify-content:space-between; font-size:13px; font-weight:800; color:#5a6b73; margin-bottom:6px; }
.khb-mnt-prog-hd i { color:#7bc143; margin-right:3px; }
.khb-mnt-prog-track { height:16px; border-radius:10px; background:#eef2f4; overflow:hidden; box-shadow:inset 0 2px 0 #dfe6ea; }
.khb-mnt-prog-track > span { display:block; height:100%; border-radius:10px; background:linear-gradient(90deg,#8dc63f,#5cae23); transition:width .5s ease; }

/* countdown (restyle das células do MaintCountdown) — navy sobre o card branco */
.khb-mnt-cdwrap { margin-bottom:18px; }
.khb-mnt-cdlabel { font-size:13px; font-weight:800; color:#5a6b73; margin-bottom:7px; }
.khb-mnt-cdlabel i { color:#f7941d; margin-right:3px; }
.khb-mnt .hb-mnt-cd { display:flex; gap:9px; flex-wrap:wrap; }
.khb-mnt .hb-mnt-cd-cell { background:#0b2f4d; border-radius:11px; padding:9px 14px; text-align:center; min-width:58px; box-shadow:0 5px 0 #082238; }
.khb-mnt .hb-mnt-cd-cell .n { display:block; font-family:'Baloo 2',cursive; font-size:24px; font-weight:800; line-height:1; color:#ffc23c; }
.khb-mnt .hb-mnt-cd-cell .l { display:block; font-size:10.5px; font-weight:700; color:#9fb3c8; text-transform:uppercase; margin-top:3px; }
.khb-mnt .hb-mnt-cd-done { display:inline-flex; align-items:center; gap:6px; background:#e9f7e0; color:#3f7e1c; font-weight:800; border-radius:10px; padding:9px 14px; }

/* botões de redes: MESMO estilo das notícias (.khb-comm), em linha */
.khb-mnt-comm { flex-direction:row !important; flex-wrap:wrap; }
.khb-mnt-comm a:not(.discord):not(.x) { background:#5b8def; box-shadow:0 4px 0 #4670c9; }

/* boneco no pedestal (olhando pra esquerda, via dir=4 no componente) */
.khb-mnt-boneco { flex:0 0 168px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; position:relative; }
.khb-mnt-boneco img { max-width:150px; height:auto; image-rendering:pixelated; position:relative; z-index:1; filter:drop-shadow(0 8px 10px rgba(0,0,0,.22)); }
.khb-mnt-ped { width:120px; height:16px; border-radius:50%; background:radial-gradient(ellipse at center, rgba(11,31,56,.22), transparent 70%); margin-top:-6px; }

/* seção "o que vem aí" */
.khb-mnt-hlcard { margin-top:16px; padding:20px 22px 22px !important; }
.khb-mnt-sec { font-family:'Baloo 2',cursive; font-weight:800; font-size:19px; color:#22303a; margin:0; }
.khb-mnt-hlgrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.khb-mnt-hl { display:flex; align-items:center; gap:12px; background:#f6f8f9; border:2px solid #eef2f4; border-radius:13px;
  padding:13px 15px; box-shadow:0 4px 0 #e2e7ee; font-size:13.5px; font-weight:600; color:#3a4a52; }
.khb-mnt-hl-ic { flex:0 0 auto; width:40px; height:40px; border-radius:11px; display:grid; place-items:center;
  background:#ffc23c; color:#5a3d00; font-size:20px; box-shadow:0 3px 0 #d99e12; }

/* rodapé = PADRÃO do site (justificado, container 1160), colado no FIM da página */
.khb-mnt-foot { margin-top:auto; padding-top:10px; }

@media (max-width:640px){
  .khb-mnt-hero { flex-direction:column; }
  .khb-mnt-boneco { flex-basis:auto; }
  .khb-mnt-title { font-size:25px; }
}

/* Card de evento (home): data BR + "Me interessa" -> Google Calendar (2026-07-21) */
.khb .hb-evc-imglink { display:block; text-decoration:none; }
.khb .hb-evc-title { text-decoration:none; }
.khb .hb-evc-when { display:inline-flex; align-items:center; gap:5px; align-self:flex-start; font-size:11px; font-weight:800;
  color:#1f6f9e; background:#eaf4fb; border-radius:8px; padding:5px 10px; }
.khb .hb-evc-when .ti { font-size:13px; }
.khb .hb-evc-interest { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; margin-top:auto;
  font-size:11.5px; font-weight:800; color:#fff; background:#f7941d; border-radius:9px; padding:8px; border-bottom:3px solid #d97d0a; text-decoration:none; }
.khb .hb-evc-interest:hover { background:#ffa532; }
.khb .hb-evc-interest .ti { font-size:15px; }

/* Emblemas: grid com mais respiro entre os cards (2026-07-21) */
.khb-emb-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(140px, 1fr)); gap:14px; }
.khb-emb-grid .hb-emb-slot { width:100%; }

/* Modal de emblema no khb — header com pedestal centralizado, a prova do reset .khb * (2026-07-21) */
.khb .khb-emb-box { position:relative; background:#fff; border-radius:16px; width:min(440px,94vw); max-height:86vh; overflow:auto; box-shadow:0 20px 60px rgba(0,0,0,.4); padding:24px 22px 20px !important; }
.khb .khb-emb-x { position:absolute; top:12px; right:12px; width:30px; height:30px; border:0; border-radius:9px; background:#f1f4f6; color:#8a9aa3; cursor:pointer; font-size:15px; display:grid; place-items:center; }
.khb .khb-emb-x:hover { background:#fdecec; color:#e23b3b; }
.khb .khb-emb-head { display:flex; flex-direction:column; align-items:center; gap:6px; margin-bottom:20px; }
.khb .khb-emb-badge { display:grid; place-items:center; width:88px; height:88px; background:#f6f8f9; border:2px solid #eef2f4; border-radius:16px; box-shadow:0 4px 0 #e2e7ee; flex:0 0 auto; margin-bottom:12px; }
.khb .khb-emb-badge img { max-width:56px !important; max-height:56px !important; width:auto; height:auto; image-rendering:pixelated; }
.khb .khb-emb-name { font-family:'Baloo 2',cursive; font-weight:800; font-size:17px; color:#2d3b41; text-align:center; line-height:1.2; }
.khb .khb-emb-meta { font-size:12px; color:#8a9aa3; font-weight:600; text-align:center; }
.khb .khb-emb-empty { font-size:13px; color:#8a9aa3; text-align:center; line-height:1.55; background:#f6f8f9; border:2px dashed #dfe6ea; border-radius:12px; padding:16px !important; margin:0; }
.khb .khb-emb-owners { display:flex; flex-direction:column; gap:7px; }
.khb .khb-emb-owner { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 12px !important; background:#f6f8f9; border-radius:10px; text-decoration:none; }
.khb .khb-emb-owner:hover { background:#eef2f4; }
.khb .khb-emb-owner .nm { font-weight:700; font-size:13px; color:#2d3b41; }
.khb .khb-emb-owner .dt { font-size:11px; color:#8a9aa3; }
.khb .khb-emb-pager { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:12px; }
.khb .khb-emb-pgbtn { border:0; background:#eef2f4; color:#5a6b73; border-radius:9px; padding:7px 12px !important; font-size:12px; font-weight:700; cursor:pointer; display:inline-flex; align-items:center; gap:4px; }
.khb .khb-emb-pgbtn:disabled { opacity:.5; cursor:default; }
.khb .khb-emb-pager .pg { font-size:12px; color:#8a9aa3; font-weight:700; }

/* Paginas de erro 404/403 no modelo khb (2026-07-21) — com bom espacamento */
.khb .khb-err { display:flex; align-items:center; justify-content:center; gap:44px; flex-wrap:wrap; padding:48px 34px !important; }
.khb .khb-err-boneco { flex:0 0 auto; display:flex; flex-direction:column; align-items:center; }
.khb .khb-err-boneco img { max-width:150px; height:auto; image-rendering:pixelated; filter:drop-shadow(0 10px 12px rgba(0,0,0,.2)); }
.khb .khb-err-ped { width:120px; height:16px; border-radius:50%; background:radial-gradient(ellipse at center, rgba(11,31,56,.2), transparent 70%); margin-top:-4px; }
.khb .khb-err-tx { max-width:470px; }
.khb .khb-err-code { display:inline-block; font-family:'Press Start 2P',monospace; font-size:12px; color:#f7941d; background:#fff4e2; border-radius:9px; padding:9px 13px !important; margin-bottom:18px; }
.khb .khb-err-title { font-family:'Baloo 2',cursive; font-weight:800; font-size:28px; line-height:1.2; color:#22303a; margin:0 0 14px; }
.khb .khb-err-msg { font-size:15px; line-height:1.65; color:#5a6b73; margin:0 0 26px; }
.khb .khb-err-actions { display:flex; flex-wrap:wrap; gap:12px; }
.khb .khb-err-btn { display:inline-flex; align-items:center; gap:7px; padding:11px 18px !important; border-radius:11px; font-size:14px; font-weight:800; text-decoration:none; background:#eef2f4; color:#5a6b73; box-shadow:0 4px 0 #d7dde2; }
.khb .khb-err-btn:hover { background:#e6ebee; }
.khb .khb-err-btn.primary { background:#f7941d; color:#fff; box-shadow:0 4px 0 #d97d0a; }
.khb .khb-err-btn.primary:hover { background:#ffa532; }
.khb .khb-err-btn i { font-size:16px; }
@media (max-width:560px){ .khb .khb-err { flex-direction:column; text-align:center; gap:26px; } .khb .khb-err-tx { text-align:center; } .khb .khb-err-actions { justify-content:center; } }

/* /emblemas: filtro/busca nativo khb (2026-07-21) */
.khb .khb-emb-filter { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.khb .khb-emb-search { flex:1; min-width:220px; max-width:380px; }
.khb .khb-emb-hint { font-size:12px; color:#8a9aa3; margin:0 0 18px; line-height:1.5; }

/* /emblemas-jogador/all no khb (2026-07-21) */
.khb .khb-allbadges { display:grid; grid-template-columns:repeat(auto-fit,minmax(340px,1fr)); gap:16px; }
.khb .khb-ab-hd { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:16px; }
.khb .khb-ab-hd h2 { font-family:'Baloo 2',cursive; font-weight:800; font-size:17px; color:#2d3b41; margin:0; }
