﻿.enc-search-hero {
      padding: 48px 0 36px; text-align: center;
      border-bottom: 1px solid var(--bg3); margin-bottom: 40px;
      background: radial-gradient(ellipse 60% 80% at 50% 0%, rgba(200,148,42,.06) 0%, transparent 70%);
    }
    .enc-search-wrap {
      max-width: 600px; margin: 0 auto;
      position: relative; display: flex; align-items: center;
    }
    .enc-search-wrap .form-input {
      font-size: .95rem; padding: 14px 20px 14px 50px;
      border-radius: 12px; width: 100%;
    }
    .enc-search-icon {
      position: absolute; left: 18px; font-size: 1.1rem; color: var(--text-dim); pointer-events: none;
    }
    .enc-cats {
      display: flex; gap: 10px; flex-wrap: wrap;
      justify-content: center; margin-top: 20px;
    }
    .enc-cat-btn {
      padding: 6px 16px; border-radius: 20px; font-size: .76rem; font-weight: 600;
      cursor: pointer; border: 1px solid var(--bg5); color: var(--text-muted);
      background: var(--bg2); transition: all .2s ease;
      font-family: 'Cinzel', serif; letter-spacing: .04em;
    }
    .enc-cat-btn:hover  { border-color: var(--gold-border); color: var(--text-bright); }
    .enc-cat-btn.active { background: rgba(200,148,42,.12); border-color: rgba(200,148,42,.4); color: var(--gold); }

    .enc-section { margin-bottom: 48px; }
    .enc-section-title {
      font-family: 'Cinzel', serif; font-size: .72rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: .2em; color: var(--gold-dim);
      display: flex; align-items: center; gap: 14px; margin-bottom: 18px;
    }
    .enc-section-title::after { content: ''; flex: 1; height: 1px; background: rgba(200,148,42,.1); }

    .enc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }

    .enc-card-v2 {
      background: var(--panel); border: 1px solid var(--bg5);
      border-radius: var(--radius-lg); padding: 20px;
      display: flex; gap: 16px; align-items: flex-start;
      transition: all .25s ease; text-decoration: none; cursor: pointer;
      position: relative; overflow: hidden;
    }
    .enc-card-v2::before {
      content: ''; position: absolute; inset: 0;
      background: radial-gradient(circle at var(--mx,50%) var(--my,50%), rgba(200,148,42,.06) 0%, transparent 55%);
      opacity: 0; transition: opacity .25s;
    }
    .enc-card-v2:hover { border-color: rgba(200,148,42,.28); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.4); }
    .enc-card-v2:hover::before { opacity: 1; }

    .enc-icon-v2 {
      width: 48px; height: 48px; border-radius: 12px; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center;
      font-size: 1.6rem; background: var(--bg2); border: 1px solid var(--bg5);
    }
    .enc-body-v2 { flex: 1; min-width: 0; }
    .enc-title-v2 { font-family: 'Cinzel', serif; font-size: .9rem; font-weight: 700; color: var(--text-bright); margin-bottom: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .enc-desc-v2  { font-size: .78rem; color: var(--text-muted); line-height: 1.55; margin-bottom: 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .enc-cat-badge { display: inline-flex; align-items: center; gap: 5px; padding: 2px 9px; border-radius: 8px; font-size: .63rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
    .enc-cat-lore     { background:rgba(200,148,42,.1);  color:var(--gold-dim);  border:1px solid rgba(200,148,42,.2); }
    .enc-cat-region   { background:rgba(76,154,255,.08); color:var(--info);       border:1px solid rgba(76,154,255,.2); }
    .enc-cat-mechanic { background:rgba(76,187,122,.08); color:var(--ok);         border:1px solid rgba(76,187,122,.2); }
    .enc-cat-creature { background:rgba(184,87,247,.08); color:var(--epic);       border:1px solid rgba(184,87,247,.2); }
    .enc-cat-histoire { background:rgba(240,160,48,.08); color:var(--legend);     border:1px solid rgba(240,160,48,.2); }

    @media (max-width: 700px) { .enc-grid { grid-template-columns: 1fr; } }
