body { font-family: Arial, sans-serif; max-width: 1100px; margin: 40px auto; padding: 0 20px; }
        .layout { display: grid; grid-template-columns: 260px 1fr; gap: 32px; }
        .layout { display: grid; grid-template-columns: 260px 1fr; gap: 32px; }
.search-wrap {
    max-width: 980px;
    margin: 2rem auto;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.search-head {
    margin-bottom: 1.5rem;
}

.search-title {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: .25rem;
}
.category-btn {
    cursor: pointer;
}

.category-btn.active {
    font-weight: bold;
}
.search-meta {
    color: #666;
    font-size: .95rem;
}
.result-card { margin-bottom: 28px;
                     width:100%}
.result-card {
    border: 1px solid #ddd;
    border-radius: 14px;
    padding: 1.2rem 1.4rem;
    margin-bottom: 1rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
}

.result-top {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    width:100%;
}

.result-type {
    display: inline-block;
    font-size: .78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #555;
    background: #f1f1f1;
    border-radius: 999px;
    padding: .25rem .6rem;
    margin-bottom: .5rem;
}

.result-title {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 0 .45rem 0;
}

.result-title a {
    color: #111;
    text-decoration: none;
}

.result-title a:hover {
    text-decoration: underline;
}

.result-text {
    color: #333;
    line-height: 1.45;
    margin-bottom: .8rem;
}
.result-text mark {
    background: #fff2a8;
    padding: 0 .15em;
    border-radius: .2em;
}
.result-info {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    color: #666;
    font-size: .88rem;
}
.result-image{
    width:50%;
}
.result-image img{
    widtH:100%
}
.score-box {
    min-width: 120px;
    text-align: right;
}

.score-label {
    font-size: .82rem;
    font-weight: 600;
    color: #333;
    margin-bottom: .35rem;
}

.score-bar {
    height: 7px;
    width: 110px;
    background: #e5e5e5;
    border-radius: 999px;
    overflow: hidden;
}

.score-fill {
    height: 100%;
    background: #333;
    border-radius: 999px;
}

.tags {
    margin-top: .8rem;
}

.tag {
    display: inline-block;
    font-size: .8rem;
    background: #f4f4f4;
    color: #444;
    border-radius: 999px;
    padding: .25rem .55rem;
    margin: 0 .25rem .25rem 0;
}

.pagination {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin-top: 2rem;
    flex-wrap: wrap;
}

.pagination a,
.pagination span {
    min-width: 2.2rem;
    padding: .5rem .7rem;
    border: 1px solid #ddd;
    border-radius: .5rem;
    text-align: center;
    text-decoration: none;
    color: #222;
    background: #fff;
}

.pagination a:hover {
    background: #f3f3f3;
}

.pagination .current {
    background: #222;
    color: #fff;
    border-color: #222;
    font-weight: 700;
}

.pagination .disabled {
    color: #999;
    background: #f7f7f7;
}

.pagination .ellipsis {
    border: none;
    background: transparent;
    min-width: auto;
}


.empty {
    border: 1px dashed #ccc;
    border-radius: 14px;
    padding: 2rem;
    text-align: center;
    color: #666;
}
  .facet a { display: block; margin: 6px 0; }
        .facet a.active { font-weight: bold; text-decoration: none; }

        .result-title { margin-bottom: 6px; }
        .result-text { color: #555; }
        mark, b { background: #fff2a8; }
        mark { background: #fff2a8; padding: 0 .12em; border-radius: .2em; }
        .pagination a { margin-right: 16px; }
        .pagination a, .pagination span { margin-right: 10px; }
        .pagination .active { font-weight: bold; }
        .disabled { color: #999; }
        .score-bar { width: 120px; height: 7px; background: #ddd; border-radius: 999px; overflow: hidden; }
        .score-fill { height: 100%; background: #333; }
