:root{--violet:#4A2BE0;--lime:#C6F24E;--ink:#17123B;--muted:#5B5678;--soft:#F4F2FF;--line:#E2DEF5;--bounce:cubic-bezier(.34,1.56,.64,1)}
.ld-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ld-chip{display:inline-block;background:var(--soft);color:var(--violet);padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700}
[hidden]{display:none!important}
.ld-hub .ld h3,.ld-hub .ld h4{color:inherit;font-weight:700}
/* Directory */
.ld-cards-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.ld-table-box{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff}
.ld-compare-table{border-collapse:collapse;width:100%;min-width:860px;font-size:14.5px;line-height:1.45}
.ld-compare-table th,.ld-compare-table td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.ld-compare-table thead th{background:var(--ink);color:#fff;font-size:15px}
.ld-compare-table tbody th{font-weight:700;white-space:nowrap}
.ld-compare-table td{color:var(--muted)}
.ld-compare-table tr:last-child>*{border-bottom:0}
.ld-dir-tools{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px}
.ld-dir-tools input,.ld-dir-tools select{width:100%;min-height:48px;border:2px solid var(--line);border-radius:12px;padding:6px 12px;background:#fff;color:var(--ink);font:500 14.5px "Poppins",sans-serif}
.ld-app-form .ld-dir-tools{grid-template-columns:repeat(3,minmax(0,1fr))}
.ld-app-form .ld-dir-search{grid-column:1/-1}
.ld-dir-count{font-size:14px;color:var(--muted);font-weight:500;margin:8px 0 12px}
.ld-dir-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;align-items:start}
.ld-prog{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-width:0}
.ld-prog:has(input:checked){border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.ld-prog-head{display:flex;gap:12px;align-items:flex-start}
.ld-prog-title{min-width:0}
.ld .ld-prog h3{font-size:18px;margin:0 0 6px;letter-spacing:-.015em}
.ld-prog-pick{position:relative;flex:none;display:flex;width:44px;height:44px;margin:-6px 0 0 -6px;align-items:center;justify-content:center;cursor:pointer}
.ld-prog-pick input{width:24px;height:24px;accent-color:var(--violet);cursor:pointer;margin:0}
.ld .ld-prog-tags{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 8px}
.ld-chip-soft{background:#fff;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}
.ld-chip-match{display:inline-block;background:var(--lime);color:var(--ink);padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700}
.ld .ld-prog-offer,.ld .ld-prog-rate{font-size:14.5px;line-height:1.45;margin:0 0 8px}
.ld-prog-offer{color:var(--muted)}
.ld-prog-more{margin-top:6px}
.ld-prog-more summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--violet);min-height:32px;display:flex;align-items:center}
.ld-prog-more summary::-webkit-details-marker{display:none}
.ld-prog-more summary::before{content:"";display:inline-block;width:10px;height:10px;border:3px solid var(--violet);border-radius:50%;margin-right:8px;transition:transform .3s var(--bounce)}
.ld-prog-more[open] summary::before{background:var(--lime);transform:translateY(2px) scale(1.12,.88)}
.ld-prog-more dl{margin:8px 0;font-size:14px;line-height:1.45}
.ld-prog-more dt{font-weight:700;margin-top:9px}
.ld-prog-more dd{margin:1px 0 0;color:var(--muted)}
.ld .ld-prog-seen{font-size:12.5px;color:var(--muted);margin:10px 0 6px}
.ld-prog-more a{font-weight:700;font-size:14px}
.ld-dir-none{padding:18px;background:var(--soft);border-radius:14px;font-weight:500}
.ld .ld-dir-note{font-size:14px;color:var(--muted);line-height:1.5;margin:14px 0 0}
.ld-source{margin-bottom:30px}
.ld-source+.ld-source{border-top:1px solid var(--line);padding-top:26px}
.ld .ld-source-title{font-size:22px;margin:0 0 6px}
.ld-way-picks{display:grid;gap:12px}
.ld-way-pick .ld-prog-more{padding:0 8px}
.ld .ld-sup-title{font-size:19px;margin:22px 0 8px}
.ld-sup-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;align-items:start}
.ld-sup{display:flex;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;min-width:0}
.ld-sup:has(input:checked){border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.ld .ld-sup h4{margin:0 0 4px;font-size:16px;line-height:1.2}
.ld .ld-sup p{font-size:14px;line-height:1.45;margin:0 0 6px;color:var(--muted)}
.ld .ld-sup p strong{color:var(--ink)}
.ld-sup small{font-size:12.5px;color:var(--muted)}
.ld-sup a{font-weight:700;font-size:14px}

