body { background: #0a0a0a; }

        .news-hero {
            background: #111;
            border-bottom: 1px solid #1e1e1e;
            padding: 64px 0 48px;
            text-align: center;
        }
        .news-hero h1 {
            font-size: clamp(36px, 6vw, 64px);
            font-weight: 800;
            text-transform: uppercase;
            color: #fff;
            margin: 0 0 12px;
            letter-spacing: 2px;
        }
        .news-hero h1 span { color: #f4a500; }
        .news-hero p { color: #666; font-size: 15px; max-width: 520px; margin: 0 auto; }

        .api-badge {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            margin-top: 18px;
            padding: 4px 12px;
            border-radius: 20px;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
        }
        .api-badge.live { background: rgba(34,197,94,.12); color: #22c55e; border: 1px solid rgba(34,197,94,.25); }
        .api-badge.demo { background: rgba(100,100,100,.12); color: #555; border: 1px solid #2a2a2a; }
        .api-badge .dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
        .api-badge.live .dot { animation: blink 1.4s ease-in-out infinite; }
        @keyframes blink { 0%,100%{opacity:1} 50%{opacity:.2} }

        .news-wrap {
            max-width: 1280px;
            margin: 0 auto;
            padding: 48px 32px 80px;
        }

        .news-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
            gap: 24px;
        }

        .news-card {
            background: #111;
            border: 1px solid #1e1e1e;
            border-radius: 10px;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            transition: transform .25s, border-color .25s, box-shadow .25s;
        }
        .news-card:hover {
            transform: translateY(-6px);
            border-color: rgba(244,165,0,.4);
            box-shadow: 0 12px 32px rgba(0,0,0,.7);
        }
        .news-card-img { width: 100%; aspect-ratio: 16/9; object-fit: cover; background: var(--bg1); display: block; }
        .news-card-img-ph { width: 100%; aspect-ratio: 16/9; background: #161616; display: flex; align-items: center; justify-content: center; font-size: 3rem; color: #2a2a2a; }
        .news-card-body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
        .news-card-date { font-size: .72rem; color: #555; text-transform: uppercase; letter-spacing: 1px; }
        .news-card-title { font-size: 1.05rem; font-weight: 700; color: #f0f0f0; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
        .news-card-desc { font-size: .85rem; color: #777; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
        .news-card-link { display: inline-flex; align-items: center; gap: 6px; color: #f4a500; font-size: .8rem; font-weight: 700; text-decoration: none; text-transform: uppercase; letter-spacing: .5px; margin-top: auto; padding-top: 10px; }
        .news-card-link:hover { color: #ffbe33; }

        @media (max-width: 640px) {
            .news-wrap { padding: 32px 16px 60px; }
            .news-grid { grid-template-columns: 1fr; }
        }

        /* ════════════════════════════════════════
           SEARCH BAR — Gold / Boxing Theme
        ════════════════════════════════════════ */
        .news-search-wrap {
            padding: 32px 0 0;
            margin-bottom: 32px;
        }

        .news-search-bar {
            display: flex;
            align-items: center;
            background: #111;
            border: 1px solid #2a2a2a;
            border-radius: 8px;
            overflow: hidden;
            height: 52px;
            transition: border-color .2s, box-shadow .2s;
        }

        .news-search-bar:focus-within {
            border-color: rgba(244, 165, 0, .5);
            box-shadow: 0 0 0 3px rgba(244, 165, 0, .10);
        }

        .news-search-icon {
            padding: 0 18px;
            color: #555;
            font-size: 15px;
            flex-shrink: 0;
            pointer-events: none;
        }

        .news-search-input {
            flex: 1;
            background: transparent;
            border: none;
            outline: none;
            color: #f0f0f0;
            font-size: 15px;
            padding: 0;
            height: 100%;
            caret-color: #f4a500;
            font-family: inherit;
        }

        .news-search-input::placeholder { color: #3a3a3a; }

        .news-search-count {
            display: none;
            align-items: center;
            gap: 5px;
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            color: #3a3a3a;
            padding: 0 16px;
            border-left: 1px solid #2a2a2a;
            height: 100%;
            white-space: nowrap;
            flex-shrink: 0;
        }

        .news-search-count.visible { display: flex; }

        .news-search-count strong {
            color: #f4a500;
            font-weight: 900;
            font-size: 13px;
        }

        .news-search-clear {
            display: none;
            align-items: center;
            justify-content: center;
            background: transparent;
            border: none;
            border-left: 1px solid #2a2a2a;
            color: #3a3a3a;
            padding: 0 16px;
            height: 100%;
            cursor: pointer;
            font-size: 13px;
            flex-shrink: 0;
            transition: color .2s, background .2s;
        }

        .news-search-clear:hover {
            color: #f4a500;
            background: rgba(244,165,0,.06);
        }

        .news-search-clear.visible { display: flex; }

        .news-search-kbd {
            display: flex;
            align-items: center;
            gap: 3px;
            padding: 0 16px;
            border-left: 1px solid #2a2a2a;
            height: 100%;
            flex-shrink: 0;
        }

        .news-search-kbd kbd {
            background: rgba(255,255,255,.04);
            border: 1px solid #2a2a2a;
            border-radius: 3px;
            color: #3a3a3a;
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 1px;
            padding: 2px 6px;
            text-transform: uppercase;
            font-family: inherit;
        }

        /* Highlighted search match text */
        .news-hl {
            background: rgba(244, 165, 0, .2);
            color: #ffbe33;
            border-radius: 2px;
            padding: 0 2px;
            font-style: normal;
        }

        /* Hidden card during search filter */
        .news-card.ns-hidden {
            display: none !important;
        }

        /* No results state */
        .news-no-results {
            display: none;
            grid-column: 1 / -1;
            text-align: center;
            padding: 80px 20px;
        }

        .news-no-results-icon {
            font-size: 44px;
            color: #1e1e1e;
            margin-bottom: 18px;
        }

        .news-no-results h3 {
            font-size: 22px;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: 3px;
            color: #2a2a2a;
            margin: 0 0 8px;
        }

        .news-no-results p {
            font-size: 13px;
            color: #2a2a2a;
        }

        @media (max-width: 640px) {
            .news-search-kbd { display: none; }
            .news-search-count { display: none !important; }
        }