[data-theme=light]{--bg:#f4f6fa;--bg2:#ffffff;--card:#ffffff;--card2:#eef1f6;--line:#dfe3ea;--text:#141821;--muted:#5e677a;--shadow:0 20px 50px -24px rgba(20,24,33,.25)}
[data-theme=light] body::before{opacity:.015}
[data-theme=light]:root{--brand-hi:var(--brand-lo)}
.grid2>label{justify-content:flex-end}
[data-theme=light] label{color:#38404f}
[data-theme=light] .lead,[data-theme=light] .side nav a,[data-theme=light] .logout{color:#4a5263}
[data-theme=light] .side nav a:hover,[data-theme=light] .logout:hover{background:var(--card2)}
[data-theme=light] .table tbody tr:hover{background:#00000005}
[data-theme=light] .alert.success{color:#11643a}[data-theme=light] .alert.error{color:#a12020}
[data-theme=light] .banner.warn{color:#8a5300}[data-theme=light] .banner.danger{color:#a12020}
[data-theme=light] .btn.danger{color:#c0262d}
[data-theme=light] .wa-preview{background:#dcfce7}[data-theme=light] .wa-preview p{color:#14532d}
[data-theme=light] .scope-pick legend{color:#38404f}
[data-theme=light] .leaflet-tile-pane{filter:none}
[data-theme=light] .cal-d.off{background:#00000008}
[data-theme=light] .err-list{color:#a12020}
[data-theme=light] .map-count{text-shadow:0 1px 2px #000a}
[data-theme=light] .brand img{background:#0000000a}
.theme-toggle.floating{position:fixed;top:14px;right:14px;z-index:60}
.landing .theme-toggle.floating{top:auto;bottom:18px;right:18px;width:44px;height:44px;border-radius:50%;box-shadow:var(--shadow)}
img.avatar{object-fit:cover;padding:0;background:var(--card2)}
.logo-box.round{border-radius:50%;width:110px;height:110px}.logo-box.round img{object-fit:cover}
.map-locate{width:34px;height:34px;border-radius:8px;border:2px solid #0003;background:#fff;color:#111;font-size:20px;line-height:1;cursor:pointer}
.map-locate.busy{animation:pulse 1s infinite}
.map-dir{display:inline-block;margin-top:.4rem;font-weight:700}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--card);color:var(--text)}
.dup-warn{border:1px solid #f59e0b66;background:#f59e0b14;border-radius:12px;padding:.8rem 1rem;color:var(--text)}
.dup-warn ul{margin:.4rem 0 .6rem;padding-left:1.1rem;font-size:.88rem}
.dup-warn.hidden,.day-list.hidden{display:none}
.tag.ev-st-pendiente{--c:#38bdf8}.tag.ev-st-realizado{--c:#22c55e}.tag.ev-st-cancelado{--c:#9ca3af}
.cal-ev.ev-realizado{opacity:.75;text-decoration:line-through}.cal-ev.ev-cancelado{opacity:.4;text-decoration:line-through}
.cal-ev.big{font-size:.9rem;padding:.55rem .7rem;white-space:normal}
.card.overdue{border-color:#f0525255}
.cal-d.sel{outline:2px solid var(--brand);outline-offset:-2px}
@media (max-width:960px){
  .cal-d{min-height:56px;padding:.3rem;flex-direction:row;flex-wrap:wrap;align-content:flex-start;gap:3px;cursor:pointer}
  .cal-d .n{width:100%}
  .cal-d .cal-ev{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:var(--c);font-size:0;color:transparent;overflow:hidden}
  .cal-d .cal-add{display:none}
  .theme-toggle.floating{top:10px;right:10px}
}
