.sod-data-search{width:100%;max-width:600px;margin:0 auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.sod-data-search__row{position:relative;display:flex;gap:8px;align-items:center}
.sod-data-search__input{width:100%;padding:12px 72px 12px 14px;border:1px solid rgba(0,0,0,.15);border-radius:18px;background:#fff;color:#111;box-sizing:border-box}
.sod-data-search__input:focus{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}
.sod-data-search__clear{position:absolute;right:44px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#111;font-size:22px;line-height:1;cursor:pointer;padding:6px;border-radius:10px}
.sod-data-search__clear:focus{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}

.sod-data-search__icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:rgba(17,24,39,.6);pointer-events:none}

.sod-data-search__panel{margin-top:8px;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.08);overflow:hidden}
.sod-data-search__hint{padding:12px 14px;color:#6b7280;font-size:13px}
.sod-data-search__results{display:flex;flex-direction:column;max-height:360px;overflow:auto}

.sod-data-search__item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;padding:12px 14px;text-decoration:none;color:inherit;border-top:1px solid rgba(0,0,0,.06);min-width:0}
.sod-data-search__item:first-child{border-top:0}
.sod-data-search__item:hover{background:rgba(37,99,235,.04)}
.sod-data-search__item.is-active{background:rgba(37,99,235,.08)}

.sod-data-search__badge{grid-row:1/span 2;align-self:start;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;border:1px solid rgba(0,0,0,.12);background:#f3f4f6;white-space:nowrap}
.sod-data-search__badge.is-resource{background:#fff7ed;border-color:#fed7aa}
.sod-data-search__badge.is-dataset{background:#ecfdf5;border-color:#bbf7d0}

.sod-data-search__title{font-weight:800;font-size:14px;line-height:1.25;min-width:0;overflow-wrap:anywhere}
.sod-data-search__snippet{color:#6b7280;font-size:12px;line-height:1.35;min-width:0;overflow-wrap:anywhere}
.sod-data-search__mark{background:rgba(253,224,71,.55);padding:0 2px;border-radius:4px}

@media (prefers-color-scheme: dark){
  .sod-data-search__input{background:#0b1220;color:#f9fafb;border-color:rgba(255,255,255,.16)}
  .sod-data-search__panel{background:#0b1220;border-color:rgba(255,255,255,.16)}
  .sod-data-search__hint{color:#9ca3af}
  .sod-data-search__item{border-top-color:rgba(255,255,255,.08)}
  .sod-data-search__item:hover{background:rgba(96,165,250,.08)}
  .sod-data-search__item.is-active{background:rgba(96,165,250,.12)}
  .sod-data-search__badge{background:#111827;border-color:rgba(255,255,255,.14)}
  .sod-data-search__badge.is-resource{background:rgba(251,146,60,.14);border-color:rgba(251,146,60,.35)}
  .sod-data-search__badge.is-dataset{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.35)}
  .sod-data-search__clear{color:#f9fafb}
  .sod-data-search__icon{color:rgba(249,250,251,.65)}
}

/* Mobile: full width */
@media (max-width: 640px){
  .sod-data-search{max-width:none;margin:0}
}
