/* ── CALENDÁRIO (20/10/2026, calendarioTela.ts) ─────────────────────────── */
.cl-xp { --cl: 255, 205, 80; }
.cl-dano { --cl: 255, 104, 88; }
.cl-shiny { --cl: 232, 121, 249; }
.cl-captura { --cl: 74, 222, 128; }
.cl-drop { --cl: 96, 165, 250; }
.cl-comunidade { --cl: 45, 212, 191; }
.cl-lendario { --cl: 255, 170, 70; }

#calendario {
  left: 50%; top: 50%; transform: translate(-50%, -50%);
  width: min(620px, 96vw); max-height: min(86vh, 720px);
  padding: 13px; display: flex; flex-direction: column; gap: 9px; z-index: 26; font-family: var(--ui);
}
#calendario[hidden] { display: none !important; }
#calendario > header { display: flex; align-items: center; gap: 10px; }
#calendario > header .lead { font-size: 14px; font-weight: 700; }
#calendario > header .close { margin-left: auto; }
.cl-corpo { overflow: auto; display: flex; flex-direction: column; gap: 10px; min-height: 0; }

.cl-hoje { display: flex; gap: 12px; align-items: center; padding: 12px 14px; border-radius: 14px;
  border: 1px solid rgba(var(--cl), .5); background: radial-gradient(120% 120% at 0% 0%, rgba(var(--cl), .22), rgba(255, 255, 255, .02)); }
.cl-hoje .cl-ic { font-size: 30px; }
.cl-hoje small { display: block; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--dim); }
.cl-hoje b { display: block; font-size: 17px; color: rgb(var(--cl)); }
.cl-hoje p { margin: 2px 0 0; font-size: 12px; color: var(--ink); }
.cl-nota { margin: 0; font-size: 11.5px; color: var(--dim); }
.cl-vip { color: #ffd66b; }
.cl-destaques { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.cl-dest { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px; border-radius: 11px; font: inherit; color: var(--ink);
  background: rgba(45, 212, 191, .08); border: 1px solid rgba(45, 212, 191, .35); }
.cl-dest:hover { background: rgba(45, 212, 191, .18); }
.cl-dest img, .cl-dest canvas { width: 40px; height: 40px; image-rendering: pixelated; }
.cl-dest b { font-size: 12px; }
.cl-dest small { font-size: 10px; color: var(--dim); }

.cl-mes { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--dim); }
.cl-grade { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.cl-sem { font-size: 10px; font-weight: 700; color: var(--dim); text-align: center; }
.cl-dia { position: relative; display: flex; flex-direction: column; align-items: center; gap: 1px; padding: 5px 2px; border-radius: 9px; min-height: 58px;
  background: rgba(var(--cl), .08); border: 1px solid rgba(var(--cl), .22); }
.cl-dia .cl-n { align-self: flex-start; padding-left: 4px; font-size: 10px; font-weight: 700; color: var(--dim); }
.cl-dia .cl-ic { font-size: 16px; line-height: 1.1; }
.cl-dia small { font-size: 9.5px; font-weight: 700; color: rgb(var(--cl)); text-align: center; line-height: 1.15; }
.cl-dia.passou { opacity: .38; }
.cl-dia.hoje { border-color: rgb(var(--cl)); box-shadow: 0 0 0 1px rgb(var(--cl)), 0 0 14px rgba(var(--cl), .35); }
.cl-dia.hoje .cl-n { color: var(--ink); }

.cl-legenda { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
.cl-leg { display: grid; grid-template-columns: 22px 1fr; column-gap: 6px; align-items: center; padding: 6px 8px; border-radius: 9px; background: rgba(255, 255, 255, .03); border: 1px solid var(--edge); }
.cl-leg .cl-ic { grid-row: 1 / 3; font-size: 16px; }
.cl-leg b { font-size: 11.5px; color: rgb(var(--cl)); }
.cl-leg small { font-size: 10.5px; color: var(--dim); }

/* chip "Hoje" junto dos buffs */
.buff-cal { background: linear-gradient(180deg, rgba(var(--cl), .2), rgba(var(--cl), .06)) !important; border-color: rgba(var(--cl), .5) !important; }
.buff-cal .bf-cal-ic { font-size: 14px; padding-left: 2px; }
.buff-cal .bf-txt b { color: rgb(var(--cl)); }
.buff-cal.agora { animation: bf-pulsa 1.6s ease-in-out infinite; }

@media (max-width: 720px) {
  #calendario { width: 100vw; max-height: calc(100vh - var(--dock-h, 74px) - 20px); top: 0; transform: translate(-50%, 0); border-radius: 0 0 12px 12px; padding: 10px; }
  .cl-dia { min-height: 48px; }
  .cl-dia small { font-size: 8.5px; }
  .cl-legenda { grid-template-columns: 1fr; }
}
/* Comunidade fora do horário (24/10/2026): apagadinho, para não parecer valendo. */
.buff-cal.antes, .buff-cal.acabou { opacity: .6; filter: saturate(.4); }
.cl-nota.cl-fase-antes { color: #f2c46d; }
.cl-nota.cl-fase-acabou { opacity: .7; }
