.dpv-partner-directory{--dpv-partner-gap:24px}.dpv-partner-results{display:grid;grid-template-columns:repeat(var(--dpv-cols,3),minmax(0,1fr));gap:var(--dpv-partner-gap)}.dpv-partner-card{position:relative;min-width:0;overflow:hidden;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.dpv-partner-media-link{display:block}.dpv-partner-media{width:100%;height:220px;background-repeat:no-repeat;background-position:center;background-size:contain}.dpv-partner-content{padding:20px}.dpv-partner-title{margin:0 0 10px;font-size:1.15rem;line-height:1.35}.dpv-partner-title a{color:inherit;text-decoration:none}.dpv-partner-excerpt{margin-bottom:14px;line-height:1.6}.dpv-partner-meta{margin-top:14px}.dpv-partner-meta-label{display:block;margin-bottom:7px;font-weight:600;font-size:.82rem}.dpv-partner-chips{display:flex;flex-wrap:wrap;gap:7px}.dpv-partner-chip{display:inline-flex;padding:6px 11px;border-radius:999px;background:#eef0f3;font-size:.8rem;line-height:1.2}.dpv-partner-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:24px}.dpv-partner-filter-field{display:flex;flex-direction:column;gap:6px;min-width:180px}.dpv-partner-filter-field>span{font-size:.8rem;font-weight:600}.dpv-partner-filter-field input,.dpv-partner-filter-field select{min-height:42px;padding:8px 12px;border:1px solid #d7dbe0;border-radius:8px;background:#fff}.dpv-partner-reset{min-height:42px;padding:8px 16px;border:1px solid #d7dbe0;border-radius:8px;background:#fff;cursor:pointer}.dpv-partner-directory.filters-sidebar{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:28px}.dpv-partner-directory.filters-sidebar .dpv-partner-filters{display:flex;flex-direction:column;align-items:stretch;margin:0}.dpv-partner-directory.filters-sidebar .dpv-partner-results{grid-column:2}.dpv-partner-directory.layout-list .dpv-partner-results{grid-template-columns:1fr}.dpv-partner-directory.layout-list .dpv-partner-card{display:grid;grid-template-columns:minmax(180px,30%) minmax(0,1fr)}.dpv-partner-directory.layout-list .dpv-partner-media{height:100%;min-height:200px}.dpv-partner-directory.is-loading .dpv-partner-results{opacity:.55;pointer-events:none}.dpv-partners-empty{grid-column:1/-1;padding:30px;text-align:center;border:1px dashed #d7dbe0;border-radius:10px}@media(max-width:1024px){.dpv-partner-results{grid-template-columns:repeat(var(--dpv-cols-tablet,2),minmax(0,1fr))}}@media(max-width:767px){.dpv-partner-results{grid-template-columns:repeat(var(--dpv-cols-mobile,1),minmax(0,1fr))}.dpv-partner-directory.layout-list .dpv-partner-card{grid-template-columns:1fr}.dpv-partner-filters{display:grid;grid-template-columns:1fr}.dpv-partner-filter-field{min-width:0}}
.dpv-partner-stretched-link{color:inherit;text-decoration:none}.dpv-partner-card.is-entire-link .dpv-partner-stretched-link::after{content:"";position:absolute;inset:0;z-index:1}.dpv-partner-card.is-entire-link .dpv-partner-content{position:relative}.dpv-partner-actions{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}.dpv-partner-action{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid transparent;border-radius:999px;text-decoration:none;line-height:1.2;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.dpv-partner-action-view{color:#fff;background:#111;border-color:#111}.dpv-partner-action-read{color:#111;background:transparent;border-color:#cfd3d8}.dpv-partner-action:focus-visible{outline:2px solid currentColor;outline-offset:2px}.dpv-partner-card.is-entire-link .dpv-partner-actions,.dpv-partner-card.is-entire-link .dpv-partner-action{position:relative;z-index:3}
/* v1.0.3: view switcher + flexible two-column filter layout */
.dpv-partner-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 18px;grid-column:1/-1}.dpv-partner-view-label{font-size:.82rem;font-weight:600}.dpv-partner-view-buttons{display:inline-flex;align-items:center;gap:4px}.dpv-partner-view-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;line-height:1;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease}.dpv-partner-view-button svg{display:block;width:18px;height:18px;pointer-events:none;overflow:visible}.dpv-partner-view-button .dpv-view-icon,.dpv-partner-view-button .dpv-view-icon *{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dpv-partner-view-button .dpv-view-icon-list circle{fill:currentColor;stroke:none}.dpv-partner-view-button[aria-pressed="true"],.dpv-partner-view-button:hover,.dpv-partner-view-button:focus-visible{color:#111827}.dpv-partner-view-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.dpv-partner-filters{gap:var(--dpv-filter-gap,12px)}.dpv-partner-directory.filters-sidebar{grid-template-columns:minmax(0,var(--dpv-filter-fr,30fr)) minmax(0,var(--dpv-results-fr,70fr));gap:var(--dpv-sidebar-gap,28px)}.dpv-partner-directory.filters-sidebar .dpv-partner-toolbar{grid-column:1/-1}.dpv-partner-directory.filters-sidebar .dpv-partner-filters{grid-column:1}.dpv-partner-directory.filters-sidebar .dpv-partner-results,.dpv-partner-directory.filters-sidebar .dpv-partner-pagination{grid-column:2}
@media(max-width:1024px){.dpv-partner-directory.filters-sidebar.sidebar-stack-tablet{grid-template-columns:1fr}.dpv-partner-directory.filters-sidebar.sidebar-stack-tablet .dpv-partner-filters,.dpv-partner-directory.filters-sidebar.sidebar-stack-tablet .dpv-partner-results,.dpv-partner-directory.filters-sidebar.sidebar-stack-tablet .dpv-partner-pagination{grid-column:1}}
@media(max-width:767px){.dpv-partner-directory.filters-sidebar,.dpv-partner-directory.filters-sidebar.sidebar-stack-mobile{grid-template-columns:1fr}.dpv-partner-directory.filters-sidebar .dpv-partner-filters,.dpv-partner-directory.filters-sidebar .dpv-partner-results,.dpv-partner-directory.filters-sidebar .dpv-partner-pagination{grid-column:1}.dpv-partner-toolbar{grid-column:1}}

/* v1.0.5: deterministic view-switcher icon centering and theme isolation. */
.dpv-partner-view-button{
  -webkit-appearance:none;
  appearance:none;
  position:relative;
  display:inline-block;
  box-sizing:border-box;
  margin:0;
  font-size:0;
  line-height:0;
  vertical-align:middle;
  text-align:center;
  overflow:hidden;
}
.dpv-partner-view-button::before,.dpv-partner-view-button::after{content:none;}
.dpv-partner-view-button .dpv-view-icon{
  position:absolute;
  top:50%;
  left:50%;
  display:block;
  margin:0;
  padding:0;
  max-width:none;
  max-height:none;
  transform:translate(-50%,-50%);
  transform-origin:center;
  flex:none;
  pointer-events:none;
}
.dpv-partner-view-button .dpv-view-icon,.dpv-partner-view-button .dpv-view-icon *{box-sizing:border-box;}


/* v1.0.9: theme-agnostic filter/reset controls and accessible interaction states. */
.dpv-partner-filter-field input,
.dpv-partner-filter-field select,
.dpv-partner-reset{
  box-sizing:border-box;
  font:inherit;
  line-height:1.35;
}
.dpv-partner-filter-field input,
.dpv-partner-filter-field select{
  width:100%;
  color:#111827;
  transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.dpv-partner-filter-field input:focus,
.dpv-partner-filter-field select:focus{
  outline:none;
  border-color:#2563eb;
}
.dpv-partner-filter-field input:focus-visible,
.dpv-partner-filter-field select:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
.dpv-partner-reset{
  -webkit-appearance:none;
  appearance:none;
  color:#111827;
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.dpv-partner-reset:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
.dpv-partner-status{min-height:1em;}

/* v1.0.10: configurable custom select arrow for consistent cross-browser filter styling. */
.dpv-partner-select-wrap{
  --dpv-select-arrow-color:#111827;
  --dpv-select-arrow-size:8px;
  --dpv-select-arrow-right:14px;
  --dpv-select-arrow-y:0px;
  --dpv-select-text-right:40px;
  position:relative;
  display:block;
  width:100%;
}
.dpv-partner-select-wrap select{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  padding-right:var(--dpv-select-text-right);
}
.dpv-partner-select-wrap::after{
  content:"";
  position:absolute;
  z-index:1;
  top:50%;
  right:var(--dpv-select-arrow-right);
  width:var(--dpv-select-arrow-size);
  height:var(--dpv-select-arrow-size);
  border-right:2px solid var(--dpv-select-arrow-color);
  border-bottom:2px solid var(--dpv-select-arrow-color);
  transform:translateY(calc(-50% + var(--dpv-select-arrow-y))) rotate(45deg);
  transform-origin:center;
  pointer-events:none;
  box-sizing:border-box;
}
@media (forced-colors:active){
  .dpv-partner-select-wrap::after{border-color:ButtonText;}
}

