
        :root { --primary: #2d8a6e; --primary-light: #e8f5f0; --accent: #f5a623; --accent-light: #fff8e7; --dark: #2c3e50; --text: #5a6c7d; --bg: #f7f9fc; --white: #ffffff; --shadow: 0 4px 20px rgba(45,138,110,0.08); --radius: 16px; }
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { font-family: 'PingFang SC','Microsoft YaHei','Helvetica Neue',sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }
        a { text-decoration: none; color: inherit; }
        .navbar-custom { background: var(--white); box-shadow: var(--shadow); padding: 0.8rem 0; position: sticky; top: 0; z-index: 1000; }
        .navbar-brand-custom { font-size: 1.5rem; font-weight: 700; color: var(--primary) !important; display: flex; align-items: center; gap: 8px; }
        .brand-icon { width: 36px; height: 36px; background: linear-gradient(135deg,var(--primary),#5bc8a4); border-radius: 10px; display: flex; align-items: center; justify-content: center; color: white; font-size: 1.1rem; }
        .nav-link-custom { color: var(--dark) !important; font-weight: 500; padding: 0.5rem 1rem !important; border-radius: 8px; transition: all 0.3s; font-size: 0.95rem; }
        .nav-link-custom:hover, .nav-link-custom.active { background: var(--primary-light); color: var(--primary) !important; }
        .container { max-width: 1100px; margin: 0 auto; padding: 0 1rem; }

        .search-hero { background: linear-gradient(135deg,#e8f5f0,#d0edd8); padding: 2.2rem 0 1.6rem; }
        .search-box { display: flex; gap: 10px; margin-top: 1rem; }
        .search-box input { flex: 1; border: 2px solid #fff; border-radius: 12px; padding: 0.8rem 1rem; font-size: 1rem; outline: none; font-family: inherit; }
        .search-box input:focus { border-color: var(--primary); }
        .btn-search { background: var(--primary); color: #fff; border: none; border-radius: 12px; padding: 0 1.6rem; font-weight: 600; cursor: pointer; }
        .btn-search:hover { background: #24705a; }
        .result-head { font-size: 0.95rem; color: var(--text); margin: 1.2rem 0 0.8rem; }
        .result-head b { color: var(--primary); }

        .group { background: var(--white); border-radius: var(--radius); box-shadow: var(--shadow); padding: 1.2rem 1.4rem; margin-bottom: 1.2rem; }
        .group-title { font-size: 1.05rem; font-weight: 700; color: var(--dark); margin-bottom: 0.8rem; padding-bottom: 0.6rem; border-bottom: 2px solid var(--primary-light); display: flex; align-items: center; gap: 8px; }
        .group-title .badge-count { font-size: 0.78rem; background: var(--primary); color: #fff; padding: 1px 8px; border-radius: 10px; font-weight: 600; }
        .item { display: flex; gap: 12px; align-items: center; padding: 0.7rem 0.6rem; border-radius: 10px; transition: all .2s; cursor: pointer; border-bottom: 1px dashed #f0f4f8; }
        .item:last-child { border-bottom: none; }
        .item:hover { background: var(--primary-light); }
        .item .item-icon { width: 42px; height: 42px; border-radius: 10px; background: var(--primary-light); display: flex; align-items: center; justify-content: center; font-size: 1.3rem; flex-shrink: 0; }
        .item .item-main { flex: 1; min-width: 0; }
        .item .item-title { font-size: 0.98rem; font-weight: 600; color: var(--dark); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        .item .item-sub { font-size: 0.82rem; color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        .item .item-go { color: var(--primary); font-size: 0.85rem; flex-shrink: 0; }

        .empty { text-align: center; padding: 3rem 1rem; color: var(--text); }
        .empty .icon { font-size: 3rem; margin-bottom: 0.6rem; }
        .loading { text-align: center; padding: 3rem 1rem; color: var(--text); }
        .hot-tags { margin-top: 0.9rem; display: flex; gap: 8px; flex-wrap: wrap; }
        .hot-tag { background: rgba(255,255,255,.75); color: var(--primary); border-radius: 20px; padding: 3px 12px; font-size: 0.82rem; cursor: pointer; }
        .hot-tag:hover { background: #fff; }
        .error-box { background: #fdecea; color: #c0392b; border-radius: 12px; padding: 1rem 1.2rem; margin-bottom: 1rem; }
        footer { background: var(--dark); color: #ccc; padding: 2rem 0; margin-top: 2rem; text-align: center; font-size: 0.88rem; }
        @media (max-width: 640px) { .search-box { flex-direction: column; } .btn-search { padding: 0.7rem; } }
    

.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;padding:.6rem 1rem;background:#2d8a6e;color:#fff;border-radius:0 0 .5rem 0;text-decoration:none;font-size:.9rem}
.skip-link:focus{left:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #2d8a6e;outline-offset:2px}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
