/* VN Perpetual Calendar v1.1.0 */
.vnpc{--bg:#fff;--fg:#111;--muted:#6b7280;--pri:#11182710;--accent:#2563eb;--ring:#2563eb33;--good:#10b98122;--bad:#ef444422;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif; max-width: 820px; margin: 12px auto; background: var(--bg); border: 1px solid #e5e7eb; border-radius: 16px; box-shadow: 0 10px 25px rgba(0,0,0,.06); overflow: hidden}
.vnpc-header{display:flex; align-items:center; justify-content:space-between; padding:12px 14px; background:#f9fafb; border-bottom:1px solid #e5e7eb}
.vnpc-title{font-weight:700; font-size:18px}
.vnpc-nav{background:#fff; border:1px solid #e5e7eb; padding:6px 10px; border-radius:10px; cursor:pointer}
.vnpc-nav:hover{box-shadow:0 0 0 3px var(--ring)}
.vnpc-weekdays{display:grid; grid-template-columns: repeat(7,1fr); gap:6px; padding:10px 12px; color:var(--muted); font-weight:600; font-size:12px}
.vnpc-grid{display:grid; grid-template-columns: repeat(7,1fr); gap:6px; padding:6px 12px 16px}
.vnpc-cell{position:relative; background:var(--pri); border:1px solid #e5e7eb; border-radius:12px; padding:10px; min-height:68px; display:flex; flex-direction:column; justify-content:space-between; cursor:pointer}
.vnpc-cell:hover{border-color:#d1d5db; box-shadow:0 0 0 3px var(--ring)}
.vnpc-cell .solar{font-weight:700}
.vnpc-cell .lunar{font-size:12px; color:var(--muted)}
.vnpc-cell.other{opacity:.45}
.vnpc-cell.today{outline:2px solid var(--accent)}
.vnpc-panel{position:relative; border-top:1px solid #e5e7eb; background:#fff; padding:12px 14px}
.vnpc-panel-head{display:flex; align-items:center; justify-content:space-between; gap:8px}
.vnpc-panel-date{font-weight:800; font-size:16px}
.vnpc-badges{display:flex; gap:8px; padding:8px 0}
.badge{padding:4px 8px; border-radius:999px; font-size:12px; border:1px solid #e5e7eb}
.badge-good{background:var(--good)}
.badge-bad{background:var(--bad)}
.vnpc-row{display:flex; align-items:center; justify-content:space-between; padding:6px 0; border-bottom:1px dashed #f0f0f0}
.vnpc-row span{color:var(--muted)}
.vnpc-more{margin-top:8px}
.vnpc-close{background:#fff;border:1px solid #e5e7eb;padding:6px 10px;border-radius:10px;cursor:pointer}
.vnpc-footnote{margin-top:8px; color:var(--muted); font-size:12px}
@media (max-width:600px){.vnpc{border-radius:12px}.vnpc-cell{min-height:60px}}
[data-compact="true"] .vnpc-panel .vnpc-row{padding:4px 0}


/* --- v1.1.1: Mobile 7-column fix & compact spacing --- */
@media (max-width: 480px){
  .vnpc-weekdays,
  .vnpc-grid{
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
  .vnpc-grid{ padding: 6px 8px 12px !important; }
  .vnpc-cell{
    padding: 6px 4px !important;
    border-radius: 10px !important;
    min-height: 54px !important;
  }
  .vnpc-cell .solar{ font-size: 14px !important; line-height: 1 !important; }
  .vnpc-cell .lunar{ font-size: 10px !important; line-height: 1.1 !important; opacity: .8 !important; }
}


/* v1.2.0 compact today widget */
.vnpc.vnpc-today .vnpc-header{padding:10px 12px; background:#f9fafb}
.vnpc.vnpc-today .vnpc-panel{padding:10px 12px}
.vnpc.vnpc-today .vnpc-row{display:flex; justify-content:space-between; padding:4px 0}
