.affiliate-filters { position: relative; width: fit-content; margin-bottom: 12px; }
.affiliate-filters > summary { display: flex; align-items: center; gap: 8px; list-style: none; cursor: pointer; border: 1px solid #e2e8f0; border-radius: 10px; padding: 10px 14px; background: #f8fafc; color: #334155; font-size: .82rem; font-weight: 700; }
.affiliate-filters > summary::-webkit-details-marker { display: none; }
.affiliate-filters[open] > summary { background: #eef2ff; border-color: #a5b4fc; color: #4338ca; }
.affiliate-filters > summary:focus-visible { outline: 2px solid #6366f1; outline-offset: 3px; }
.affiliate-filters-panel { position: absolute; top: calc(100% + 8px); left: 0; z-index: 30; width: min(270px, calc(100vw - 64px)); box-sizing: border-box; padding: 16px; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; box-shadow: 0 12px 32px #0f172a26; }
.affiliate-filters-panel label { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; font-size: .78rem; font-weight: 700; color: #475569; }
.affiliate-filters-panel select { width: 100%; padding: 10px; border: 1px solid #e2e8f0; border-radius: 8px; background: #f8fafc; color: #1e293b; font: inherit; }
.affiliate-results-toolbar { display: flex; align-items: center; gap: 8px; width: 100%; margin-bottom: 12px; }
.affiliate-results-toolbar-desktop { width: auto; margin-left: auto; margin-bottom: 0; flex-wrap: wrap; }
.affiliate-export-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.affiliate-export-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 40px; padding: 8px 12px; border: 1px solid #c7d2fe; border-radius: 10px; background: #eef2ff; color: #4338ca; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; white-space: nowrap; }
.affiliate-export-button:hover { background: #e0e7ff; }
.affiliate-export-button:focus-visible { outline: 2px solid #6366f1; outline-offset: 3px; }
.affiliate-export-button:disabled { opacity: .6; cursor: wait; }
.affiliate-export-menu { position: relative; flex-shrink: 0; }
.affiliate-export-menu > summary { list-style: none; }
.affiliate-export-menu > summary::-webkit-details-marker { display: none; }
.affiliate-export-menu > summary .ph-caret-down { transition: transform .15s ease; }
.affiliate-export-menu[open] > summary .ph-caret-down { transform: rotate(180deg); }
.affiliate-export-menu-panel { position: absolute; top: calc(100% + 6px); right: 0; z-index: 40; display: flex; flex-direction: column; gap: 6px; width: max-content; min-width: 172px; box-sizing: border-box; padding: 8px; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; box-shadow: 0 12px 32px #0f172a26; }
.affiliate-export-menu-panel .affiliate-export-button { width: 100%; justify-content: flex-start; border-color: transparent; background: #fff; color: #334155; }
.affiliate-export-menu-panel .affiliate-export-button:hover { background: #f1f5f9; }
.affiliate-export-menu-panel .affiliate-export-button .ph-image { color: #4f46e5; }
.affiliate-export-menu-panel .affiliate-export-button .ph-file-pdf { color: #dc2626; }
.affiliate-lifetime { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border: 1px solid #a7f3d0; border-radius: 14px; background: linear-gradient(135deg, #ecfdf5, #f0fdfa); color: #065f46; }
.affiliate-lifetime .lifetime-icon { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 42px; height: 42px; border-radius: 12px; background: #d1fae5; color: #059669; font-size: 1.35rem; }
.affiliate-lifetime .lifetime-label { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1 1 0; }
.affiliate-lifetime > .lifetime-label > span { font-size: .82rem; font-weight: 800; line-height: 1.25; }
.affiliate-lifetime small { color: #475569; font-size: .72rem; line-height: 1.4; }
.affiliate-lifetime strong { margin-left: auto; flex-shrink: 0; font-size: 1.5rem; font-weight: 900; color: #047857; white-space: nowrap; }
@media (max-width: 640px) {
  .affiliate-lifetime { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; padding: 12px 14px; }
  .affiliate-lifetime .lifetime-icon { width: 36px; height: 36px; font-size: 1.15rem; }
  .affiliate-lifetime strong { width: auto; margin-left: 0; text-align: right; font-size: 1.1rem; align-self: center; }
  .affiliate-lifetime small { font-size: .7rem; }
}
.affiliate-results-toolbar .affiliate-filters { flex-shrink: 0; margin-bottom: 0; }
.affiliate-results-toolbar .affiliate-filters > summary { box-sizing: border-box; min-height: 40px; }
.affiliate-results-toolbar > .seg-badge,
.affiliate-results-toolbar > .btn-segment-badge { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 40px; min-width: 40px; flex-shrink: 0; white-space: nowrap; padding: 0 12px !important; border-radius: 10px !important; }
.affiliate-filter-summary { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; height: 40px; flex-shrink: 0; margin-left: 0; padding: 0 12px; border: 1px solid #e2e8f0; border-radius: 10px; background: #f8fafc; text-align: center; }
.affiliate-filter-summary[hidden] { display: none; }
.affiliate-filter-summary > span { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.affiliate-filter-summary strong { font-family: inherit; font-size: 1rem; font-weight: 800; white-space: nowrap; }
.affiliate-filter-summary .estimated { color: #16a34a; }
.affiliate-filter-summary .rejected { color: #e11d48; }
#mob-ml-filter-summary strong { font-size: .92rem; font-weight: 900; }
.affiliate-results-toolbar-mobile { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: 6px; }
.affiliate-results-toolbar-mobile .affiliate-filters { width: 100%; min-width: 0; }
.affiliate-results-toolbar-mobile .affiliate-filters > summary { height: 100%; justify-content: center; gap: 5px; padding: 0 8px; font-size: .78rem; }
.affiliate-results-toolbar-mobile .affiliate-filters > summary .ph-caret-down { display: none; }
.affiliate-results-toolbar-mobile > .btn-segment-badge { padding: 0 10px !important; }
.affiliate-results-toolbar-mobile .affiliate-filter-summary { width: 100%; min-width: 0; height: auto; min-height: 40px; padding: 6px 8px; }
.affiliate-results-toolbar-mobile .affiliate-filter-summary strong { white-space: normal; overflow-wrap: anywhere; line-height: 1.25; }
.affiliate-results-toolbar-desktop .affiliate-filters-panel { left: auto; right: 0; }
@media (min-width: 769px) {
  .affiliate-filters-panel { left: 0; right: auto; }
}
