/* Scoped to the existing planning; override conflicting WordPress theme styles. */
html body .jdv-portal-planning { background:#fff!important; color:#243247!important; padding:clamp(18px,3vw,30px)!important; box-sizing:border-box; }
html body .jdv-portal-planning .jdv-planning-heading h2,
html body .jdv-portal-planning #jdv-planning-title { color:#103b7a!important; font-size:clamp(32px,4vw,44px)!important; line-height:1.15!important; opacity:1!important; }
html body .jdv-portal-planning .jdv-planning-heading p { color:#475569!important; font-size:17px!important; opacity:1!important; }
html body .jdv-portal-planning .jdv-planning-eyebrow { color:#39751b!important; }
html body .jdv-portal-planning .jdv-planning-close { color:#334155!important; }
html body .jdv-portal-planning .jdv-week-navigation { flex-wrap:wrap; gap:10px; }
html body .jdv-portal-planning .jdv-week-navigation a { background:#fff!important; color:#103b7a!important; text-decoration:none!important; }
html body .jdv-portal-planning .jdv-week-navigation a:hover,
html body .jdv-portal-planning .jdv-week-navigation .jdv-current-week { background:#103b7a!important; color:#fff!important; }
html body .jdv-portal-planning .jdv-planning-table-wrap { background:#fff!important; border:1px solid #cbd5e1!important; border-radius:12px; overflow-x:auto; }
html body .jdv-portal-planning table.jdv-planning-table { width:100%!important; min-width:960px; table-layout:auto!important; background:#fff!important; border-collapse:collapse!important; }
html body .jdv-portal-planning table.jdv-planning-table thead,
html body .jdv-portal-planning table.jdv-planning-table thead tr,
html body .jdv-portal-planning table.jdv-planning-table th { background:#103b7a!important; color:#fff!important; }
html body .jdv-portal-planning table.jdv-planning-table th { padding:15px 16px!important; font-size:15px!important; font-weight:700!important; text-align:left!important; border:0!important; }
html body .jdv-portal-planning table.jdv-planning-table tbody,
html body .jdv-portal-planning table.jdv-planning-table tbody tr,
html body .jdv-portal-planning table.jdv-planning-table td { background:#fff!important; color:#243247!important; }
html body .jdv-portal-planning table.jdv-planning-table td { padding:20px 16px!important; font-size:16px!important; line-height:1.5!important; vertical-align:top!important; border:0!important; border-bottom:1px solid #dbe3ed!important; word-break:normal!important; overflow-wrap:normal!important; }
html body .jdv-portal-planning table.jdv-planning-table tbody tr:nth-child(even) td { background:#f1f5f9!important; }
html body .jdv-portal-planning table.jdv-planning-table a,
html body .jdv-portal-planning table.jdv-planning-table summary { color:#103b7a!important; opacity:1!important; }
html body .jdv-portal-planning table.jdv-planning-table a[href^="tel:"] { white-space:nowrap!important; font-weight:700!important; text-decoration:underline!important; text-underline-offset:3px; }
html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] td:nth-child(-n+2) { white-space:nowrap!important; font-variant-numeric:tabular-nums; }
html body .jdv-portal-planning .jdv-address-share { min-width:200px; }
html body .jdv-portal-planning .jdv-whatsapp-choice { background:#fff!important; color:#243247!important; }
html body .jdv-portal-planning .jdv-planning-empty { background:#f1f5f9!important; color:#243247!important; padding:20px; }
html body .jdv-portal-planning a:focus-visible,
html body .jdv-portal-planning summary:focus-visible { outline:3px solid #39751b!important; outline-offset:4px; }
@media(max-width:700px) {
  html body .jdv-portal-planning .jdv-planning-heading { flex-direction:column; gap:12px; }
  html body .jdv-portal-planning .jdv-week-navigation a { padding:9px 10px; font-size:14px; flex:1 1 auto; }
  html body .jdv-portal-planning .jdv-planning-table-wrap:has(table[data-jdv-readable]) { border:0!important; overflow:visible; }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] { display:block; min-width:0!important; }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] tbody { display:block; }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] tbody tr { display:block; border:1px solid #cbd5e1!important; border-left:4px solid #39751b!important; border-radius:10px; margin-bottom:16px; overflow:hidden; }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] td { display:grid; grid-template-columns:100px minmax(0,1fr); gap:12px; padding:12px!important; white-space:normal!important; overflow-wrap:anywhere!important; }
  html body .jdv-portal-planning table.jdv-planning-table[data-jdv-readable] td::before { content:attr(data-label); font-weight:700; color:#475569; font-size:14px; }
  html body .jdv-portal-planning .jdv-address-share { min-width:0; }
}
