/* Sincronário – calendário, bússola e fichas (complementa Bootstrap 5) */

.sincro { --s-vermelha: #ed1651; --s-branca: #ffffff; --s-azul: #6cbfe6; --s-amarela: #ffd503; --s-portal: #2e8b57; --s-hoje: #9c2b8f; }

.sincro-titulo { font-size: clamp(1.4rem, 3vw, 2rem); }
.sincro-subtitulo { text-transform: uppercase; letter-spacing: .06em; }
.sincro-poema { font-style: italic; line-height: 1.6; }
.sincro [data-info] { cursor: pointer; }

/* glifo: tom sobre selo */
.sincro-glifo { display: inline-flex; flex-direction: column; align-items: center; width: 64px; flex-shrink: 0; }
.sincro-glifo img { width: 100%; height: auto; display: block; }
.sincro-glifo img:first-child { width: 80%; margin-bottom: 2px; }
.sincro-glifo[data-info]:hover { filter: drop-shadow(0 0 4px rgba(0, 0, 0, .35)); }
.sincro-glifo-sm { width: 48px; }
.sincro-glifo-md { width: 72px; }
.sincro-glifo-lg { width: 110px; }
.sincro-ico { height: 24px; width: auto; vertical-align: middle; }
.sincro-plasma-ico { width: 24px; vertical-align: middle; }

/* topo do calendário */
.sincro-cal-topo { background: rgba(var(--bs-body-bg-rgb), .96); backdrop-filter: blur(6px); padding: .75rem 0; margin-bottom: 1rem; border-bottom: 1px solid var(--bs-border-color); top: var(--sincro-topo, 0); z-index: 100; }
.sincro-cal-plasmas { grid-template-columns: 90px repeat(7, 1fr); gap: .5rem; margin-top: .75rem; align-items: end; }
.sincro-cal-plasmas img { max-height: 42px; }
.sincro-cal-totem img { max-height: 60px; }

/* calendário: 4 semanas × 7 dias */
.sincro-cal { border-radius: 1rem; overflow: hidden; border: 1px solid #000; }
.sincro-semana { display: grid; grid-template-columns: repeat(2, 1fr); }
.sincro-semana-rotulo { padding: .5rem; text-align: center; font-weight: 600; }
.sincro-semana-rotulo img { max-width: 70px; margin: auto; }
@media (min-width: 576px) { .sincro-semana { grid-template-columns: repeat(4, 1fr); } }
.sincro-rotulo-img, .sincro-cal-plasmas { display: none; }
@media (min-width: 1200px) {
	.sincro-semana { grid-template-columns: 90px repeat(7, 1fr); }
	.sincro-semana-rotulo { grid-column: auto; display: flex; align-items: center; justify-content: center; }
	.sincro-rotulo-img { display: block; }
	.sincro-rotulo-txt { display: none; }
	.sincro-cal-plasmas { display: grid; }
}

.semana-1 { --cor: var(--s-vermelha); --cor-h: #8d0c2c; }
.semana-2 { --cor: var(--s-branca); --cor-h: #bbbbbb; }
.semana-3 { --cor: var(--s-azul); --cor-h: #19678d; }
.semana-4 { --cor: var(--s-amarela); --cor-h: #917700; }
.sincro-semana-rotulo, .sincro-dia { background: var(--cor); color: #000; }

.sincro-dia { position: relative; padding: .4rem; border: 1px solid rgba(0, 0, 0, .15); display: flex; flex-direction: column; gap: .25rem; transition: background-color .15s; }
.sincro-dia.portal { background-image: linear-gradient(to bottom, transparent 40%, rgba(46, 139, 87, .75)); }
.sincro-dia.hoje { background-color: #cc66cc; background-image: linear-gradient(#cc66cc, var(--s-hoje)); color: #fff; outline: 3px solid var(--s-hoje); outline-offset: -3px; }
.sincro-dia.marcado { outline: 3px dashed #ff8c00; outline-offset: -4px; }
.sincro-dia-topo { display: flex; align-items: flex-start; justify-content: space-between; gap: .25rem; }
.sincro-dia-num { font-size: 1.15rem; font-weight: 600; line-height: 1.1; display: flex; flex-direction: column; align-items: center; }
.sincro-dia-num img { width: 22px; margin-top: 2px; }
.sincro-glifo-dia { width: 46%; max-width: 64px; }
.sincro-glifo-cronopsi { width: 26%; max-width: 34px; opacity: .9; }
.sincro-dia-info { display: flex; flex-wrap: wrap; justify-content: center; gap: 3px; min-height: 30px; padding: 3px; border-radius: .4rem; background: rgba(255, 255, 255, .65); }
.sincro-dia-info img { height: 22px; width: auto; border-radius: 3px; padding: 1px; }
.sincro-dia-info img[data-info]:hover { background: #fff; }
.sincro-dia-data { text-align: center; font-size: .85rem; font-weight: 600; }
.sincro-dia.hoje .sincro-dia-data { text-shadow: 0 1px 2px #000; }

/* bússola / ficha */
.sincro-oraculo { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-areas: ". guia ." "antipoda destino analogo" ". oculto ."; gap: .5rem; max-width: 300px; margin: auto; text-align: center; }
.sincro-oraculo > div { display: flex; flex-direction: column; align-items: center; }
.sincro-oraculo .sincro-glifo { width: 60px; }
.o-guia { grid-area: guia; } .o-antipoda { grid-area: antipoda; } .o-destino { grid-area: destino; } .o-analogo { grid-area: analogo; } .o-oculto { grid-area: oculto; }
.o-destino .sincro-glifo { background: rgba(102, 204, 102, .35); border-radius: .5rem; padding: 3px; }
.sincro-oraculo-txt dt { margin-top: .5rem; }

.modal-body.sincro img { max-width: 100%; height: auto; }

/* índice "Informações" */
.sincro-informacoes-lista { list-style: none; padding: 0; }
@media (min-width: 768px) {
	/* duas colunas fixas: as colunas automáticas abriam um vão ao quebrar a lista longa */
	.sincro-informacoes-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, auto) 1fr; column-gap: 2rem; }
	.sincro-informacoes-lista > li:last-child { grid-column: 2; grid-row: 1 / -1; }
}
.sincro-informacoes-lista > li { break-inside: avoid; margin-bottom: .75rem; }
.sincro-informacoes-lista > li > a { font-weight: 600; }
.sincro-informacoes-lista ul { list-style: none; padding-left: 1rem; border-left: 2px solid #19875455; margin-top: .25rem; }

/* ---------- estilo maia: linha com espirais e bloco papiro ---------- */
:root {
	--sincro-linha-maia: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='26' viewBox='0 0 260 26'%3E%3Cg fill='none' stroke='%237a5422' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M131.0 13.0L131.1 13.4L131.0 13.9L130.7 14.4L130.2 14.7L129.6 14.9L128.9 14.8L128.2 14.4L127.6 13.7L127.4 12.8L127.4 11.8L127.9 10.9L128.7 10.1L129.8 9.6L131.0 9.6L132.2 10.0L133.3 10.9L134.0 12.1L134.2 13.6L133.9 15.1L133.0 16.5L131.7 17.5L130.0 18.0L128.2 17.9L126.5 17.1L125.1 15.7L124.3 13.8L124.2 11.7L124.9 9.7L126.2 8.0L128.2 6.8L130.5 6.4L132.8 6.8L134.9 8.1L136.5 10.0L137.3 12.5L137.2 15.1L136.2 17.6L134.3 19.7L131.7 20.9L128.8 21.2L125.9 20.4L123.5 18.7L121.7 16.1L121.0 13.0M99.0 13.0L98.9 13.3L99.0 13.6L99.1 13.9L99.3 14.1L99.5 14.4L99.9 14.5L100.3 14.6L100.7 14.6L101.1 14.4L101.5 14.1L101.8 13.8L102.1 13.3L102.2 12.8L102.1 12.2L101.9 11.7L101.6 11.1L101.1 10.7L100.6 10.4L99.9 10.3L99.2 10.3L98.5 10.5L97.9 10.9L97.3 11.4L96.9 12.1L96.7 12.9L96.7 13.7L96.9 14.5L97.3 15.3L97.9 16.0L98.7 16.5L99.6 16.8L100.6 16.9L101.5 16.7L102.5 16.3L103.3 15.6L103.9 14.8L104.3 13.8L104.4 12.7L104.3 11.6L103.9 10.5L103.2 9.5L102.3 8.8L101.2 8.2L100.0 8.0M161.0 13.0L161.1 13.3L161.0 13.6L160.9 13.9L160.7 14.1L160.5 14.4L160.1 14.5L159.7 14.6L159.3 14.6L158.9 14.4L158.5 14.1L158.2 13.8L157.9 13.3L157.8 12.8L157.9 12.2L158.1 11.7L158.4 11.1L158.9 10.7L159.4 10.4L160.1 10.3L160.8 10.3L161.5 10.5L162.1 10.9L162.7 11.4L163.1 12.1L163.3 12.9L163.3 13.7L163.1 14.5L162.7 15.3L162.1 16.0L161.3 16.5L160.4 16.8L159.4 16.9L158.5 16.7L157.5 16.3L156.7 15.6L156.1 14.8L155.7 13.8L155.6 12.7L155.7 11.6L156.1 10.5L156.8 9.5L157.7 8.8L158.8 8.2L160.0 8.0'/%3E%3Cpath d='M0 13H93M167 13H260'/%3E%3Cpath d='M4 13l5-4 5 4-5 4zM256 13l-5-4-5 4 5 4z' fill='%237a5422'/%3E%3C/g%3E%3C/svg%3E");
	--sincro-greca: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12' viewBox='0 0 36 12'%3E%3Cpath d='M0 11H6V7H12V3H18V7H14V9H22V3H30V7H36' fill='none' stroke='%238a6230' stroke-width='1.6'/%3E%3C/svg%3E");
	--sincro-fibra: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8 .35' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .3 0 0 0 0 .12 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url%28%23n%29'/%3E%3C/svg%3E");
	--sincro-papiro: #f3e6c8;
	--sincro-papiro-tinta: #3d2b14;
	--sincro-papiro-borda: #b8935a;
}
.pagina-titulo, .sincro-titulo, .sincro-subtitulo { border: 0 !important; box-shadow: none !important; text-align: center; padding-bottom: 0; }
.pagina-titulo::after, .sincro-titulo::after, .sincro-subtitulo::after { content: ""; display: block; height: 26px; margin: .4rem auto 0; max-width: 100%; background: var(--sincro-linha-maia) center / auto 26px no-repeat; }
.pagina-titulo { margin-bottom: 2rem; }
.sincro-subtitulo { font-size: 1.15rem; margin: 3.5rem 0 2.5rem; }
.sincro-subtitulo small { font-size: .75em; }

.sincro-papiro { position: relative; padding: 3.5rem 1.75rem; color: var(--sincro-papiro-tinta); background-color: var(--sincro-papiro); background-image: var(--sincro-fibra), radial-gradient(ellipse at center, rgba(255, 250, 235, .85) 35%, rgba(214, 180, 122, .45) 100%); border: 1px solid var(--sincro-papiro-borda); border-radius: .35rem; box-shadow: inset 0 0 2.25rem rgba(122, 84, 34, .32), 0 .5rem 1.25rem rgba(60, 40, 10, .22); }
.sincro-papiro::before, .sincro-papiro::after { content: ""; position: absolute; left: .75rem; right: .75rem; height: 12px; background: var(--sincro-greca) center / auto 12px repeat-x; opacity: .85; pointer-events: none; }
.sincro-papiro::before { top: .55rem; }
.sincro-papiro::after { bottom: .55rem; transform: rotate(180deg); }
.sincro-papiro a:not(.btn) { color: #7a3b0c; }
.sincro-papiro a:not(.btn):hover { color: #4a2206; }
.sincro-papiro > .sincro-subtitulo:first-child { margin-top: 0; margin-bottom: 1.5rem; }
.sincro-papiro h3.h6 { font-size: 1.05rem; }
.sincro-papiro-rotulo { font-size: .95rem; font-weight: 700; letter-spacing: .05em; text-align: center; text-transform: uppercase; margin: 0 0 .5rem; }
.sincro-papiro .text-body-secondary { color: #6b5230 !important; }

/* informações */
.sincro-papiro .sincro-informacoes-lista { margin-bottom: 0; }
.sincro-papiro .sincro-informacoes-lista ul { border-left-color: rgba(122, 84, 34, .4); }

/* Dia Fora do Tempo */
.sincro-fora-do-tempo { display: block; margin: .75rem 0; padding: .6rem 1rem; border-radius: .6rem; background: #198754; color: #fff; font-weight: 600; letter-spacing: .03em; text-align: center; text-decoration: none; }
.sincro-fora-do-tempo:hover { background: #146c43; color: #fff; }
.sincro-fora-do-tempo small { font-weight: 400; opacity: .9; }

/* menu de ferramentas */
.sincro-ferramentas { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: .35rem; }

/* família terrestre */
.sincro-familia { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 1.5rem; }
.sincro-familia a { display: flex; flex-direction: column; align-items: center; gap: .25rem; width: 96px; font-size: .9rem; line-height: 1.2; text-align: center; }
.sincro-familia img { width: 64px; max-width: 64px; }

/* onda encantada */
.sincro-onda { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; align-items: center; }
.sincro-onda-grade { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); grid-template-rows: repeat(5, auto); max-width: 480px; width: 100%; margin: auto; }
.sincro-camara { display: flex; justify-content: center; padding: 8%; border: 0; border-radius: .6rem; background: #eee; box-shadow: inset 0 0 1px 1px #8fbc8f; cursor: pointer; transition: background-color .15s; }
.sincro-camara:hover { background: #ccc; }
.sincro-camara.torre { background: #8fbc8f; }
.sincro-camara.torre:hover { background: #5f9f5f; }
.sincro-camara.ativa { outline: 3px solid #198754; outline-offset: -3px; position: relative; z-index: 1; }
.sincro-camara .sincro-glifo { width: 100%; max-width: 62px; }
.sincro-onda-nav { display: flex; justify-content: space-between; gap: .5rem; margin-top: 1rem; }
@media (min-width: 768px) { .sincro-onda { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* modal */
.sincro-modal .modal-dialog { max-width: min(1600px, calc(100vw - 2rem)); }
.sincro-modal .modal-header { position: relative; justify-content: center; padding: 1rem 3.5rem; }
.sincro-modal .modal-header .btn-close { position: absolute; top: 1rem; right: 1.25rem; margin: 0; }
.sincro-modal-nav { display: flex; align-items: flex-start; justify-content: center; gap: 1rem; min-width: 0; }
.sincro-modal-nav .btn { flex-shrink: 0; margin-top: .1rem; }
.sincro-modal .modal-title { min-width: 0; margin: 0; font-size: 1.3rem; text-transform: none; letter-spacing: 0; }
.sincro-modal .modal-body { padding: 2rem 2.5rem; line-height: 1.7; }
@media (min-width: 992px) { .sincro-modal .modal-body { padding: 2.5rem 3.5rem; } }
.sincro-modal .modal-body > .sincro-ficha > :last-child { margin-bottom: 0; }

/* conteúdo em colunas: selos e plasmas ao lado do texto, menores */
.noo-colunas { align-items: center; margin-bottom: 1rem; }
.noo-colunas img { max-width: 100%; height: auto; }
.noo-colunas img.selo, img.selo { display: block; width: 100%; max-width: 240px; height: auto; margin-inline: auto; }

/* ferramentas */
.sincro-lista-kins { list-style: none; padding: 0; margin: 0; }
.sincro-lista-kins li, .sincro-salvos li { display: flex; align-items: center; gap: .75rem; padding: .5rem 0; border-bottom: 1px solid rgba(122, 84, 34, .25); }
.sincro-lista-kins li:last-child { border-bottom: 0; }
.sincro-salvos { max-width: 760px; margin: auto; }
.sincro-anamnese li { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem 1rem; padding: .4rem 0; border-bottom: 1px solid rgba(122, 84, 34, .25); }
.sincro-anamnese li:last-child { border-bottom: 0; }
.sincro-anamnese p { text-align: left !important; }

/* acesso dentro do bloco "Você Hoje" */
.sincro-acesso { scroll-margin-top: 90px; }
.sincro-acesso .nav-tabs { --bs-nav-tabs-border-color: var(--sincro-papiro-borda); }
.sincro-acesso .nav-tabs .nav-link { color: var(--sincro-papiro-tinta); font-weight: 600; border-color: transparent; }
.sincro-acesso .nav-tabs .nav-link:hover { border-color: rgba(184, 147, 90, .5) rgba(184, 147, 90, .5) var(--sincro-papiro-borda); }
.sincro-acesso .nav-tabs .nav-link.active { background: rgba(255, 250, 235, .9); color: #146c43; border-color: var(--sincro-papiro-borda) var(--sincro-papiro-borda) transparent; }
.sincro-acesso .form-control { background-color: rgba(255, 255, 255, .85); }
.sincro-acesso-site { position: absolute; left: -9999px; }

/* tear: matriz do Tzolkin */
.sincro-tear { display: grid; grid-template-columns: repeat(13, minmax(0, 1fr)); gap: 2px; max-width: 620px; margin: 1.5rem auto; font-size: clamp(.55rem, 1.6vw, .8rem); }
.sincro-tear a { padding: .15rem 0; border-radius: 3px; background: #efe9dc; color: #4b3a20; line-height: 1.5; text-align: center; text-decoration: none; }
.sincro-tear a:hover { outline: 2px solid #7a5422; }
.sincro-tear a.portal { background: #198754; color: #fff; font-weight: 600; }

/* Sinergia: seletor, campo e botão + na mesma linha */
.row[data-sinergia-form] { flex-wrap: nowrap; }
.row[data-sinergia-form] > .col-auto { flex: 1 1 7rem; min-width: 0; width: auto; }
.row[data-sinergia-form] > .col-auto:first-child { flex: 1 1 9.5rem; }
.row[data-sinergia-form] > .col-auto:last-child { flex: 0 0 auto; }
.row[data-sinergia-form] > .col-auto:nth-child(2) { flex: 1 0 7.75rem; }

/* poema do Kin centrado no papiro, alinhado com os títulos acima */
.sincro-papiro .sincro-kin-resumo { justify-content: center; padding-inline: 2rem; }
@media (max-width: 575px) { .sincro-papiro .sincro-kin-resumo { padding-inline: 0; } }
.tab-content:has(#acesso-recuperar.active) + .sincro-link-senha { display: none; }

/* ícones pequenos e glifos mantêm o tamanho dentro do modal */
.modal-body.sincro img.sincro-ico { height: 24px; width: auto; }
.modal-body.sincro img.sincro-plasma-ico { width: 24px; }
@media (max-width: 575px) { .sincro-modal .modal-header { padding: 1rem 3rem; } .sincro-modal-nav { gap: .5rem; } .sincro-modal .modal-header .btn-close { right: .75rem; } .sincro-modal .modal-title { font-size: .95rem; line-height: 1.3; } }

/* oráculo: cinco quadrados iguais, no estilo das câmaras da onda encantada */
.sincro-oraculo { max-width: 400px; }
.sincro-oraculo > div { aspect-ratio: 1; justify-content: center; gap: .15rem; min-width: 0; padding: .25rem; overflow: hidden; border-radius: .6rem; background: #eee; box-shadow: inset 0 0 1px 1px #8fbc8f; }
.sincro-oraculo > .o-destino { background: #8fbc8f; }
.sincro-oraculo .sincro-glifo { width: 46%; }
.sincro-oraculo small { font-size: .75rem; line-height: 1.1; }
.o-destino .sincro-glifo { background: none; padding: 0; }

/* título do modal, entre os botões de navegação, sem a linha de espirais */
.sincro-modal .modal-title::after { display: none; }
.sincro-modal-nav { align-items: center; }
.sincro-modal-nav .btn { margin-top: 0; }

/* família terrestre: bloco papiro em volta dos quatro selos */
.sincro-familia.sincro-papiro { width: fit-content; max-width: 100%; margin-inline: auto; padding-inline: 2.5rem; }

/* campos dentro do papiro com borda marrom */
.sincro-papiro .form-control, .sincro-papiro .form-select { border-color: #8a6230; }
.sincro-papiro .form-control:focus, .sincro-papiro .form-select:focus { border-color: #7a5422; box-shadow: 0 0 0 .2rem rgba(122, 84, 34, .25); }

/* Sincro-anamneses: formulário em uma linha, em dois blocos simples */
.sincro-anamnese-form { display: flex; justify-content: center; align-items: stretch; }
.sincro-bloco { min-width: 0; max-width: 100%; padding: .5rem .75rem .75rem; border: 1px solid var(--bs-border-color); border-radius: .6rem; }
.sincro-bloco-titulo { margin-bottom: .35rem; font-size: .85rem; font-weight: 600; }
.sincro-bloco-campos { display: flex; align-items: center; gap: .5rem; }
.sincro-bloco-campos > .col-auto { flex: 1 1 auto; min-width: 0; }
.sincro-bloco-campos .col-auto:first-child { flex-basis: 10.5rem; }
.sincro-bloco-campos .col-auto:last-child { flex-basis: 7.5rem; }
.sincro-bloco-data { flex: 0 1 8.5rem; min-width: 0; }
.sincro-bloco-acao { display: flex; align-items: center; justify-content: center; padding: .75rem 1rem; background: #e3f4ea; }
/* blocos colados: uma borda só entre eles, cantos arredondados só nas pontas */
.sincro-anamnese-form > .sincro-bloco { border-radius: 0; }
.sincro-anamnese-form > .sincro-bloco + .sincro-bloco { margin-left: -1px; }
.sincro-anamnese-form > .sincro-bloco:first-child { border-radius: .6rem 0 0 .6rem; }
.sincro-anamnese-form > .sincro-bloco:last-child { border-radius: 0 .6rem .6rem 0; }
@media (max-width: 991px) {
	.sincro-anamnese-form { flex-direction: column; max-width: 420px; margin-inline: auto; }
	.sincro-anamnese-form > .sincro-bloco + .sincro-bloco { margin-left: 0; margin-top: -1px; }
	.sincro-anamnese-form > .sincro-bloco:first-child { border-radius: .6rem .6rem 0 0; }
	.sincro-anamnese-form > .sincro-bloco:last-child { border-radius: 0 0 .6rem .6rem; }
}

/* menu de ferramentas em bloco simples; em telas menores e no calendário, versão compacta */
.sincro-ferramentas-bloco { width: fit-content; max-width: 100%; margin: 2rem auto 2.5rem; padding: .6rem .75rem; border: 1px solid var(--bs-border-color); border-radius: .6rem; text-align: left; }
.sincro-ferramentas-compacta { display: none; }
.sincro-ferramentas-bloco.sempre-compacto .sincro-ferramentas-todas { display: none; }
.sincro-ferramentas-bloco.sempre-compacto .sincro-ferramentas-compacta { display: inline-flex; }
.sincro-ferramentas-bloco .dropdown-item.active, .sincro-ferramentas-bloco .dropdown-item:active { background: #198754; color: #fff; }
.sincro-cal-topo .sincro-ferramentas-bloco { margin: 0 auto; padding: .4rem .5rem; }
@media (min-width: 992px) { .sincro-cal-topo .sincro-ferramentas-bloco { margin: 0 0 0 auto; } }
@media (max-width: 991px) {
	.sincro-ferramentas-todas { display: none; }
	.sincro-ferramentas-compacta { display: inline-flex; }
}

/* largura definida nos campos: o bloco acompanha o conteúdo, sem sobra à direita */
.sincro-bloco-data { flex: 0 0 auto; width: 8.5rem; }
.sincro-bloco-campos .col-auto:first-child { width: 11rem; }
.sincro-bloco-campos .col-auto:last-child { width: 8rem; }
@media (max-width: 400px) { .sincro-bloco-data { flex: 1 1 0; width: auto; } }

/* menu de ferramentas com fundo verde-claro */
.sincro-ferramentas-bloco { background: #e3f4ea; border-color: #bfe3cd; }
.sincro-ferramentas-bloco .btn-outline-success:not(:hover):not(.show) { background: #fff; }
.sincro-ferramentas-bloco .btn { --bs-btn-padding-y: .4rem; --bs-btn-padding-x: .8rem; --bs-btn-font-size: 1rem; }
.sincro-cal-topo .sincro-ferramentas-compacta { flex-wrap: nowrap; }
.sincro-ferramentas-bloco .btn { white-space: nowrap; }
.sincro-cal-topo .sincro-ferramentas-bloco .btn { --bs-btn-padding-x: .6rem; --bs-btn-font-size: .95rem; }

/* barra do Dia Fora do Tempo colada ao calendário */
.sincro-fora-do-tempo { border: 1px solid #000; }
.sincro-fora-do-tempo:has(+ .sincro-cal) { margin-bottom: 0; border-bottom: 0; border-radius: 1rem 1rem 0 0; }
.sincro-fora-do-tempo + .sincro-cal { border-top-left-radius: 0; border-top-right-radius: 0; }
.sincro-cal:has(+ .sincro-fora-do-tempo) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.sincro-cal + .sincro-fora-do-tempo { margin-top: 0; border-top: 0; border-radius: 0 0 1rem 1rem; }

/* a linha da semana mantém a cor mesmo onde sobra espaço, e o destaque de passar o mouse não fica preso no toque */
.sincro-semana { background: var(--cor); }
@media (hover: hover) {
	.sincro-dia:hover { background: var(--cor-h); color: #fff; }
	.sincro-dia:hover .sincro-dia-data { text-shadow: 0 1px 2px #000; }
}

/* telas menores: todo o cabeçalho fica fixo, logo abaixo do topo preto */
@media (max-width: 991px) {
	.sincro-cal-topo.sticky-top { top: var(--sincro-topo-alto, 0px); z-index: 1010; padding: .5rem 0; background: #fff; backdrop-filter: none; box-shadow: 0 .4rem .5rem -.45rem rgba(0, 0, 0, .25); }
	.sincro-cal-topo .row { --bs-gutter-y: .25rem; }
	.sincro-cal-topo .sincro-ferramentas-bloco { margin-block: 0; padding: .3rem .4rem; }
}

/* Sinergia no celular: seletor na linha de cima, para o texto não ser cortado */
@media (max-width: 460px) {
	.row[data-sinergia-form] { flex-wrap: wrap; }
	.row[data-sinergia-form] > .col-auto:first-child { flex: 0 0 100%; }
}

/* telas menores: a semana ocupa o primeiro bloco, um tom mais escuro; assim 1 + 7 fecha a grade sem sobra */
@media (max-width: 1199px) {
	.semana-1 { --cor-rotulo: #d40f45; --cor-brilho: #ff9db6; }
	.semana-2 { --cor-rotulo: #e4e4e4; --cor-brilho: #ffffff; }
	.semana-3 { --cor-rotulo: #54a9d2; --cor-brilho: #c4e8fb; }
	.semana-4 { --cor-rotulo: #ecbd00; --cor-brilho: #ffeb94; }
	.sincro-semana-rotulo { display: flex; align-items: center; justify-content: center; background: var(--cor-rotulo); border: 1px solid rgba(0, 0, 0, .15); font-size: 1.1rem; line-height: 1.3; }
	.sincro-semana-rotulo span { text-shadow: 0 0 5px var(--cor-brilho), 0 0 2px var(--cor-brilho); }
	.sincro-semana-rotulo small { display: block; font-size: .85em; font-weight: 400; }
}

/* trilha de navegação dos tópicos de informação */
.sincro-trilha { --bs-breadcrumb-divider: "›"; --bs-breadcrumb-margin-bottom: .75rem; font-size: .9rem; }
.sincro-trilha .breadcrumb { justify-content: center; }
.sincro-trilha .breadcrumb-item.active { color: var(--bs-secondary-color); }
.sincro-modal .sincro-trilha { --bs-breadcrumb-margin-bottom: 1.5rem; }

/* período: rótulo ao lado do campo; no celular, acima, para sobrar largura */
.sincro-bloco-par { display: flex; align-items: center; gap: .5rem; min-width: 0; }
@media (max-width: 575px) {
	.sincro-bloco-par { flex: 1 1 0; flex-direction: column; align-items: stretch; gap: .15rem; }
	.sincro-bloco-par label { font-size: .85rem; }
	.sincro-bloco-par .sincro-bloco-data { flex: none; width: 100%; }
}
@media (max-width: 575px) {
	.sincro-bloco-campos .col-auto:first-child, .sincro-bloco-campos .col-auto:last-child { flex: 1 1 0; width: auto; }
}

/* abas: a ferramenta e os itens salvos */
.nav.sincro-abas { flex-wrap: nowrap; justify-content: center; margin: 0 0 2.5rem; }
.nav.sincro-abas .nav-item { flex: 0 1 280px; min-width: 0; }
.nav.sincro-abas .nav-link { color: #146c43; font-weight: 600; }
.nav.sincro-abas .nav-link.active { background: #fff; color: #146c43; border-color: var(--bs-border-color) var(--bs-border-color) #fff; }
#aba-salvos > section > .sincro-subtitulo:first-child, #aba-salvos > .sincro-subtitulo:first-child { margin-top: 0; }

/* Calcular Kin: caixa mais larga, com o bloco de salvar grudado embaixo */
.sincro-caixa-kin { max-width: 640px; margin-inline: auto; }
.sincro-caixa-kin .sincro-anamnese-form { width: 100%; }
.sincro-caixa-kin .sincro-bloco:first-child { flex: 1 1 auto; }
.sincro-caixa-kin .sincro-bloco-campos .col-auto, .sincro-caixa-kin .sincro-bloco-campos .col-auto:first-child, .sincro-caixa-kin .sincro-bloco-campos .col-auto:last-child { flex: 1 1 0; width: auto; }
.sincro-bloco-salvar { margin-top: -1px; border-radius: 0 0 .6rem .6rem; }
.sincro-caixa-kin:has(.sincro-bloco-salvar) .sincro-anamnese-form > .sincro-bloco:first-child { border-bottom-left-radius: 0; }
.sincro-caixa-kin:has(.sincro-bloco-salvar) .sincro-anamnese-form > .sincro-bloco:last-child { border-bottom-right-radius: 0; }
@media (max-width: 991px) { .sincro-caixa-kin .sincro-anamnese-form { max-width: none; } }
@media (max-width: 991px) {
	.sincro-caixa-kin:has(.sincro-bloco-salvar) .sincro-anamnese-form > .sincro-bloco:last-child { border-radius: 0; }
}
@media (max-width: 575px) {
	.sincro-caixa-kin .sincro-bloco-campos .col-auto:first-child { flex: 1.5 1 0; }
	.sincro-caixa-kin .sincro-bloco-campos .form-select { padding-left: .6rem; padding-right: 1.75rem; background-position: right .4rem center; }
}

/* Kin da própria pessoa, fixo no topo dos Kins salvos */
.sincro-salvos .sincro-salvo-meu { padding: .6rem .75rem; border: 1px solid #bfe3cd; border-radius: .6rem; background: #e3f4ea; margin-bottom: .5rem; }

/* botão da aba Salvos, na cor dourada da linha de espirais */
.sincro-salvos-novo { margin: -1rem 0 2rem; text-align: center; }
.btn.btn-sincro-dourado { --bs-btn-color: #7a5422; --bs-btn-border-color: #7a5422; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #7a5422; --bs-btn-hover-border-color: #7a5422; --bs-btn-active-color: #fff; --bs-btn-active-bg: #5e3f18; --bs-btn-active-border-color: #5e3f18; }

/* Minha conta: painéis centrais e tabela de itens salvos */
.sincro-conta-painel { max-width: 640px; margin-inline: auto; }
.nav.sincro-abas-3 .nav-item { flex: 0 1 210px; }
#aba-ferramentas .sincro-ferramentas-bloco { margin-top: 0; }
.table.sincro-tabela { --bs-table-border-color: #bfe3cd; border: 1px solid #bfe3cd; }
.table.sincro-tabela th { background: #e3f4ea; color: #146c43; font-weight: 600; }
.table.sincro-tabela td, .table.sincro-tabela th { padding: .6rem .75rem; }
@media (max-width: 575px) { .nav.sincro-abas-3 .nav-link { padding-inline: .35rem; font-size: .9rem; } }
.sincro-conta-painel > .sincro-subtitulo:first-child { margin-top: 0; margin-bottom: 1.5rem; }
.table.sincro-tabela .btn { white-space: nowrap; }
@media (max-width: 575px) {
	.nav.sincro-abas-3 .nav-item { flex: 1 1 auto; }
	.nav.sincro-abas-3 .nav-link { padding-inline: .3rem; font-size: .85rem; white-space: nowrap; }
}
.sincro-bloco-acao { gap: .5rem; }
.sincro-bloco-acao .btn-outline-success { background: #fff; }
.sincro-bloco-acao .btn-outline-success:hover { background: #198754; }

/* O Planeta Hoje: estação e próximo evento */
.sincro-papiro a.sincro-link-limpo { color: inherit; text-decoration: none; }
.sincro-papiro a.sincro-link-limpo:hover { text-decoration: underline; }

/* Tzolkin clicável: só o número em cada célula, cabendo inteiro no celular */
.sincro-tz { display: grid; grid-template-columns: minmax(0, 1.15fr) repeat(13, minmax(0, 1fr)); gap: 1px; max-width: 640px; margin: 0 auto .75rem; }
.sincro-tz-tom { display: flex; align-items: flex-end; justify-content: center; padding: 0 1px 3px; }
.sincro-tz-tom img { width: 100%; max-width: 26px; height: auto; border-radius: 0 !important; }
.sincro-tz-selo { display: flex; align-items: center; justify-content: center; padding: 1px 2px 1px 0; }
.sincro-tz-selo img { width: 100%; max-width: 30px; height: auto; border-radius: 0 !important; }
.sincro-tz-selo:hover img { filter: drop-shadow(0 0 3px rgba(0, 0, 0, .5)); }
.sincro-tz-kin { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; border-radius: 3px; background: #f3f3ee; color: #333; font-size: clamp(.56rem, 2.45vw, .85rem); font-weight: 600; line-height: 1; text-decoration: none; }
.sincro-tz-kin.mistica { background: #e9e1cf; }
.sincro-tz-kin.portal { background: #8fbc8f; }
.sincro-tz-kin:hover { background: #198754; color: #fff; }
.sincro-tz-kin.hoje { outline: 2px solid #9c2b8f; outline-offset: -2px; }
.sincro-tz-kin.meu { outline: 2px solid #d39b1d; outline-offset: -2px; }
.sincro-tz-legenda { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem 1.25rem; font-size: .9rem; }
.sincro-tz-legenda span { display: inline-flex; align-items: center; gap: .35rem; }
.sincro-tz-legenda i { width: 14px; height: 14px; border-radius: 3px; background: #f3f3ee; }
.sincro-tz-legenda i.hoje { outline: 3px solid #9c2b8f; outline-offset: -3px; }
.sincro-tz-legenda i.meu { outline: 3px solid #d39b1d; outline-offset: -3px; }
.sincro-tz-legenda i.portal { background: #8fbc8f; }
.sincro-tz-legenda i.mistica { background: #e9e1cf; }

/* aviso da conta compartilhada com o Instituto Noosfera */
.sincro-aviso-instituto { display: flex; align-items: center; gap: 1.75rem; max-width: 640px; margin: 0 auto 2rem; padding: .75rem 1rem; border: 1px solid #b6d4f2; border-radius: .6rem; background: #e7f1fb; color: #0b3d7a; text-align: left; }
.sincro-aviso-instituto img { flex-shrink: 0; }
@media (max-width: 480px) { .sincro-aviso-instituto { flex-direction: column; text-align: center; } }

/* o dia de hoje mantém o próprio destaque, mesmo quando é o dia pesquisado */
.sincro-dia.hoje.marcado { outline: 3px solid var(--s-hoje); outline-offset: -3px; }

/* O Planeta Hoje: lista com ícones alinhados e separadores */
.sincro-hoje-lista { width: fit-content; max-width: 100%; margin: 0 auto; }
.sincro-hoje-lista li { display: flex; align-items: center; gap: .75rem; padding: .5rem .25rem; line-height: 1.35; text-align: left; }
.sincro-hoje-lista li + li { border-top: 1px solid rgba(122, 84, 34, .35); }
.sincro-hoje-ico { flex: 0 0 28px; display: flex; justify-content: center; }
.sincro-hoje-ico img { display: block; width: 28px; height: 28px; object-fit: contain; }

/* cabeçalho do Sincronário afastado do topo preto quando fixo */
.sincro-cal-topo.sticky-top { padding-top: 1.5rem; }
@media (max-width: 991px) { .sincro-cal-topo.sticky-top { padding-top: .9rem; padding-bottom: 1.25rem; } }

/* cabeçalho fixo opaco, encostado no topo preto: nada do que rola aparece por trás */
.sincro-cal-topo.sticky-top { top: var(--sincro-topo-alto, 70px) !important; z-index: 1010; background: #fff; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: 0 .4rem .5rem -.45rem rgba(0, 0, 0, .25); }

/* página Doe */
.sincro-doe { max-width: 560px; margin: 2rem auto 4rem; }
.sincro-doe-qr { max-width: 100%; height: auto; }
.sincro-doe-marca { display: flex; flex-direction: column; align-items: center; gap: .5rem; margin-bottom: 0; text-align: center; }
.entry-content .lead strong { font-weight: 700; }
.sincro-doe-aviso { max-width: 760px; margin-top: 2rem; }
.sincro-doe-aviso .bi { flex-shrink: 0; font-size: 1.5rem; }
@media (max-width: 480px) { .sincro-doe-aviso { flex-direction: row; text-align: left; gap: .75rem; } }

/* busca em Informações */
.sincro-info-busca { max-width: 420px; margin: 0 auto 1.5rem; }
.sincro-papiro .sincro-info-busca .input-group-text { background: rgba(255, 250, 235, .9); border-color: #8a6230; color: #7a5422; }
.sincro-informacoes-lista.filtrando { display: block; columns: auto; }
.sincro-informacoes-lista.filtrando > li:last-child { grid-column: auto; grid-row: auto; }
