/* Bolso: mobile-first, visual de app. Cores e medidas em variaveis. */
@font-face { font-family: "Bricolage"; src: url(fonts/bricolagegrotesque-normal.woff2) format("woff2"); font-weight: 500 800; font-display: swap; }
@font-face { font-family: "Figtree"; src: url(fonts/figtree-normal.woff2) format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url(fonts/figtree-italic.woff2) format("woff2"); font-weight: 400 700; font-style: italic; font-display: swap; }

:root {
	--bg: #f3f0ff;
	--card: #ffffff;
	--ink: #17123a;
	--ink-2: #4a4470;
	--line: #e2dcfb;
	--papaya: #ff5a2c;
	--papaya-d: #e2441a;
	--cobalt: #2f45ff;
	--lilac: #cbbcff;
	--lilac-2: #e9e3ff;
	--mint: #19c39a;
	--rasp: #e8336d;
	--sun: #ffc93c;
	--sky: #8fd3ff;
	--r: 22px;
	--r-s: 14px;
	--sh: 0 1px 0 rgba(23, 18, 58, .06), 0 10px 28px -14px rgba(23, 18, 58, .28);
	--head: "Bricolage", "Trebuchet MS", system-ui, sans-serif;
	--text: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
	--tab-h: 64px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 16px; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 400 17px/1.6 var(--text); padding-bottom: calc(var(--tab-h) + env(safe-area-inset-bottom)); font-variant-numeric: tabular-nums; }
img { max-width: 100%; height: auto; }
a { color: var(--cobalt); text-underline-offset: 3px; }
a:hover { color: var(--ink); }
:focus-visible { outline: 3px solid var(--papaya); outline-offset: 2px; border-radius: 6px; }
.bx-skip { position: absolute; left: -999px; top: 8px; background: var(--ink); color: #fff; padding: 10px 14px; border-radius: 10px; z-index: 50; }
.bx-skip:focus { left: 8px; }
.bx-wrap { width: 100%; max-width: 760px; margin: 0 auto; padding: 0 16px; }
.bx-ico { width: 22px; height: 22px; flex: none; }

/* ---------- topo ---------- */
.bx-top { background: var(--ink); color: #fff; position: sticky; top: 0; z-index: 30; }
.bx-top__in { max-width: 1120px; margin: 0 auto; padding: 10px 16px; display: flex; align-items: center; gap: 14px; }
.bx-brand { display: flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; margin-right: auto; }
.bx-brand__img { max-height: 36px; width: auto; }
.bx-brand__mark { width: 34px; height: 34px; border-radius: 11px; background: var(--papaya); display: grid; place-items: center; font: 800 20px/1 var(--head); transform: rotate(-6deg); }
.bx-brand__name { font: 800 20px/1 var(--head); letter-spacing: -.02em; }
.bx-top__nav { display: none; }
.bx-top__check { display: inline-flex; align-items: center; gap: 6px; background: var(--mint); color: var(--ink); text-decoration: none; font: 700 14px/1 var(--text); padding: 9px 12px; border-radius: 999px; }
.bx-top__check:hover { color: var(--ink); background: #4fdcb8; }
.bx-stories { background: var(--ink); padding: 0 0 12px; }
.bx-stories ul { list-style: none; margin: 0 auto; padding: 0 16px; max-width: 1120px; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory; }
.bx-stories ul::-webkit-scrollbar { display: none; }
.bx-stories li { scroll-snap-align: start; flex: none; }
.bx-story { display: flex; align-items: center; gap: 8px; padding: 8px 14px 8px 8px; border-radius: 999px; background: rgba(255, 255, 255, .09); color: #fff; text-decoration: none; font: 600 14px/1 var(--text); white-space: nowrap; min-height: 40px; }
.bx-story:hover { background: rgba(255, 255, 255, .18); color: #fff; }
.bx-story__dot { width: 24px; height: 24px; border-radius: 50%; border: 3px solid var(--ink); box-shadow: 0 0 0 2px var(--papaya); background: var(--papaya); }
.bx-story--c2 .bx-story__dot { background: var(--cobalt); box-shadow: 0 0 0 2px var(--cobalt); }
.bx-story--c3 .bx-story__dot { background: var(--sun); box-shadow: 0 0 0 2px var(--sun); }
.bx-story--c4 .bx-story__dot { background: var(--rasp); box-shadow: 0 0 0 2px var(--rasp); }
.bx-story--c5 .bx-story__dot { background: var(--mint); box-shadow: 0 0 0 2px var(--mint); }
.bx-story--c6 .bx-story__dot { background: var(--lilac); box-shadow: 0 0 0 2px var(--lilac); }

/* ---------- barra inferior (app) ---------- */
.bx-tabbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; display: grid; grid-template-columns: repeat(5, 1fr); background: rgba(255, 255, 255, .96); backdrop-filter: blur(10px); border-top: 1px solid var(--line); padding-bottom: env(safe-area-inset-bottom); }
.bx-tab { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; height: var(--tab-h); color: var(--ink-2); text-decoration: none; font: 600 12px/1 var(--text); background: none; border: 0; cursor: pointer; }
.bx-tab.is-on { color: var(--papaya); }
.bx-tab.is-on .bx-ico { transform: translateY(-1px) scale(1.08); }
.bx-sheet { position: fixed; inset: 0; z-index: 60; background: rgba(23, 18, 58, .5); display: flex; align-items: flex-end; }
.bx-sheet[hidden] { display: none; }
.bx-sheet__panel { background: var(--card); width: 100%; border-radius: 26px 26px 0 0; padding: 22px 18px calc(22px + env(safe-area-inset-bottom)); position: relative; max-height: 85vh; overflow: auto; }
.bx-sheet__close { position: absolute; right: 12px; top: 10px; width: 44px; height: 44px; border: 0; background: var(--lilac-2); border-radius: 50%; font-size: 24px; cursor: pointer; color: var(--ink); }
.bx-sheet__list, .bx-sheet__small { list-style: none; margin: 0; padding: 0; }
.bx-sheet__list a { display: block; padding: 14px 4px; font: 700 22px/1.2 var(--head); color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line); }
.bx-sheet__small { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.bx-sheet__small a { display: inline-block; padding: 9px 12px; border-radius: 999px; background: var(--lilac-2); color: var(--ink); text-decoration: none; font-size: 14px; }

/* ---------- elementos comuns ---------- */
.bx-main { min-height: 60vh; }
.bx-art { padding: 8px 0 32px; }
.bx-crumbs ol { list-style: none; margin: 14px 0 6px; padding: 0; display: flex; flex-wrap: wrap; gap: 4px; font-size: 13px; }
.bx-crumbs li:not(:last-child)::after { content: "/"; margin-left: 4px; color: var(--ink-2); }
.bx-crumbs a { color: var(--ink-2); text-decoration: none; }
.bx-crumbs li:last-child a { color: var(--ink); font-weight: 600; }
.bx-kicker { display: inline-block; margin: 8px 0 4px; padding: 5px 10px; border-radius: 999px; background: var(--lilac); color: var(--ink); font: 700 12px/1 var(--text); letter-spacing: .04em; text-transform: uppercase; }
.bx-h1 { font: 800 clamp(28px, 7.4vw, 44px)/1.05 var(--head); letter-spacing: -.025em; margin: 6px 0 8px; }
.bx-byline { margin: 0 0 14px; font-size: 14px; color: var(--ink-2); }
.bx-byline a { color: var(--ink); font-weight: 600; }

.bx-prose h2 { font: 800 clamp(23px, 5.6vw, 30px)/1.12 var(--head); letter-spacing: -.02em; margin: 34px 0 10px; }
.bx-prose h3 { font: 700 20px/1.2 var(--head); margin: 24px 0 8px; }
.bx-prose p, .bx-prose ul, .bx-prose ol { margin: 0 0 14px; }
.bx-prose ul, .bx-prose ol { padding-left: 1.2em; }
.bx-prose li { margin-bottom: 6px; }
.bx-prose li::marker { color: var(--papaya); font-weight: 700; }
.bx-prose blockquote { margin: 18px 0; padding: 16px 18px; background: var(--card); border-radius: var(--r-s); box-shadow: var(--sh); font-size: 16px; border-left: 6px solid var(--cobalt); }
.bx-prose table, .bx-spa { width: 100%; border-collapse: separate; border-spacing: 0; background: var(--card); border-radius: var(--r-s); overflow: hidden; box-shadow: var(--sh); font-size: 15px; margin: 0 0 18px; }
.bx-prose th, .bx-spa th { background: var(--ink); color: #fff; text-align: left; font-weight: 700; padding: 10px 12px; }
.bx-prose td, .bx-spa td { padding: 10px 12px; border-top: 1px solid var(--line); vertical-align: top; }
.bx-prose .bx-tablewrap, .bx-tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 599px) {
	.bx-prose table { display: block; overflow-x: auto; white-space: nowrap; }
}

.bx-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 20px; border-radius: 999px; background: var(--papaya); color: #fff; font: 700 16px/1.1 var(--text); text-decoration: none; box-shadow: 0 6px 0 var(--papaya-d); transition: transform .12s, box-shadow .12s; }
.bx-btn:hover { color: #fff; transform: translateY(2px); box-shadow: 0 4px 0 var(--papaya-d); }
.bx-btn--big { width: 100%; font-size: 17px; }
.bx-link { font-weight: 700; }
.bx-cta { margin: 20px 0; display: grid; gap: 8px; text-align: center; }
.bx-cta small { color: var(--ink-2); font-size: 13px; }

.bx-resumo { margin: 4px 0 18px; }
.bx-resumo__t { margin: 0 0 8px; font: 800 15px/1 var(--head); text-transform: uppercase; letter-spacing: .05em; color: var(--ink-2); }
.bx-resumo ul { list-style: none; margin: 0 -16px; padding: 2px 16px 6px; display: flex; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.bx-resumo ul::-webkit-scrollbar { display: none; }
.bx-resumo li { flex: 0 0 auto; max-width: 78%; scroll-snap-align: start; background: var(--card); border-radius: var(--r-s); padding: 12px 14px; font-weight: 600; font-size: 15px; line-height: 1.35; box-shadow: var(--sh); border-top: 5px solid var(--lilac); }
.bx-resumo li:nth-child(2) { border-top-color: var(--sun); }
.bx-resumo li:nth-child(3) { border-top-color: var(--sky); }
.bx-resumo li:nth-child(4) { border-top-color: var(--mint); }
.bx-resumo li:nth-child(5) { border-top-color: var(--papaya); }

.bx-faq { margin: 34px 0 10px; }
.bx-faq h2 { font: 800 26px/1.1 var(--head); margin: 0 0 12px; }
.bx-faq details { background: var(--card); border-radius: var(--r-s); margin-bottom: 10px; box-shadow: var(--sh); }
.bx-faq summary { list-style: none; cursor: pointer; padding: 16px 52px 16px 16px; font-weight: 700; position: relative; min-height: 52px; }
.bx-faq summary::-webkit-details-marker { display: none; }
.bx-faq summary::after { content: "+"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; border-radius: 50%; background: var(--lilac-2); display: grid; place-items: center; font: 700 20px/1 var(--text); color: var(--cobalt); }
.bx-faq details[open] summary::after { content: "-"; background: var(--cobalt); color: #fff; }
.bx-faq details > div { padding: 0 16px 12px; }

.bx-rel { margin: 26px 0; }
.bx-rel__t { margin: 0 0 8px; font: 800 18px/1 var(--head); }
.bx-rel ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.bx-rel a { display: inline-block; padding: 10px 14px; border-radius: 999px; background: var(--card); border: 2px solid var(--line); color: var(--ink); text-decoration: none; font-weight: 600; font-size: 15px; }
.bx-rel a:hover { border-color: var(--cobalt); color: var(--cobalt); }

.bx-rg { background: var(--ink); color: #fff; border-radius: var(--r-s); padding: 14px 16px; font-size: 14px; margin: 22px 0; }
.bx-rg b { background: var(--rasp); border-radius: 8px; padding: 2px 7px; margin-right: 6px; }
.bx-rg a { color: var(--lilac); }

.bx-author { display: flex; gap: 14px; align-items: flex-start; background: var(--card); border-radius: var(--r); padding: 16px; box-shadow: var(--sh); margin: 26px 0 8px; }
.bx-author__img { width: 64px; height: 64px; border-radius: 50%; flex: none; object-fit: cover; background: var(--lilac); }
.bx-author__img--blank { display: grid; place-items: center; font: 800 22px/1 var(--head); color: var(--ink); }
.bx-author__name { margin: 0; font: 800 18px/1.2 var(--head); }
.bx-author__name span { display: block; font: 500 13px/1.3 var(--text); color: var(--ink-2); }
.bx-author__bio { margin: 6px 0; font-size: 15px; }
.bx-author__more { margin: 0; font-size: 14px; }
.bx-author--full .bx-author__img { width: 96px; height: 96px; }

/* ---------- nota, selo, logo ---------- */
.bx-donut { --p: 0; --sz: 64px; width: var(--sz); height: var(--sz); border-radius: 50%; flex: none; display: grid; place-content: center; text-align: center; background: radial-gradient(closest-side, var(--card) 76%, transparent 77%), conic-gradient(var(--papaya) calc(var(--p) * 1%), var(--lilac-2) 0); }
.bx-donut b { font: 800 calc(var(--sz) * .32)/1 var(--head); }
.bx-donut small { font-size: 10px; color: var(--ink-2); }
.bx-donut--s { --sz: 50px; }
.bx-donut--l { --sz: 84px; }
.bx-donut--none { background: var(--lilac-2); }
.bx-stamp { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px 4px 6px; border-radius: 999px; font: 700 12px/1.2 var(--text); white-space: nowrap; }
.bx-stamp svg { width: 18px; height: 18px; fill: currentColor; }
.bx-stamp--ok { background: #d8f7ec; color: #08795d; }
.bx-stamp--no { background: #ffe0ea; color: #b4124a; padding-left: 10px; }
.bx-stamp--off { background: #ece9f5; color: var(--ink-2); padding-left: 10px; }
.bx-stamp--maybe { background: #fff2cc; color: #7a5600; padding-left: 10px; }
.bx-logo { display: grid; place-items: center; flex: none; border-radius: 16px; overflow: hidden; font: 800 20px/1 var(--head); color: var(--ink); width: 56px; height: 56px; background: var(--lilac); }
.bx-logo--s { width: 36px; height: 36px; border-radius: 10px; font-size: 14px; }
.bx-logo--l { width: 76px; height: 76px; border-radius: 20px; font-size: 26px; }
.bx-logo--img { background: #fff; border: 1px solid var(--line); }
.bx-logo__img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }
.bx-logo--t0 { background: var(--lilac); } .bx-logo--t1 { background: var(--sun); } .bx-logo--t2 { background: var(--sky); }
.bx-logo--t3 { background: #ffb59e; } .bx-logo--t4 { background: #b6f0dc; } .bx-logo--t5 { background: #ffc4d8; }

/* ---------- cards de casas ---------- */
.bx-cards { margin: 22px 0; }
.bx-cards__title { font: 800 24px/1.1 var(--head); margin: 0 0 10px; }
.bx-cards__row { display: grid; gap: 12px; }
.bx-cards__note { font-size: 13px; color: var(--ink-2); margin: 8px 0 0; }
.bx-card { position: relative; background: var(--card); border-radius: var(--r); padding: 16px; box-shadow: var(--sh); }
.bx-card__pos { position: absolute; top: -8px; left: -6px; width: 30px; height: 30px; border-radius: 10px; background: var(--ink); color: #fff; display: grid; place-items: center; font: 800 15px/1 var(--head); transform: rotate(-8deg); }
.bx-card__top { display: flex; gap: 12px; align-items: center; }
.bx-card__id { flex: 1; min-width: 0; display: grid; gap: 4px; justify-items: start; }
.bx-card__name { margin: 0; font: 800 20px/1.1 var(--head); }
.bx-card__dom { font-size: 13px; color: var(--ink-2); overflow-wrap: anywhere; }
.bx-card__pts { margin: 12px 0 0; padding: 0; list-style: none; display: grid; gap: 6px; font-size: 15px; }
.bx-card__pts li { padding-left: 22px; position: relative; }
.bx-card__pts li::before { content: ""; position: absolute; left: 2px; top: .55em; width: 10px; height: 10px; border-radius: 3px; background: var(--mint); transform: rotate(45deg); }
.bx-card__act { display: flex; align-items: center; gap: 14px; margin-top: 14px; flex-wrap: wrap; }
.bx-card__act .bx-btn { flex: 1 1 160px; }

/* ---------- avaliacao ---------- */
.bx-idcard { background: var(--card); border-radius: 28px; padding: 18px; box-shadow: var(--sh); margin: 8px 0 18px; border: 3px solid var(--ink); position: relative; overflow: hidden; }
.bx-idcard::before { content: ""; position: absolute; right: -40px; top: -40px; width: 140px; height: 140px; border-radius: 50%; background: var(--lilac-2); }
.bx-idcard__top { display: flex; gap: 14px; align-items: flex-start; position: relative; }
.bx-idcard__who { flex: 1; min-width: 0; }
.bx-idcard__h1 { font-size: clamp(24px, 6.4vw, 36px); margin-top: 0; }
.bx-idcard__dom { margin: 6px 0 0; font: 700 15px/1.2 var(--text); color: var(--cobalt); overflow-wrap: anywhere; }
.bx-idcard__act { display: grid; gap: 6px; margin: 16px 0 8px; text-align: center; position: relative; }
.bx-idcard__act small { color: var(--ink-2); font-size: 12px; }
.bx-idcard .bx-byline { margin: 10px 0 0; position: relative; }
.bx-idcard--muted { border-color: var(--line); }
.bx-idcard__mp { position: relative; margin: 14px 0 0; padding: 12px 14px; border-radius: var(--r-s); background: var(--sun); font-weight: 600; font-size: 15px; }
.bx-cards--info .bx-card { border-top: 6px solid var(--lilac); }
@media (max-width: 479px) {
	.bx-idcard__top { flex-wrap: wrap; }
	.bx-idcard__top .bx-donut { order: -1; margin-left: auto; }
	.bx-idcard__who { flex-basis: 100%; }
}
.bx-pix, .bx-crit { background: var(--card); border-radius: var(--r); padding: 16px; box-shadow: var(--sh); margin: 0 0 16px; }
.bx-pix__t, .bx-crit__t { margin: 0 0 10px; font: 800 18px/1.1 var(--head); }
.bx-pix__t::before { content: ""; display: inline-block; width: 14px; height: 14px; margin-right: 8px; background: var(--mint); transform: rotate(45deg); border-radius: 3px; }
.bx-facts { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.bx-facts div { background: var(--bg); border-radius: 12px; padding: 10px 12px; }
.bx-facts dt { font-size: 12px; color: var(--ink-2); text-transform: uppercase; letter-spacing: .03em; }
.bx-facts dd { margin: 2px 0 0; font-weight: 700; overflow-wrap: anywhere; }
.bx-crit__row { display: grid; grid-template-columns: 1fr 1.2fr auto; gap: 10px; align-items: center; font-size: 14px; padding: 5px 0; }
.bx-crit__row i { height: 10px; border-radius: 999px; background: linear-gradient(90deg, var(--cobalt) var(--w), var(--lilac-2) var(--w)); }
.bx-crit__row b { font-size: 13px; min-width: 32px; text-align: right; }
.bx-pill { display: flex; align-items: center; gap: 10px; background: var(--card); border-radius: 999px; padding: 6px 8px 6px 6px; margin: 14px 0 4px; box-shadow: var(--sh); color: var(--ink); text-decoration: none; font-weight: 800; flex-wrap: wrap; }
.bx-pill > span:not(.bx-stamp):not(.bx-logo):not(.bx-donut) { margin-right: auto; }
.bx-pill .bx-donut { --sz: 40px; }
.bx-warn { background: var(--rasp); color: #fff; border-radius: 28px; padding: 20px 18px; margin: 8px 0 18px; }
.bx-warn__tag { display: inline-block; margin: 0 0 6px; background: #fff; color: var(--rasp); border-radius: 999px; padding: 4px 10px; font: 800 12px/1 var(--text); text-transform: uppercase; letter-spacing: .06em; }
.bx-warn .bx-stamp--no { background: rgba(255, 255, 255, .2); color: #fff; }
.bx-warn__lead { font-weight: 600; margin: 12px 0 8px; }
.bx-warn .bx-byline, .bx-warn .bx-byline a { color: #ffe0ea; }
.bx-rule, .bx-rng { border-radius: var(--r-s); padding: 14px 16px; margin: 6px 0 18px; font-size: 15px; }
.bx-rule { background: var(--sun); }
.bx-rng { background: var(--sky); }

/* ---------- inicio e hubs ---------- */
.bx-hero { background: var(--ink); color: #fff; padding: 10px 0 34px; border-radius: 0 0 34px 34px; position: relative; overflow: hidden; }
.bx-hero::after { content: ""; position: absolute; width: 240px; height: 240px; right: -80px; bottom: -110px; background: var(--papaya); border-radius: 46% 54% 40% 60%; transform: rotate(18deg); opacity: .9; }
.bx-hero .bx-wrap { position: relative; z-index: 1; }
.bx-hero .bx-kicker { background: var(--mint); }
.bx-hero__h1 { font: 800 clamp(32px, 9vw, 58px)/1 var(--head); letter-spacing: -.03em; margin: 10px 0 10px; }
.bx-hero__lead { font-size: 18px; color: #e6e1ff; margin: 0 0 18px; max-width: 34em; }
.bx-ver { background: var(--card); color: var(--ink); border-radius: var(--r); padding: 16px; box-shadow: var(--sh); margin: 12px 0 18px; }
.bx-ver__label { display: block; font: 800 19px/1.2 var(--head); margin-bottom: 10px; }
.bx-ver__row { display: flex; gap: 8px; }
.bx-ver__in { flex: 1; min-width: 0; height: 52px; border-radius: 14px; border: 2px solid var(--line); padding: 0 14px; font: 600 17px var(--text); color: var(--ink); background: var(--bg); }
.bx-ver__in:focus { border-color: var(--cobalt); outline: none; }
.bx-ver__go { height: 52px; border: 0; border-radius: 14px; padding: 0 18px; background: var(--cobalt); color: #fff; font: 700 16px var(--text); cursor: pointer; }
.bx-ver__out { margin: 12px 0 0; font-weight: 600; min-height: 1.4em; }
.bx-ver__out.is-ok { color: #08795d; }
.bx-ver__out.is-no { color: #b4124a; }
.bx-ver__hint { margin: 6px 0 0; font-size: 13px; color: var(--ink-2); }
.bx-plates { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 22px 0 6px; }
.bx-plate { display: flex; flex-direction: column; justify-content: flex-end; min-height: 120px; padding: 14px; border-radius: var(--r); text-decoration: none; color: var(--ink); box-shadow: var(--sh); position: relative; overflow: hidden; }
.bx-plate strong { font: 800 22px/1.05 var(--head); }
.bx-plate span { font-size: 14px; line-height: 1.3; margin-top: 4px; }
.bx-plate::before { content: ""; position: absolute; width: 70px; height: 70px; right: -14px; top: -14px; border-radius: 50%; background: rgba(255, 255, 255, .45); }
.bx-plate--a { background: var(--papaya); color: #fff; }
.bx-plate--b { background: var(--cobalt); color: #fff; }
.bx-plate--c { background: var(--sun); }
.bx-plate--d { background: var(--lilac); }
.bx-plate--e { background: #b6f0dc; }
.bx-plate--f { background: var(--sky); }
.bx-plate:hover { transform: translateY(-2px); color: inherit; }
.bx-plate--a:hover, .bx-plate--b:hover { color: #fff; }

.bx-band { background: var(--lilac); padding: 2px 0 26px; border-radius: 0 0 30px 30px; margin-bottom: 18px; }
.bx-band--palpites { background: var(--sky); }
.bx-band--loterias { background: var(--sun); }
.bx-band--jogos { background: #ffc4d8; }
.bx-band--bonus { background: #ffd8c9; }
.bx-band--pagamentos { background: #b6f0dc; }
.bx-band--regulamentacao, .bx-band--guia { background: #dcd6f7; }
.bx-band--avaliacoes { background: #ffe9a8; }
.bx-band__lead { font-size: 18px; margin: 0; max-width: 34em; }
.bx-band .bx-kicker { background: #fff; }
.bx-tiles { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 18px 0 24px; }
.bx-tile { display: block; padding: 16px; border-radius: var(--r); background: var(--card); color: var(--ink); text-decoration: none; box-shadow: var(--sh); border-left: 8px solid var(--lilac); min-height: 56px; }
.bx-tile strong { display: block; font: 800 19px/1.15 var(--head); }
.bx-tile span { display: block; font-size: 14px; color: var(--ink-2); margin-top: 4px; }
.bx-tile--c1 { border-left-color: var(--papaya); } .bx-tile--c2 { border-left-color: var(--cobalt); } .bx-tile--c3 { border-left-color: var(--sun); } .bx-tile--c4 { border-left-color: var(--mint); }
.bx-tile:hover { color: var(--cobalt); }

.bx-lotband { background: var(--sun); padding: 4px 0 22px; border-radius: 0 0 30px 30px; margin-bottom: 18px; overflow: hidden; }
.bx-lotband .bx-wrap { position: relative; }
.bx-lotband__balls { position: absolute; right: 12px; top: 12px; display: flex; gap: 4px; opacity: .9; }
.bx-lotband__balls i { width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: inset -3px -3px 0 rgba(0, 0, 0, .08); }
.bx-lotband__balls i:nth-child(2n) { background: var(--papaya); }
.bx-today { display: inline-flex; gap: 8px; align-items: center; margin: 14px 0 0; background: var(--card); border-radius: 999px; padding: 6px 12px 6px 6px; font-weight: 700; box-shadow: var(--sh); }
.bx-today span { background: var(--cobalt); color: #fff; border-radius: 999px; padding: 4px 10px; font-size: 13px; }

/* ---------- feeds ---------- */
.bx-feed { margin: 16px 0 22px; }
.bx-feed--empty { background: var(--card); border-radius: var(--r-s); padding: 14px 16px; border: 2px dashed var(--lilac); }
.bx-feed--empty p { margin: 0; }
.bx-draw { background: var(--card); border-radius: var(--r); padding: 14px 16px; box-shadow: var(--sh); margin-bottom: 10px; }
.bx-draw header { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; margin-bottom: 10px; }
.bx-draw header strong { font: 800 19px/1 var(--head); }
.bx-draw header span, .bx-draw header time { font-size: 14px; color: var(--ink-2); }
.bx-balls { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.bx-balls b { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--ink); color: #fff; font: 800 15px/1 var(--head); }
.bx-balls--alt b { background: var(--papaya); }
.bx-draw__x, .bx-draw__note { margin: 10px 0 0; font-size: 14px; }
.bx-feed__upd, .bx-feed__src { font-size: 13px; color: var(--ink-2); margin: 6px 0 0; }
.bx-tips { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.bx-tip { background: var(--card); border-radius: var(--r); padding: 14px 16px; box-shadow: var(--sh); display: grid; gap: 4px; position: relative; }
.bx-tip__when, .bx-tip__league { font-size: 13px; color: var(--ink-2); }
.bx-tip__match { font: 800 18px/1.2 var(--head); }
.bx-tip__pick b { color: var(--cobalt); }
.bx-tip__note { font-size: 14px; }
.bx-tip__res { position: absolute; right: 12px; top: 12px; border-radius: 999px; padding: 3px 10px; font: 700 12px/1.3 var(--text); background: var(--lilac-2); }
.bx-tip--green .bx-tip__res { background: #d8f7ec; color: #08795d; }
.bx-tip--red .bx-tip__res { background: #ffe0ea; color: #b4124a; }

/* ---------- indice e calculadora ---------- */
.bx-toc { background: var(--card); border-radius: var(--r-s); padding: 14px 16px; margin: 6px 0 18px; box-shadow: var(--sh); }
.bx-toc__t { margin: 0 0 6px; font: 800 16px/1 var(--head); }
.bx-toc ol { margin: 0; padding-left: 1.2em; font-size: 15px; }
.bx-toc li { margin: 4px 0; }
.bx-toc[hidden] { display: none; }
.bx-calc { background: var(--card); border-radius: var(--r); padding: 16px; box-shadow: var(--sh); margin: 16px 0 22px; display: grid; gap: 12px; }
.bx-calc label { display: grid; gap: 4px; font-weight: 700; font-size: 14px; }
.bx-calc input { height: 50px; border-radius: 14px; border: 2px solid var(--line); padding: 0 14px; font: 700 18px var(--text); background: var(--bg); color: var(--ink); }
.bx-calc__mode { display: flex; gap: 6px; background: var(--lilac-2); border-radius: 999px; padding: 4px; }
.bx-calc__mode button { flex: 1; height: 42px; border: 0; border-radius: 999px; background: none; font: 700 15px var(--text); color: var(--ink); cursor: pointer; }
.bx-calc__mode .is-on { background: var(--ink); color: #fff; }
.bx-calc__add { height: 44px; border-radius: 14px; border: 2px dashed var(--lilac); background: none; font: 700 15px var(--text); color: var(--cobalt); cursor: pointer; }
.bx-calc__out { display: block; background: var(--ink); color: #fff; border-radius: 14px; padding: 14px; font: 800 22px/1.3 var(--head); }
.bx-calc__out small { display: block; font: 500 14px var(--text); color: var(--lilac); }
.bx-calc__note { margin: 0; font-size: 13px; color: var(--ink-2); }

/* ---------- rodape ---------- */
.bx-foot { background: var(--ink); color: #d9d4f7; margin-top: 30px; padding: 30px 0 26px; font-size: 14px; border-radius: 30px 30px 0 0; }
.bx-foot__in { max-width: 1120px; margin: 0 auto; padding: 0 16px; display: grid; gap: 20px; }
.bx-foot__name { font: 800 22px/1 var(--head); color: #fff; margin: 0 0 6px; }
.bx-foot__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 16px; }
.bx-foot a { color: #fff; }
.bx-foot__18 b { background: var(--rasp); color: #fff; border-radius: 8px; padding: 2px 7px; margin-right: 6px; }
.bx-404 { padding: 20px 16px 40px; }

/* ---------- telas maiores ---------- */
@media (min-width: 600px) {
	.bx-plates { grid-template-columns: repeat(3, 1fr); }
	.bx-tiles { grid-template-columns: 1fr 1fr; }
	.bx-cards__row { grid-template-columns: 1fr 1fr; }
	.bx-facts { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 960px) {
	body { padding-bottom: 0; font-size: 18px; }
	.bx-tabbar, .bx-sheet { display: none !important; }
	.bx-top__nav { display: block; }
	.bx-nav { list-style: none; margin: 0; padding: 0; display: flex; gap: 4px; }
	.bx-nav a { display: block; padding: 10px 12px; border-radius: 999px; color: #fff; text-decoration: none; font-weight: 600; font-size: 15px; }
	.bx-nav a:hover, .bx-nav .current-menu-item a { background: rgba(255, 255, 255, .12); }
	.bx-wrap { max-width: 820px; }
	.bx-hero .bx-wrap { max-width: 1040px; }
	.bx-hero__lead { font-size: 20px; }
	.bx-foot__in { grid-template-columns: 1.2fr 2fr; }
	.bx-foot__legal { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; scroll-behavior: auto !important; }
}
