/* ======== Calendario ======== */
.navpill{display:inline-flex;align-items:center;padding:4px;border-radius:999px;background:rgba(127,127,127,.16);border:1px solid var(--border)}
.navpill button{background:transparent;border:0;padding:7px 14px;font-weight:600;font-size:13px;display:inline-grid;place-items:center;min-width:38px}
.navpill button:hover{background:rgba(255,255,255,.14)}
.calcard{padding:14px 14px 16px;border-radius:30px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.cal .dow{padding:6px 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cal .day{position:relative;min-height:112px;padding:8px 7px;border-radius:18px;border:1px solid transparent;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.08);cursor:pointer;display:flex;flex-direction:column;gap:4px;overflow:hidden;transition:transform .2s var(--ease),background .2s,border-color .2s,box-shadow .2s}
.cal .day:hover{background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.05));transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 22px rgba(0,0,0,.28)}
.cal .day.out{opacity:.38}
.cal .day.wk{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015))}
.cal .day.tall{min-height:340px}
.cal .day.sel{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent),0 0 28px color-mix(in srgb,var(--accent) 35%,transparent)}
.dh{display:flex;align-items:center;gap:6px;min-height:26px}
.dh b{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border-radius:99px;font-size:13px;font-weight:650}
.cal .day.today .dh b{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 75%,#fff),var(--accent));color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 55%,transparent)}
.hot{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:6px;background:color-mix(in srgb,var(--bad) 28%,transparent);color:#ff8f99;margin-left:auto}
.more{margin-left:auto;font-size:11px;font-weight:700;color:var(--muted)}
.hot+.more{margin-left:0}
.cal .ev{display:flex;align-items:center;gap:6px;padding:3px 7px;border-radius:8px;font-size:11px;font-weight:600;line-height:1.25;background:color-mix(in srgb,var(--pc) 20%,rgba(0,0,0,.12));color:var(--text);white-space:nowrap;overflow:hidden;margin:0;transition:background .2s,transform .2s}
.cal .ev:hover{background:color-mix(in srgb,var(--pc) 38%,rgba(0,0,0,.12));transform:translateX(2px)}
.cal .ev i{width:3px;align-self:stretch;min-height:12px;border-radius:3px;background:var(--pc);flex:none}
.cal .ev em{font-style:normal;overflow:hidden;text-overflow:ellipsis;flex:1}
.cal .ev .av{width:18px;height:18px;font-size:8px;flex:none}
.cal .ev.done{opacity:.55}.cal .ev.done em{text-decoration:line-through}
.cal.weekv .ev{padding:7px 9px;font-size:12px}
.row{position:relative}
.rbar2{width:3px;align-self:stretch;border-radius:3px;background:var(--pc,var(--accent));flex:none}
@media(max-width:700px){
  .cal{gap:4px}
  .cal .day{min-height:68px;padding:5px 3px;border-radius:12px}
  .cal .ev em{display:none}.cal .ev{padding:0;height:5px;border-radius:3px;background:var(--pc)}.cal .ev i,.cal .ev .av{display:none}
  .cal.weekv .day.tall{min-height:200px}.cal.weekv .ev{height:auto;padding:4px 6px;background:color-mix(in srgb,var(--pc) 25%,rgba(0,0,0,.12))}.cal.weekv .ev em{display:block}
  .hot{display:none}
}
@media(min-width:1600px){.cal .day{min-height:132px}.cal .ev{font-size:12px;padding:4px 8px}.cal .day.tall{min-height:420px}}
