/* Dynamic directory controls and anchor targeting cannot be expressed in saved blocks.
 * All brand colors, type and spacing inherit the active theme's preset cascade.
 * These rules apply only to this plugin's frontend controls and results.
 */
.wbdn-nav {
  box-sizing: border-box;
  background: var(--wp--preset--color--creek-wash);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--border--radius, 6px);
  padding: var(--wp--preset--spacing--50);
  margin-block: 0 var(--wp--preset--spacing--60);
  color: var(--wp--preset--color--ink);
}
.wbdn-breadcrumb,.wbdn-result-links { display:flex; align-items:baseline; gap:var(--wp--preset--spacing--20); flex-wrap:wrap; }
.wbdn-breadcrumb { font-size:var(--wp--preset--font-size--small); margin-bottom:var(--wp--preset--spacing--40); }
.wbdn-nav a,.wbdn-results a { color:var(--wp--preset--color--clay-deep); text-decoration:underline; text-underline-offset:.15em; }
.wbdn-breadcrumb > * { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.wbdn-breadcrumb [aria-current] { color:var(--wp--preset--color--ink-2); }
.wbdn-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--wp--preset--spacing--50); }
.wbdn-controls form { min-width:0; margin:0; }
.wbdn-controls label { display:block; font-size:var(--wp--preset--font-size--small); font-weight:600; margin-bottom:var(--wp--preset--spacing--20); }
.wbdn-field-row { display:flex; gap:var(--wp--preset--spacing--20); align-items:stretch; }
.wbdn-controls input,.wbdn-controls select,.wbdn-controls button { box-sizing:border-box; font-family:var(--wp--preset--font-family--sans); font-size:var(--wp--preset--font-size--medium); line-height:1.4; min-height:44px; border-radius:var(--wp--custom--border--radius,6px); }
.wbdn-controls input,.wbdn-controls select { width:100%; min-width:0; padding:var(--wp--preset--spacing--30); border:1px solid var(--wp--preset--color--line-2); color:var(--wp--preset--color--ink); background:var(--wp--preset--color--card); }
.wbdn-controls input::placeholder { color:var(--wp--preset--color--ink-2); opacity:1; }
.wbdn-controls button { background:var(--wp--preset--color--clay-deep); color:var(--wp--preset--color--card); border:1px solid transparent; padding:var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); cursor:pointer; flex:none; }
.wbdn-controls button:hover { background:var(--wp--preset--color--creek-deep); }
.wbdn-nav :focus-visible,.wbdn-results a:focus-visible { outline:3px solid var(--wp--preset--color--creek); outline-offset:3px; }
.wbdn-all { display:inline-block; margin-top:var(--wp--preset--spacing--40); font-size:var(--wp--preset--font-size--small); }
.wbdn-nav-bottom { margin-block:var(--wp--preset--spacing--60) 0; background:var(--wp--preset--color--paper); }
.wbdn-nav-bottom .wbdn-controls { display:block; }
.wbdn-nav-bottom .wbdn-category-form { max-width:36rem; }
.wbdn-results { overflow-wrap:anywhere; }
.wbdn-results #wbdn-results-heading { font-size:var(--wp--preset--font-size--x-large); margin-top:var(--wp--preset--spacing--50); }
.wbdn-result-count,.wbdn-result-links { font-size:var(--wp--preset--font-size--small); color:var(--wp--preset--color--ink-2); }
.wbdn-result { border-top:1px solid var(--wp--preset--color--line); padding-block:var(--wp--preset--spacing--50); }
.wbdn-results .wbdn-result h3 { font-size:var(--wp--preset--font-size--large); margin-block:0 var(--wp--preset--spacing--30); }
.wbdn-result p { margin-block:0 var(--wp--preset--spacing--30); }
.wbdn-result .wbdn-sponsored { font-size:var(--wp--preset--font-size--small); color:var(--wp--preset--color--clay-deep); font-weight:600; }
.wbdn-pagination ul { display:flex; flex-wrap:wrap; gap:var(--wp--preset--spacing--30); padding:0; list-style:none; }
.wbdn-pagination a,.wbdn-pagination span { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; }
.wbdn-pagination .current { font-weight:700; background:var(--wp--preset--color--creek-wash); }
/* Unbroken URLs and dynamic sponsor assets need intrinsic-size safeguards; saved block controls do not expose these. */
.wbdn-listing-anchor { scroll-margin-top:10rem; overflow-wrap:anywhere; }
.wbdn-listing-anchor img { box-sizing:border-box; max-width:100%; }
.wbdn-listing-anchor:target { outline:2px solid var(--wp--preset--color--creek); outline-offset:var(--wp--preset--spacing--20); background-color:var(--wp--preset--color--honey-wash); }
@media (max-width:700px) { .wbdn-controls { grid-template-columns:minmax(0,1fr); } }
@media (max-width:600px) {
  .wbdn-nav { padding:var(--wp--preset--spacing--40); }
  .wbdn-field-row { flex-direction:column; }
  .wbdn-controls input,.wbdn-controls select,.wbdn-controls button { width:100%; max-width:100%; }
}
