body:not(.osint-ready) .osint-shell,
body:not(.osint-ready) .osint-video-modal,
body:not(.osint-ready) .osint-detail-modal {
    visibility:hidden;
}
.osint-loading-splash {
    position:fixed;
    left:0;
    right:0;
    top:72px;
    bottom:0;
    z-index:1040;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        linear-gradient(180deg, rgba(248,250,252,.92), rgba(226,232,240,.9)),
        #f8fafc;
    color:#111827;
    overflow:hidden;
}
.osint-loading-splash::before {
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, transparent, rgba(255,255,255,.62), transparent),
        repeating-linear-gradient(180deg, rgba(15,23,42,.035) 0 1px, transparent 1px 44px);
    transform:translateX(-100%);
    animation:osint-page-shine 1.25s ease-in-out infinite;
    pointer-events:none;
}
body.osint-ready .osint-loading-splash {
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease, visibility .18s ease;
}
.osint-loading-card {
    width:min(320px, calc(100vw - 36px));
    border:1px solid rgba(148,163,184,.35);
    border-radius:10px;
    background:#fff;
    box-shadow:0 22px 48px rgba(15,23,42,.16);
    padding:18px;
}
.osint-loading-mark {
    width:34px;
    height:34px;
    border-radius:9px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#111827;
    color:#7dd3fc;
    margin-bottom:12px;
}
.osint-loading-title {
    font-size:13px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:4px;
}
.osint-loading-sub {
    color:#64748b;
    font-size:12px;
    font-weight:700;
    margin-bottom:12px;
}
.osint-loading-bar {
    height:4px;
    border-radius:999px;
    background:#e2e8f0;
    overflow:hidden;
}
.osint-loading-bar span {
    display:block;
    width:42%;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg, #020617, #64748b);
    animation:osint-loading-slide 1s ease-in-out infinite;
}
@keyframes osint-loading-slide {
    0% { transform:translateX(-110%); }
    100% { transform:translateX(260%); }
}
@keyframes osint-page-shine {
    0% { transform:translateX(-100%); }
    100% { transform:translateX(100%); }
}
@media (max-width:767.98px) {
    .osint-loading-splash { top:72px; }
}

.osint-shell {
    position:relative;
    width:100%;
    margin-left:0;
    margin-right:0;
    min-height:0;
    overflow:hidden;
    padding-top:1.35rem !important;
    padding-bottom:.9rem !important;
    background:
        linear-gradient(180deg, rgba(248,250,252,.98) 0%, rgba(241,245,249,.98) 52%, rgba(235,241,246,.98) 100%),
        #f8fafc;
}
.osint-shell::before {
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(15,23,42,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15,23,42,.035) 1px, transparent 1px);
    background-size:28px 28px;
    mask-image:linear-gradient(180deg, rgba(0,0,0,.62), transparent 70%);
    pointer-events:none;
}
.osint-shell::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:3px;
    background:linear-gradient(90deg, #020617, #334155, #94a3b8, #111827);
    opacity:.9;
    pointer-events:none;
}
.osint-shell > .container { position:relative; z-index:1; }
.osint-hero { display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:.9rem; margin-bottom:1rem !important; }
.osint-kicker { display:inline-flex; align-items:center; gap:.45rem; color:#9b1e2c; font-size:.68rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.osint-kicker span { width:8px; height:8px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.14), 0 0 14px rgba(34,197,94,.42); }
.osint-title { font-weight:900; letter-spacing:0; color:#101722; font-size:2.45rem; line-height:.95; }
.osint-subtitle { max-width:680px; color:#5c6675; font-size:.92rem; font-weight:600; }
.osint-status-panel {
    display:grid;
    grid-template-columns:minmax(132px, auto) minmax(210px, auto);
    gap:.45rem;
    align-items:stretch;
    padding:.42rem;
    border:1px solid rgba(148,163,184,.28);
    border-radius:8px;
    background:rgba(255,255,255,.78);
    box-shadow:0 12px 24px rgba(15,23,42,.08);
    backdrop-filter:blur(12px);
}
.osint-status-main { padding:.55rem .72rem; border-radius:7px; background:#111827; color:#fff; text-align:right; }
.osint-status-main span,.osint-status-main small { display:block; color:#cbd5e1; font-size:.64rem; font-weight:800; text-transform:uppercase; }
.osint-status-main strong { display:block; color:#fff; font-size:1.4rem; line-height:1; }
.osint-status-grid { display:grid; grid-template-columns:repeat(2, minmax(76px, 1fr)); gap:.35rem; }
.osint-status-grid span { display:flex; align-items:center; justify-content:space-between; gap:.45rem; padding:.42rem .52rem; border-radius:7px; background:#f8fafc; color:#475569; border:1px solid #e2e8f0; font-size:.66rem; font-weight:800; text-transform:uppercase; }
.osint-status-grid b { color:#111827; font-size:.9rem; }
.osint-console {
    display:grid;
    grid-template-columns:1fr minmax(240px, 360px) 42px;
    gap:.55rem;
    align-items:center;
    padding:.48rem;
    border:1px solid rgba(148,163,184,.28);
    border-radius:8px;
    background:rgba(255,255,255,.86);
    box-shadow:0 10px 22px rgba(15,23,42,.07);
    backdrop-filter:blur(12px);
    position:relative;
    z-index:20;
}
.osint-filterbar { display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; }
.osint-filter,.osint-refresh { border:1px solid #d7dee9; border-radius:7px; background:#fff; color:#334155; padding:.43rem .58rem; font-size:.76rem; font-weight:800; line-height:1; cursor:pointer; text-decoration:none; box-shadow:0 4px 10px rgba(15,23,42,.04); }
.osint-filter { display:inline-flex; align-items:center; gap:.34rem; }
.osint-filter i { color:#64748b; font-size:.72rem; }
.osint-filter span { margin-left:.25rem; color:#64748b; }
.osint-filter.is-active { background:#111827; border-color:#111827; color:#fff; }
.osint-filter.is-active i,
.osint-filter.is-active span { color:#cbd5e1; }
.osint-refresh { display:flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border-radius:7px; }
.osint-refresh:hover,.osint-filter:hover { text-decoration:none; border-color:#94a3b8; color:#111827; transform:translateY(-1px); }
.osint-filter.is-active:hover { color:#fff; }
.osint-search-wrap { position:relative; }
.osint-search-wrap i { position:absolute; left:.82rem; top:50%; transform:translateY(-50%); color:#64748b; font-size:.85rem; pointer-events:none; }
.osint-search { width:100%; height:36px; border:1px solid #d7dee9; border-radius:7px; padding:.45rem .75rem .45rem 2.05rem; background:#f8fafc; color:#111827; font-size:.86rem; font-weight:700; outline:none; }
.osint-search:focus { border-color:#64748b; box-shadow:0 0 0 4px rgba(100,116,139,.16); background:#fff; }
.osint-lead {
    display:grid;
    grid-template-columns:minmax(260px, 36%) 1fr;
    overflow:hidden;
    margin-bottom:.75rem;
    border:1px solid rgba(148,163,184,.32);
    border-radius:10px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.96)),
        #fff;
    box-shadow:0 12px 26px rgba(15,23,42,.1);
    position:relative;
}
.osint-lead.is-filter-hidden { display:none; }
.osint-lead.is-alert { border-color:rgba(220,38,38,.62); box-shadow:inset 5px 0 0 #dc2626, 0 22px 44px rgba(220,38,38,.12); }
.osint-lead-ribbon {
    position:absolute;
    top:12px;
    left:12px;
    z-index:6;
    display:flex;
    align-items:center;
    gap:7px;
    padding:6px 9px;
    border-radius:8px;
    color:#fff;
    background:rgba(17,24,39,.88);
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 10px 24px rgba(15,23,42,.25);
    backdrop-filter:blur(8px);
}
.osint-lead-ribbon span { font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.osint-lead-ribbon b { font-size:11px; color:#cbd5e1; white-space:nowrap; }
.osint-lead-media { min-height:188px; position:relative; display:flex; align-items:center; justify-content:center; background:#e2e8f0; color:#475569; font-size:2.1rem; overflow:hidden; }
.osint-lead-media.has-video,
.osint-media.has-video { cursor:pointer; }
.osint-lead-media img { width:100%; height:100%; object-fit:cover; display:block; }
.osint-lead-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(15,23,42,.1), rgba(15,23,42,.28)); pointer-events:none; }
.osint-lead-body { display:flex; flex-direction:column; justify-content:center; padding:.86rem 1rem .82rem; position:relative; }
.osint-lead-body::before {
    content:"";
    position:absolute;
    left:0;
    top:24px;
    bottom:24px;
    width:3px;
    border-radius:999px;
    background:linear-gradient(180deg, #020617, #64748b, #facc15);
}
.osint-lead-topline { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem; margin-bottom:.45rem; }
.osint-lead-chip,
.osint-lead-source { display:inline-flex; align-items:center; border-radius:999px; padding:.25rem .5rem; font-size:.66rem; font-weight:900; line-height:1; }
.osint-lead-chip { color:#111827; background:#f1f5f9; border:1px solid rgba(100,116,139,.24); }
.osint-lead-source { color:#475569; background:#f1f5f9; border:1px solid #e2e8f0; }
.osint-lead-body h2 { color:#111827; font-weight:850; font-size:1.28rem; line-height:1.16; margin:0 0 .48rem; letter-spacing:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.osint-lead-note { display:none; }
.osint-feed-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:.2rem 0 .45rem;
    color:#475569;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.osint-feed-head span,
.osint-feed-head b {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:.28rem .55rem;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(148,163,184,.26);
    box-shadow:0 4px 10px rgba(15,23,42,.04);
}
.osint-feed-head b {
    color:#111827;
}
.osint-grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); grid-auto-flow:row dense; gap:.6rem; }
.osint-card {
    display:grid;
    grid-template-rows:auto 1fr;
    overflow:hidden;
    border:1px solid rgba(148,163,184,.34);
    border-radius:8px;
    background:#fff;
    box-shadow:0 7px 16px rgba(15,23,42,.065);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
    position:relative;
}
.osint-card::before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:linear-gradient(180deg, #020617, #64748b);
    opacity:.75;
    z-index:4;
}
.osint-card:hover { transform:translateY(-2px); border-color:rgba(100,116,139,.46); box-shadow:0 12px 22px rgba(15,23,42,.11); }
.osint-card:focus-within { border-color:rgba(100,116,139,.6); box-shadow:0 0 0 3px rgba(100,116,139,.16), 0 12px 22px rgba(15,23,42,.11); }
.osint-card.is-alert { border-color:rgba(220,38,38,.58); box-shadow:inset 4px 0 0 #dc2626,0 14px 28px rgba(220,38,38,.1); }
.osint-card.is-alert::before { background:linear-gradient(180deg, #ef4444, #f97316); opacity:.95; }
.osint-card.is-filter-hidden { display:none; }
.osint-card.is-unrevealed,
.osint-lead.is-unrevealed { display:none; }
.osint-card.is-layout-hidden { display:none !important; }
.osint-card.is-newly-shown {
    animation: osint-newly-shown 1.55s ease-out;
    border-color:rgba(100,116,139,.72);
}
.osint-media { position:relative; height:112px; display:flex; align-items:center; justify-content:center; background:#e2e8f0; color:#475569; font-size:1.5rem; overflow:hidden; }
.osint-media::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg, rgba(15,23,42,0) 38%, rgba(15,23,42,.26) 100%);
    pointer-events:none;
}
.osint-media-type {
    position:absolute;
    left:9px;
    bottom:8px;
    z-index:3;
    display:inline-flex;
    align-items:center;
    padding:3px 7px;
    border-radius:999px;
    color:#fff;
    background:rgba(15,23,42,.72);
    border:1px solid rgba(255,255,255,.2);
    font-size:10px;
    font-weight:850;
    line-height:1;
    backdrop-filter:blur(6px);
    transition:opacity .18s ease, transform .18s ease;
}
.osint-media-count {
    position:absolute;
    right:9px;
    bottom:8px;
    z-index:3;
    display:inline-flex;
    align-items:center;
    padding:3px 7px;
    border-radius:999px;
    color:#fff;
    background:rgba(15,23,42,.72);
    border:1px solid rgba(255,255,255,.2);
    font-size:10px;
    font-weight:850;
    line-height:1;
    backdrop-filter:blur(6px);
}
.osint-media img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .28s ease; }
.osint-media img.is-cycling {
    animation:osint-media-cycle .42s ease;
}
.osint-card:hover .osint-media img { transform:scale(1.04); }
.osint-media.is-empty { background:#dbe4ef; }
.osint-video-badge {
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
    min-width:78px;
    height:38px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    color:#fff;
    background:linear-gradient(135deg, rgba(2,6,23,.94), rgba(51,65,85,.94));
    border:1px solid rgba(255,255,255,.76);
    padding:0 12px 0 10px;
    box-shadow:0 14px 30px rgba(15,23,42,.38), inset 0 1px 0 rgba(255,255,255,.18);
    z-index:4;
    font-size:11px;
    font-weight:900;
    letter-spacing:0;
    line-height:1;
    cursor:pointer;
    transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.osint-video-badge i {
    width:20px;
    height:20px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.18);
    font-size:10px;
    padding-left:2px;
}
.osint-video-badge:hover,
.osint-lead-media.has-video:hover .osint-video-badge,
.osint-media.has-video:hover .osint-video-badge {
    transform:translate(-50%, -50%) scale(1.04);
    background:linear-gradient(135deg, rgba(17,24,39,.96), rgba(71,85,105,.96));
    box-shadow:0 18px 36px rgba(15,23,42,.46), 0 0 0 5px rgba(100,116,139,.16);
}
.osint-lead-media.is-previewing .osint-video-badge,
.osint-media.is-previewing .osint-video-badge {
    opacity:0;
    pointer-events:none;
    transform:translate(-50%, -50%) scale(.88);
    box-shadow:none;
}
.osint-lead.is-previewing-video .osint-watch,
.osint-card.is-previewing-video .osint-watch {
    opacity:1;
}
.osint-hover-video {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    z-index:2;
    background:#05070d;
    pointer-events:none;
}
.osint-lead-media.is-previewing img,
.osint-media.is-previewing img { opacity:0; }
.osint-media.is-previewing .osint-media-type {
    opacity:0;
    transform:translateY(4px);
    pointer-events:none;
}
.osint-media.is-previewing.is-preview-loading::before,
.osint-lead-media.is-previewing.is-preview-loading::before {
    content:"\f03d";
    position:absolute;
    left:50%;
    top:50%;
    z-index:5;
    width:34px;
    height:34px;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    background:rgba(15,23,42,.76);
    border:1px solid rgba(255,255,255,.34);
    box-shadow:0 14px 30px rgba(15,23,42,.36), 0 0 0 5px rgba(255,255,255,.1);
    font-family:"Font Awesome 5 Free";
    font-size:12px;
    font-weight:900;
    animation:osint-video-loading 1s ease-in-out infinite;
}
.osint-card-body {
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    padding:.6rem .68rem .68rem .78rem;
    background:
        linear-gradient(180deg, #fff 0%, #fbfdff 100%);
}
.osint-card-top {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:.38rem;
    padding-bottom:.34rem;
    border-bottom:1px solid rgba(226,232,240,.78);
}
.osint-provider {
    color:#0f172a;
    font-size:.68rem;
    font-weight:950;
    letter-spacing:0;
    flex:0 1 auto;
    min-width:0;
    max-width:42%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.osint-report-age {
    margin-left:auto;
    color:#64748b;
    font-size:.64rem;
    font-weight:800;
    white-space:nowrap;
}
.osint-badges { display:flex; align-items:center; flex:1 1 auto; flex-wrap:wrap; gap:.24rem; min-height:20px; margin:0; }
.osint-badge,.osint-source { display:inline-flex; align-items:center; border-radius:999px; padding:.2rem .4rem; background:#eef2f7; color:#475569; font-size:.64rem; font-weight:850; line-height:1; border:1px solid rgba(148,163,184,.18); max-width:100%; }
.osint-source { max-width:126px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.osint-badge-alert { color:#fff; background:#dc2626; }
.osint-badge-new { color:#111827; background:#facc15; border-color:rgba(202,138,4,.24); }
.osint-badge-video { color:#334155; background:#f1f5f9; border-color:rgba(100,116,139,.24); }
.osint-text { color:#1f2937; font-size:.8rem; line-height:1.36; font-weight:650; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; margin-bottom:.5rem; }
.osint-signal-row {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:.24rem;
    min-width:0;
    margin:0;
}
.osint-signal {
    display:inline-flex;
    align-items:center;
    padding:.18rem .38rem;
    border-radius:6px;
    color:#64748b;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.9);
    font-size:.61rem;
    font-weight:850;
    line-height:1;
}
.osint-signal.is-hot {
    color:#991b1b;
    background:#fff1f2;
    border-color:rgba(248,113,113,.36);
}
.osint-signal.is-normal {
    color:#334155;
    background:#f8fafc;
    border-color:rgba(100,116,139,.24);
}
.osint-signal.is-geo {
    color:#6d28d9;
    background:#f5f3ff;
    border-color:rgba(167,139,250,.28);
}
.osint-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:.35rem;
    margin-top:auto;
    padding-top:.5rem;
    border-top:1px solid rgba(226,232,240,.68);
}
.osint-open,.osint-watch { align-self:flex-start; border:1px solid #d3d9e5; border-radius:7px; background:#f8fafc; color:#1f2937; font-weight:800; font-size:.75rem; padding:.3rem .5rem; box-shadow:0 4px 10px rgba(15,23,42,.04); }
.osint-open:hover { background:#eef3ff; border-color:#c4d2f8; color:#0d47ad; transform:translateY(-1px); }
.osint-watch { background:#111827; border-color:#111827; color:#fff; }
.osint-watch:hover { background:#334155; border-color:#334155; color:#fff; transform:translateY(-1px); }
.osint-open-strong { background:#111827; border-color:#111827; color:#fff; padding:.55rem .9rem; }
.osint-open-strong:hover { background:#263244; border-color:#263244; color:#fff; }
.osint-more-wrap { display:flex; justify-content:center; margin:1.25rem 0 .25rem; }
.osint-more { display:inline-flex; align-items:center; gap:8px; min-height:42px; border:1px solid rgba(17,24,39,.16); border-radius:999px; padding:.55rem 1rem; color:#fff; background:#111827; font-size:.88rem; font-weight:850; box-shadow:0 14px 28px rgba(15,23,42,.16); cursor:pointer; }
.osint-more:hover { background:#263244; transform:translateY(-1px); }
.osint-more span { display:inline-flex; align-items:center; justify-content:center; min-width:24px; height:24px; border-radius:999px; background:rgba(255,255,255,.16); color:#fff; font-size:.75rem; }
.osint-more.is-hidden { display:none; }
.osint-empty { margin-top:1rem; padding:1rem; border:1px solid #e2e8f0; border-radius:8px; background:#fff; color:#64748b; font-weight:700; text-align:center; }
@keyframes osint-newly-shown {
    0% {
        transform:translateY(-4px);
        background:#f8fafc;
        box-shadow:0 0 0 0 rgba(100,116,139,.26), 0 18px 32px rgba(15,23,42,.16);
    }
    35% {
        box-shadow:0 0 0 6px rgba(100,116,139,.14), 0 14px 26px rgba(15,23,42,.12);
    }
    100% {
        transform:translateY(0);
        background:rgba(255,255,255,.96);
        box-shadow:0 8px 18px rgba(15,23,42,.07);
    }
}
.osint-video-modal .modal-content { border:0; border-radius:10px; overflow:hidden; box-shadow:0 28px 70px rgba(15,23,42,.32); }
.osint-video-modal .modal-header { align-items:center; background:#111827; color:#fff; border:0; }
.osint-video-modal .close { color:#fff; opacity:.9; }
.osint-modal-kicker { color:#7dd3fc; font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.osint-video-modal .modal-title { max-width:980px; color:#fff; font-weight:800; line-height:1.25; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.osint-video-modal .modal-body { padding:0; background:#05070d; }
.osint-video-player { display:block; width:100%; max-height:78vh; background:#05070d; outline:none; }
.osint-video-context {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.75rem;
    padding:.72rem .85rem;
    background:linear-gradient(135deg, #0f172a, #111827);
    border-top:1px solid rgba(255,255,255,.08);
}
.osint-video-meta {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:.38rem;
    min-width:0;
}
.osint-video-meta span {
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    max-width:260px;
    padding:.28rem .48rem;
    border-radius:999px;
    color:#e2e8f0;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    font-size:.72rem;
    font-weight:850;
    line-height:1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.osint-video-context .osint-open-strong {
    flex:0 0 auto;
}
.osint-grid {
    display:flex;
    flex-direction:column;
    gap:.72rem;
    position:relative;
    padding-left:0;
}
.osint-grid::before {
    content:"";
    position:absolute;
    left:102px;
    top:8px;
    bottom:8px;
    width:2px;
    border-radius:999px;
    background:linear-gradient(180deg, rgba(15,23,42,.08), rgba(71,85,105,.5), rgba(250,204,21,.14));
}
.osint-card {
    display:grid;
    grid-template-columns:132px minmax(118px, 174px) minmax(0, 1fr);
    align-items:stretch;
    min-height:148px;
    overflow:hidden;
    border-radius:8px;
    cursor:pointer;
    transition:grid-template-columns .24s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.osint-card.has-video-item:hover,
.osint-card.has-video-item:focus {
    grid-template-columns:132px minmax(248px, 318px) minmax(0, 1fr);
}
.osint-card::before { display:none; }
.osint-card::after {
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:8px;
    border:1px solid transparent;
    pointer-events:none;
    transition:border-color .18s ease, box-shadow .18s ease;
}
.osint-card:hover::after,
.osint-card:focus::after {
    border-color:rgba(100,116,139,.46);
    box-shadow:0 0 0 4px rgba(100,116,139,.13);
}
.osint-card:focus { outline:none; }
.osint-card.is-alert {
    background:linear-gradient(90deg, #fff 0%, #fff 76%, #fff7ed 100%);
    box-shadow:0 10px 24px rgba(220,38,38,.1);
}
.osint-time-rail {
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
    gap:13px;
    padding:18px 16px 0 0;
    position:relative;
    z-index:3;
}
.osint-pulse {
    width:13px;
    height:13px;
    flex:0 0 13px;
    border-radius:50%;
    margin-top:4px;
    background:#334155;
    border:3px solid #fff;
    box-shadow:0 0 0 4px rgba(100,116,139,.18), 0 0 22px rgba(15,23,42,.2);
}
.osint-card.is-alert .osint-pulse {
    background:#dc2626;
    box-shadow:0 0 0 4px rgba(220,38,38,.16), 0 0 22px rgba(220,38,38,.42);
}
.osint-time-rail time {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    line-height:1.1;
}
.osint-time-rail b {
    color:#111827;
    font-size:.82rem;
    font-weight:950;
    white-space:nowrap;
}
.osint-time-rail small {
    color:#64748b;
    font-size:.64rem;
    font-weight:850;
    text-transform:uppercase;
    white-space:nowrap;
}
.osint-media {
    height:100%;
    min-height:156px;
    border-radius:0;
    align-self:stretch;
}
.osint-card-body {
    min-width:0;
    padding:.76rem .88rem .78rem .92rem;
}
.osint-text {
    font-size:.91rem;
    line-height:1.42;
    -webkit-line-clamp:2;
}
.osint-actions {
    justify-content:flex-start;
}
.osint-detail-open {
    margin-left:auto;
    background:#fff;
    border-color:rgba(148,163,184,.34);
    color:#475569;
    padding:.2rem .42rem;
    font-size:.64rem;
    line-height:1;
    box-shadow:none;
}
.osint-detail-open:hover {
    background:#f8fafc;
    border-color:rgba(100,116,139,.42);
    color:#111827;
}
.osint-detail-modal .modal-content {
    border:0;
    border-radius:14px;
    overflow:hidden;
    background:#f8fafc;
    box-shadow:0 32px 90px rgba(2,6,23,.38);
}
.osint-detail-modal .modal-header {
    align-items:center;
    min-height:94px;
    padding:1rem 1.15rem;
    background:
        linear-gradient(135deg, rgba(2,6,23,.98), rgba(30,41,59,.96)),
        #111827;
    color:#fff;
    border:0;
    position:relative;
}
.osint-detail-modal .modal-header::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:1px;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
}
.osint-detail-heading {
    min-width:0;
    padding-right:1rem;
}
.osint-detail-modal .close { color:#fff; opacity:.9; }
.osint-detail-modal .modal-title {
    max-width:980px;
    color:#fff;
    font-size:1.08rem;
    font-weight:900;
    line-height:1.2;
    letter-spacing:0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.osint-detail-modal .modal-body {
    padding:0;
    background:#f8fafc;
}
.osint-detail-layout {
    display:grid;
    grid-template-columns:minmax(290px, 38%) 1fr;
    min-height:420px;
}
.osint-detail-media {
    min-height:420px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        linear-gradient(135deg, #e5e7eb, #cbd5e1),
        #e2e8f0;
    color:#475569;
    font-size:2.2rem;
    overflow:hidden;
    position:relative;
    border-right:1px solid rgba(148,163,184,.34);
}
.osint-detail-media::after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg, transparent 52%, rgba(15,23,42,.22));
}
.osint-detail-media img,
.osint-detail-media video {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.osint-detail-copy {
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:1.15rem 1.25rem 1.25rem;
}
.osint-detail-meta,
.osint-detail-flags {
    display:flex;
    flex-wrap:wrap;
    gap:.35rem;
    margin-bottom:.8rem;
}
.osint-detail-meta span,
.osint-detail-fields span {
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    border:1px solid #e2e8f0;
    border-radius:7px;
    background:#fff;
    color:#475569;
    padding:.34rem .48rem;
    font-size:.72rem;
    font-weight:850;
}
.osint-detail-label {
    margin:0 0 .35rem;
    color:#64748b;
    font-size:.68rem;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.osint-detail-text {
    color:#111827;
    font-size:1.12rem;
    line-height:1.55;
    font-weight:750;
    margin:0 0 1rem;
}
.osint-detail-fields {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:.45rem;
    margin-top:auto;
}
.osint-detail-fields span {
    min-height:54px;
    justify-content:space-between;
    min-width:0;
    align-items:flex-start;
    flex-direction:column;
    gap:.28rem;
}
.osint-detail-fields b {
    color:#111827;
    font-weight:900;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:100%;
}
.osint-detail-modal .modal-footer {
    border:0;
    background:
        linear-gradient(180deg, #fff, #f8fafc);
    justify-content:space-between;
    padding:.9rem 1.15rem;
    border-top:1px solid rgba(203,213,225,.8);
}

/* Visual polish for the live timeline view. */
.osint-shell {
    isolation:isolate;
    background:
        radial-gradient(circle at 12% 8%, rgba(15,23,42,.1), transparent 22%),
        radial-gradient(circle at 92% 18%, rgba(71,85,105,.12), transparent 26%),
        radial-gradient(circle at 50% 74%, rgba(15,23,42,.075), transparent 38%),
        linear-gradient(180deg, #f5f6f7 0%, #eceeef 48%, #e2e4e6 100%);
}
.osint-shell::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(15,23,42,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15,23,42,.055) 1px, transparent 1px),
        linear-gradient(rgba(15,23,42,.085) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15,23,42,.085) 1px, transparent 1px),
        linear-gradient(90deg, transparent 0 17%, rgba(15,23,42,.045) 17.05% 17.16%, transparent 17.22% 82.78%, rgba(15,23,42,.045) 82.84% 82.95%, transparent 83%),
        linear-gradient(180deg, transparent 0 14%, rgba(15,23,42,.04) 14.05% 14.16%, transparent 14.22% 76.78%, rgba(15,23,42,.04) 76.84% 76.95%, transparent 77%),
        radial-gradient(circle at 10% 18%, rgba(15,23,42,.08) 0 2px, transparent 3px),
        radial-gradient(circle at 90% 28%, rgba(71,85,105,.08) 0 2px, transparent 3px),
        radial-gradient(circle at 12% 72%, rgba(71,85,105,.07) 0 2px, transparent 3px),
        radial-gradient(circle at 88% 82%, rgba(15,23,42,.07) 0 2px, transparent 3px),
        linear-gradient(115deg, transparent 0 48%, rgba(15,23,42,.035) 48.1% 48.35%, transparent 48.5%),
        radial-gradient(circle at 50% 50%, rgba(255,255,255,.42), transparent 62%);
    background-size:
        32px 32px,
        32px 32px,
        160px 160px,
        160px 160px,
        100% 100%,
        100% 100%,
        420px 420px,
        460px 460px,
        500px 500px,
        520px 520px,
        220px 220px,
        100% 100%;
    background-position:
        center top,
        center top,
        center top,
        center top,
        center top,
        center top,
        left 20px top 90px,
        right 36px top 180px,
        left 72px top 540px,
        right 80px top 700px,
        center top,
        center center;
    opacity:.82;
    mask-image:linear-gradient(180deg, rgba(0,0,0,.86), rgba(0,0,0,.98) 16%, rgba(0,0,0,.82) 78%, transparent 100%);
}
.osint-shell > .container::before,
.osint-shell > .container::after {
    display:none;
}
.osint-shell > .container::before {
    width:560px;
    height:430px;
    right:-150px;
    top:-26px;
    border-radius:18px;
    border:1px solid rgba(15,23,42,.13);
    background:
        radial-gradient(ellipse at 58% 42%, transparent 0 35%, rgba(15,23,42,.12) 35.3% 35.8%, transparent 36.2% 56%, rgba(100,116,139,.12) 56.4% 56.9%, transparent 57.3%),
        linear-gradient(rgba(15,23,42,.1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15,23,42,.1) 1px, transparent 1px),
        linear-gradient(30deg, transparent 0 47%, rgba(15,23,42,.08) 48%, transparent 50%),
        rgba(255,255,255,.08);
    background-size:100% 100%, 40px 40px, 40px 40px, 180px 180px, 100% 100%;
    opacity:.76;
    transform:perspective(900px) rotateX(58deg) rotateZ(-8deg);
    transform-origin:center top;
    box-shadow:0 28px 70px rgba(15,23,42,.08);
    mask-image:linear-gradient(180deg, rgba(0,0,0,.92), transparent 86%);
}
.osint-hero::before {
    display:none;
}
.osint-hero::after {
    display:none;
}
.osint-grid::after {
    display:none;
}
.osint-shell > .container::after {
    left:-130px;
    right:-130px;
    top:260px;
    height:520px;
    background:
        radial-gradient(circle at 5% 18%, rgba(15,23,42,.16) 0 2px, transparent 3px),
        radial-gradient(circle at 94% 28%, rgba(15,23,42,.15) 0 2px, transparent 3px),
        radial-gradient(circle at 10% 64%, rgba(100,116,139,.16) 0 2px, transparent 3px),
        radial-gradient(circle at 90% 72%, rgba(100,116,139,.15) 0 2px, transparent 3px),
        linear-gradient(90deg, transparent 0 10%, rgba(15,23,42,.045) 10.2% 10.4%, transparent 10.6% 89.4%, rgba(15,23,42,.045) 89.6% 89.8%, transparent 90%),
        linear-gradient(180deg, transparent 0 18%, rgba(15,23,42,.04) 18.2% 18.4%, transparent 18.6% 72.4%, rgba(15,23,42,.04) 72.6% 72.8%, transparent 73%);
    opacity:.7;
    mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,.88) 16%, rgba(0,0,0,.42) 82%, transparent);
}
.osint-hero {
    padding:1.05rem;
    border:1px solid rgba(148,163,184,.28);
    border-radius:10px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,250,252,.76)),
        rgba(255,255,255,.74);
    box-shadow:0 18px 42px rgba(15,23,42,.08);
    backdrop-filter:blur(14px);
}
.osint-title {
    background:linear-gradient(90deg, #020617, #334155 52%, #111827);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.osint-status-panel,
.osint-console {
    border-color:rgba(100,116,139,.34);
    box-shadow:0 18px 40px rgba(15,23,42,.1);
}
.osint-status-main {
    background:
        linear-gradient(145deg, rgba(2,6,23,.98), rgba(51,65,85,.94)),
        #111827;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}
.osint-status-grid span {
    background:linear-gradient(180deg, #fff, #f6f9fc);
}
.osint-console {
    position:sticky;
    top:74px;
}
.osint-filter,
.osint-refresh,
.osint-search {
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.osint-filter.is-active {
    background:linear-gradient(135deg, #020617, #334155);
    box-shadow:0 10px 22px rgba(15,23,42,.18);
}
.osint-feed-head {
    margin:.45rem 0 .75rem;
}
.osint-feed-head span,
.osint-feed-head b {
    background:rgba(15,23,42,.88);
    border-color:rgba(255,255,255,.12);
    color:#e2e8f0;
    box-shadow:0 12px 26px rgba(15,23,42,.14);
}
.osint-feed-head em {
    display:inline-flex;
    align-items:center;
    gap:.25rem;
    margin:0 .15rem;
    color:#cbd5e1;
    font-style:normal;
}
.osint-feed-head em::before {
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#94a3b8;
    box-shadow:0 0 0 4px rgba(148,163,184,.16);
}
.osint-grid {
    gap:.82rem;
}
.osint-day-divider {
    display:flex;
    align-items:center;
    grid-column:1 / -1;
    width:100%;
    gap:.85rem;
    margin:.55rem 0 .05rem;
    color:#475569;
    font-size:.72rem;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.osint-day-divider.has-day-meta { justify-content:flex-start; }
.osint-day-divider::before,
.osint-day-divider::after {
    content:"";
    height:1px;
    flex:1 1 auto;
    background:linear-gradient(90deg, transparent, rgba(100,116,139,.32), transparent);
}
.osint-day-label {
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.42rem .78rem;
    border-radius:8px;
    color:#0f172a;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(148,163,184,.34);
    box-shadow:0 10px 22px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.78);
    backdrop-filter:blur(10px);
}
.osint-day-live,
.osint-day-count {
    display:inline-flex;
    align-items:center;
    gap:.38rem;
    flex:0 0 auto;
    padding:.34rem .6rem;
    border-radius:999px;
    background:rgba(15,23,42,.88);
    border:1px solid rgba(255,255,255,.12);
    color:#e2e8f0;
    box-shadow:0 12px 26px rgba(15,23,42,.14);
    font-size:.68rem;
    font-weight:950;
    letter-spacing:.04em;
    line-height:1;
}
.osint-day-divider.has-day-meta::after {
    order:2;
}
.osint-day-live {
    order:0;
}
.osint-day-label {
    order:1;
}
.osint-day-count {
    order:3;
    margin-left:0;
}
.osint-day-divider.has-day-meta {
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
    align-items:center;
    min-height:48px;
    padding-bottom:16px;
}
.osint-day-divider.has-day-meta::after {
    grid-column:1 / -1;
    grid-row:1;
    align-self:center;
    width:100%;
    z-index:0;
}
.osint-day-divider.has-day-meta .osint-day-live,
.osint-day-divider.has-day-meta .osint-day-label,
.osint-day-divider.has-day-meta .osint-day-count {
    position:relative;
    z-index:1;
}
.osint-day-divider.has-day-meta .osint-day-live {
    grid-column:1;
    justify-self:start;
}
.osint-day-divider.has-day-meta .osint-day-label {
    grid-column:2;
    justify-self:center;
}
.osint-day-divider.has-day-meta .osint-day-count {
    grid-column:3;
    justify-self:end;
}
.osint-day-divider.has-day-meta .osint-day-label::after {
    content:"";
    position:absolute;
    left:50%;
    top:100%;
    width:2px;
    height:20px;
    transform:translateX(-50%);
    border-radius:999px;
    background:linear-gradient(180deg, rgba(15,23,42,.38), rgba(100,116,139,.1));
    box-shadow:0 0 0 1px rgba(255,255,255,.58);
}
.osint-day-live em {
    display:inline-flex;
    align-items:center;
    gap:.25rem;
    color:#cbd5e1;
    font-style:normal;
}
.osint-day-live em::before {
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#22c55e;
    box-shadow:0 0 0 4px rgba(34,197,94,.16);
}
.osint-day-label::before {
    content:"";
    width:18px;
    height:18px;
    border-radius:6px;
    background:
        linear-gradient(135deg, rgba(15,23,42,.12), rgba(100,116,139,.12)),
        #f8fafc;
    border:1px solid rgba(100,116,139,.26);
    box-shadow:inset 0 -5px 0 rgba(15,23,42,.06);
}
.osint-grid::before {
    width:3px;
    background:
        linear-gradient(180deg, rgba(15,23,42,.08), rgba(71,85,105,.68) 18%, rgba(250,204,21,.34) 62%, rgba(15,23,42,.08)),
        #e2e8f0;
    box-shadow:0 0 24px rgba(15,23,42,.12);
}
.osint-card {
    border:1px solid rgba(148,163,184,.36);
    background:
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.94)),
        #fff;
    box-shadow:0 12px 28px rgba(15,23,42,.08);
    isolation:isolate;
}
.osint-card::after {
    background:
        linear-gradient(90deg, rgba(15,23,42,.045), transparent 42%),
        linear-gradient(180deg, rgba(255,255,255,.32), transparent);
    opacity:0;
    transition:opacity .2s ease, border-color .18s ease, box-shadow .18s ease;
}
.osint-card:hover {
    transform:translateY(-3px);
    box-shadow:0 20px 42px rgba(15,23,42,.14);
}
.osint-card:hover::after,
.osint-card:focus::after {
    opacity:1;
}
.osint-card.is-alert {
    border-color:rgba(220,38,38,.52);
    background:
        radial-gradient(circle at 0% 0%, rgba(220,38,38,.24), rgba(249,115,22,.12) 28%, transparent 56%),
        linear-gradient(90deg, rgba(255,255,255,.96), rgba(255,247,237,.96)),
        #fff;
    box-shadow:0 14px 34px rgba(220,38,38,.13);
}
.osint-card.is-alert .osint-time-rail {
    background:
        radial-gradient(circle at 0% 0%, rgba(220,38,38,.22), rgba(249,115,22,.08) 46%, transparent 74%),
        linear-gradient(90deg, rgba(255,241,242,.8), rgba(255,255,255,0));
}
.osint-card.is-alert .osint-card-body {
    background:
        radial-gradient(circle at 0% 0%, rgba(220,38,38,.12), transparent 42%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,251,247,.94));
}
.osint-time-rail {
    background:linear-gradient(90deg, rgba(248,250,252,.68), rgba(255,255,255,0));
}
.osint-pulse {
    position:relative;
    z-index:2;
}
.osint-pulse::after {
    content:"";
    position:absolute;
    inset:-8px;
    border-radius:50%;
    border:1px solid rgba(100,116,139,.28);
    animation:osint-node-ring 2.4s ease-out infinite;
}
.osint-card.is-alert .osint-pulse::after {
    border-color:rgba(220,38,38,.28);
}
.osint-time-rail b {
    font-size:.9rem;
}
.osint-time-rail small {
    color:#526174;
}
.osint-media {
    border-left:1px solid rgba(226,232,240,.9);
    border-right:1px solid rgba(226,232,240,.9);
    background:
        linear-gradient(135deg, #e5e7eb, #cbd5e1);
}
.osint-media::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.26) 48%, transparent 58%);
    transform:translateX(-130%);
    transition:transform .5s ease;
    pointer-events:none;
}
.osint-card:hover .osint-media::before {
    transform:translateX(130%);
}
.osint-card-body {
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94));
}
.osint-provider {
    color:#111827;
}
.osint-card-top {
    border-bottom-color:rgba(203,213,225,.9);
}
.osint-text {
    color:#111827;
    font-weight:700;
}
.osint-badge {
    box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
.osint-badge-alert {
    background:linear-gradient(135deg, #dc2626, #f97316);
    box-shadow:0 8px 16px rgba(220,38,38,.18);
}
.osint-badge-new {
    background:linear-gradient(135deg, #fde047, #facc15);
}
.osint-badge-unseen {
    color:#111827;
    background:linear-gradient(135deg, #e5e7eb, #cbd5e1);
    border-color:rgba(100,116,139,.32);
    box-shadow:0 8px 16px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.55);
}
.osint-badge-opened {
    color:#475569;
    background:#f1f5f9;
    border-color:rgba(148,163,184,.32);
}
.osint-card.is-unseen {
    border-color:rgba(100,116,139,.78);
    background:
        radial-gradient(circle at 0% 0%, rgba(15,23,42,.12), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,252,.98)),
        #fff;
    box-shadow:0 18px 42px rgba(15,23,42,.16), 0 0 0 1px rgba(100,116,139,.24);
}
.osint-card.is-unseen::after {
    opacity:1;
    border-color:rgba(100,116,139,.38);
    background:
        linear-gradient(90deg, rgba(15,23,42,.09), transparent 46%),
        linear-gradient(180deg, rgba(255,255,255,.34), transparent);
}
.osint-card.is-unseen .osint-pulse {
    background:#334155;
    box-shadow:0 0 0 5px rgba(100,116,139,.2), 0 0 28px rgba(15,23,42,.28);
}
.osint-card.is-unseen .osint-time-rail b {
    color:#111827;
}
.osint-card.is-unseen .osint-time-rail time {
    border-color:rgba(100,116,139,.38);
    background:#f8fafc;
}
.osint-card.is-unseen .osint-badge-unseen {
    color:#111827;
    background:linear-gradient(135deg, #e5e7eb, #cbd5e1);
    border-color:rgba(100,116,139,.42);
    box-shadow:0 10px 18px rgba(15,23,42,.1), inset 0 1px 0 rgba(255,255,255,.6);
}
.osint-card.is-opened:not(.is-unseen) {
    opacity:.9;
}
.osint-card.is-opened:not(.is-unseen) .osint-text {
    color:#475569;
}
.osint-signal {
    background:rgba(255,255,255,.8);
}
.osint-actions {
    border-top-color:rgba(203,213,225,.8);
}
.osint-open-strong {
    background:linear-gradient(135deg, #020617, #334155);
    border-color:rgba(17,24,39,.9);
    box-shadow:0 10px 20px rgba(15,23,42,.16);
}
.osint-open-strong:hover {
    background:linear-gradient(135deg, #111827, #475569);
}
.osint-watch {
    background:linear-gradient(135deg, #020617, #334155);
    border-color:#111827;
    box-shadow:0 10px 20px rgba(15,23,42,.16);
}
.osint-detail-modal .modal-header {
    background:
        linear-gradient(135deg, rgba(2,6,23,.98), rgba(51,65,85,.94)),
        #111827;
}
.osint-detail-media {
    background:
        linear-gradient(135deg, #e5e7eb, #cbd5e1);
}

/* Professional timeline finishing pass. */
.osint-grid {
    max-width:1180px;
    margin:0 auto;
}
.osint-day-divider::before {
    background:
        linear-gradient(90deg, transparent, rgba(15,23,42,.2), rgba(100,116,139,.22), transparent);
}
.osint-day-divider::after {
    background:
        linear-gradient(90deg, transparent, rgba(100,116,139,.22), rgba(15,23,42,.2), transparent);
}
.osint-day-label {
    position:relative;
}
.osint-card {
    border-radius:10px;
    max-height:230px;
    overflow:hidden;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98)),
        #fff;
    box-shadow:
        0 1px 0 rgba(255,255,255,.9) inset,
        0 14px 32px rgba(15,23,42,.09);
}
.osint-card::before {
    display:block;
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    z-index:5;
    background:linear-gradient(180deg, #020617, #64748b);
    opacity:.9;
    border-radius:10px 0 0 10px;
}
.osint-card.is-alert::before {
    background:linear-gradient(180deg, #dc2626, #f97316);
}
.osint-card.is-unseen::before {
    background:linear-gradient(180deg, #111827, #94a3b8);
}
.osint-card:hover {
    border-color:rgba(51,65,85,.22);
    box-shadow:
        0 1px 0 rgba(255,255,255,.9) inset,
        0 24px 54px rgba(15,23,42,.15);
}
.osint-card:focus {
    box-shadow:
        0 0 0 4px rgba(100,116,139,.16),
        0 24px 54px rgba(15,23,42,.15);
}
.osint-time-rail {
    padding:16px 16px 16px 18px;
    align-items:center;
    justify-content:flex-end;
}
.osint-time-rail time {
    min-width:82px;
    padding:.52rem .6rem;
    border:1px solid rgba(203,213,225,.9);
    border-radius:8px;
    background:rgba(255,255,255,.82);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.osint-card:hover .osint-time-rail time {
    border-color:rgba(100,116,139,.36);
    background:#fff;
}
.osint-pulse {
    margin-top:0;
    box-shadow:
        0 0 0 4px rgba(100,116,139,.16),
        0 0 22px rgba(15,23,42,.18),
        0 0 0 1px rgba(15,23,42,.05) inset;
}
.osint-card:hover .osint-pulse::after,
.osint-card:focus .osint-pulse::after {
    animation-duration:1.2s;
    border-color:rgba(100,116,139,.42);
}
.osint-card.is-alert:hover .osint-pulse::after,
.osint-card.is-alert:focus .osint-pulse::after {
    border-color:rgba(220,38,38,.44);
}
.osint-media {
    margin:0;
    border-left:1px solid rgba(203,213,225,.72);
    border-right:1px solid rgba(203,213,225,.72);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
}
.osint-media img,
.osint-hover-video {
    filter:saturate(1.04) contrast(1.02);
}
.osint-card-body {
    padding:.82rem .95rem .86rem 1rem;
    position:relative;
    min-height:0;
    overflow:hidden;
}
.osint-card-top {
    display:grid;
    grid-template-columns:minmax(0, auto) minmax(0, 1fr) auto;
    align-items:center;
    gap:.42rem;
    margin-bottom:.46rem;
    padding-bottom:.42rem;
}
.osint-provider {
    display:inline-flex;
    align-items:center;
    gap:.36rem;
    max-width:180px;
    padding:.24rem .46rem;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid rgba(100,116,139,.24);
    color:#111827;
}
.osint-provider::before {
    content:"";
    width:6px;
    height:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:#64748b;
}
.osint-report-age {
    margin-left:0;
    padding:.2rem .38rem;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid rgba(226,232,240,.9);
}
.osint-badges {
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    min-width:0;
    overflow:hidden;
    min-height:0;
    gap:.2rem;
    margin:0;
    width:auto;
}
.osint-badge {
    flex:0 0 auto;
    padding:.18rem .34rem;
    border-radius:999px;
    font-size:.58rem;
    letter-spacing:.02em;
    text-transform:uppercase;
}
.osint-text {
    margin-bottom:.62rem;
    letter-spacing:0;
}
.osint-card-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.65rem;
    margin:auto -1.15rem -1rem -1.18rem;
    padding:.52rem .86rem .52rem 1rem;
    min-height:48px;
    background:
        linear-gradient(180deg, rgba(248,250,252,.94), rgba(241,245,249,.98)),
        #f8fafc;
    border-top:1px solid rgba(203,213,225,.72);
}
.osint-signal-row {
    flex:1 1 auto;
    padding-right:0;
    overflow:hidden;
}
.osint-signal {
    border-radius:7px;
    padding:.22rem .4rem;
    max-width:160px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.osint-actions {
    display:none;
}
.osint-open,
.osint-watch {
    border-radius:8px;
    min-height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.osint-card-body > .osint-detail-open {
    position:static;
    flex:0 0 auto;
    min-height:24px;
    padding:.18rem .4rem;
    border-radius:999px;
    color:#64748b;
    background:#fff;
    border-color:rgba(148,163,184,.3);
    box-shadow:none;
    font-size:.62rem;
    font-weight:800;
    line-height:1;
}
.osint-card-body > .osint-detail-open:hover {
    color:#111827;
    background:#f8fafc;
    border-color:rgba(100,116,139,.34);
    box-shadow:none;
}
.osint-day-divider {
    margin:.7rem 0 .1rem;
}
.osint-day-label {
    border-radius:8px;
    letter-spacing:.06em;
}
/* Start the timeline spine below the day divider, not in empty space. */
.osint-grid::before {
    top:58px;
}
.osint-day-divider {
    position:relative;
    justify-content:flex-start;
    padding-left:0;
    gap:.65rem;
}
.osint-day-divider::before {
    display:none;
}
.osint-day-divider::after {
    content:"";
    height:1px;
    flex:1 1 auto;
    background:linear-gradient(90deg, rgba(15,23,42,.22), rgba(100,116,139,.16), transparent);
}
.osint-day-label {
    flex:0 0 auto;
}
.osint-day-divider.has-day-meta {
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
    align-items:center;
    width:100%;
    min-height:48px;
    padding-bottom:16px;
}
.osint-day-divider.has-day-meta::after {
    display:block;
    grid-column:1 / -1;
    grid-row:1;
    align-self:center;
    width:100%;
    z-index:0;
}
.osint-day-divider.has-day-meta .osint-day-live {
    grid-column:1;
    justify-self:start;
}
.osint-day-divider.has-day-meta .osint-day-label {
    grid-column:2;
    justify-self:center;
}
.osint-day-divider.has-day-meta .osint-day-count {
    grid-column:3;
    justify-self:end;
}
.osint-day-divider.has-day-meta .osint-day-label::after {
    content:"";
    position:absolute;
    left:50%;
    top:100%;
    width:2px;
    height:28px;
    transform:translateX(-50%);
    border-radius:999px;
    background:linear-gradient(180deg, rgba(15,23,42,.42), rgba(100,116,139,.2), transparent);
    box-shadow:0 0 0 1px rgba(255,255,255,.64);
}
.osint-day-divider.has-day-meta .osint-day-live,
.osint-day-divider.has-day-meta .osint-day-label,
.osint-day-divider.has-day-meta .osint-day-count {
    position:relative;
    z-index:1;
}
/* Final full-width background pass: clean black/gray grid, no radar layers. */
.osint-shell {
    background:
        radial-gradient(circle at 18% 10%, rgba(15,23,42,.12), transparent 26%),
        radial-gradient(circle at 82% 18%, rgba(51,65,85,.1), transparent 28%),
        linear-gradient(180deg, #eef0f2 0%, #e4e7ea 48%, #d9dde1 100%) !important;
}
.osint-shell::before {
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    pointer-events:none !important;
    background-image:
        linear-gradient(rgba(2,6,23,.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(2,6,23,.07) 1px, transparent 1px),
        linear-gradient(rgba(2,6,23,.11) 1px, transparent 1px),
        linear-gradient(90deg, rgba(2,6,23,.11) 1px, transparent 1px),
        linear-gradient(120deg, transparent 0 47%, rgba(2,6,23,.035) 47.1% 47.35%, transparent 47.5%),
        radial-gradient(circle at 9% 18%, rgba(2,6,23,.11) 0 2px, transparent 3px),
        radial-gradient(circle at 91% 34%, rgba(2,6,23,.1) 0 2px, transparent 3px),
        radial-gradient(circle at 14% 76%, rgba(51,65,85,.1) 0 2px, transparent 3px),
        radial-gradient(circle at 86% 82%, rgba(51,65,85,.1) 0 2px, transparent 3px);
    background-size:
        30px 30px,
        30px 30px,
        150px 150px,
        150px 150px,
        240px 240px,
        420px 420px,
        460px 460px,
        500px 500px,
        520px 520px;
    background-position:
        center top,
        center top,
        center top,
        center top,
        center top,
        left 18px top 90px,
        right 28px top 210px,
        left 48px top 600px,
        right 62px top 760px;
    opacity:.9 !important;
    mask-image:linear-gradient(180deg, rgba(0,0,0,.88), rgba(0,0,0,.96) 18%, rgba(0,0,0,.78) 82%, transparent 100%) !important;
}
.osint-shell > .container::before,
.osint-shell > .container::after,
.osint-hero::before,
.osint-hero::after,
.osint-grid::after {
    display:none !important;
}
@keyframes osint-live-pulse {
    0%, 100% { transform:scale(1); opacity:1; }
    50% { transform:scale(.72); opacity:.72; }
}
@keyframes osint-node-ring {
    0% { transform:scale(.7); opacity:.72; }
    80%, 100% { transform:scale(1.9); opacity:0; }
}
@keyframes osint-video-loading {
    0%, 100% { opacity:.82; transform:translate(-50%, -50%) scale(.96); }
    50% { opacity:1; transform:translate(-50%, -50%) scale(1.06); }
}
@keyframes osint-map-pulse {
    0%, 100% {
        transform:scale(1);
        filter:drop-shadow(0 0 0 rgba(100,116,139,0));
    }
    50% {
        transform:scale(1.32);
        filter:drop-shadow(0 0 10px rgba(100,116,139,.42));
    }
}
@keyframes osint-radar-sweep {
    from { rotate:0deg; }
    to { rotate:360deg; }
}
@keyframes osint-radar-blips {
    0%, 100% { opacity:.42; transform:translateY(-50%) scale(.9); }
    45% { opacity:.92; transform:translateY(-50%) scale(1.12); }
}
@keyframes osint-media-cycle {
    0% { opacity:.28; transform:scale(1.025); }
    100% { opacity:1; transform:scale(1); }
}
@media (min-width:992px) {
    .osint-shell {
        padding-top:1.65rem !important;
    }
    .osint-grid {
        max-width:1240px;
        gap:1rem;
    }
    .osint-grid::before {
        left:142px;
        width:4px;
        background:
            linear-gradient(180deg, transparent, rgba(71,85,105,.46) 8%, rgba(15,23,42,.58) 46%, rgba(202,138,4,.34) 78%, transparent),
            #e2e8f0;
        box-shadow:0 0 0 1px rgba(255,255,255,.72), 0 0 24px rgba(15,23,42,.12);
    }
    .osint-card {
        grid-template-columns:156px minmax(210px, 250px) minmax(0, 1fr);
        height:176px;
        min-height:176px;
        max-height:176px;
        border-radius:12px;
    }
    .osint-card.has-video-item:hover,
    .osint-card.has-video-item:focus {
        grid-template-columns:156px minmax(330px, 400px) minmax(0, 1fr);
    }
    .osint-card::before {
        border-radius:12px 0 0 12px;
    }
    .osint-time-rail {
        padding:18px 22px 18px 18px;
        gap:18px;
        position:relative;
        background:linear-gradient(90deg, rgba(248,250,252,.86), rgba(255,255,255,.18));
    }
    .osint-time-rail::after {
        content:"";
        position:absolute;
        right:9px;
        top:50%;
        width:24px;
        height:2px;
        background:linear-gradient(90deg, rgba(71,85,105,.56), rgba(15,23,42,.08));
        transform:translateY(-50%);
        border-radius:999px;
    }
    .osint-time-rail time {
        min-width:96px;
        padding:.62rem .7rem;
        position:relative;
        z-index:3;
        border-color:rgba(148,163,184,.32);
        background:
            linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92)),
            #fff;
        box-shadow:0 10px 24px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.9);
    }
    .osint-time-rail b {
        font-size:1rem;
    }
    .osint-time-rail small {
        font-size:.68rem;
    }
    .osint-pulse {
        width:18px;
        height:18px;
        flex-basis:18px;
        margin-right:-4px;
        border-width:4px;
        z-index:4;
    }
    .osint-pulse::before {
        content:"";
        position:absolute;
        inset:-12px;
        border-radius:50%;
        background:radial-gradient(circle, rgba(100,116,139,.16), transparent 64%);
        z-index:-1;
    }
    .osint-media {
        height:176px;
        min-height:176px;
        max-height:176px;
    }
    .osint-card-body {
        padding:1rem 1.15rem 1rem 1.18rem;
    }
    .osint-card-top {
        margin-bottom:.55rem;
        padding-bottom:.5rem;
    }
    .osint-provider {
        font-size:.74rem;
        max-width:210px;
    }
    .osint-report-age {
        font-size:.68rem;
    }
    .osint-badges {
        margin-bottom:0;
    }
    .osint-badge {
        font-size:.6rem;
    }
    .osint-text {
        font-size:.98rem;
        line-height:1.48;
        -webkit-line-clamp:2;
        margin-bottom:.62rem;
    }
    .osint-signal {
        font-size:.66rem;
    }
    .osint-signal-row {
        padding-right:0;
    }
    .osint-open,
    .osint-watch {
        font-size:.78rem;
        padding:.38rem .62rem;
    }
    .osint-card-body > .osint-detail-open {
        min-height:24px;
        padding:.18rem .42rem;
    }
    .osint-day-divider {
        max-width:1240px;
        margin:1rem auto .2rem;
        padding-left:0;
    }
}
@media (max-width:991.98px) {
    .osint-console { grid-template-columns:1fr; }
    .osint-refresh { width:100%; }
    .osint-title { font-size:2.25rem; }
    .osint-grid::before { left:82px; }
    .osint-day-divider {
        padding-left:0;
    }
    .osint-card { grid-template-columns:108px 142px minmax(0, 1fr); max-height:190px; }
    .osint-card.has-video-item:hover,
    .osint-card.has-video-item:focus { grid-template-columns:108px minmax(210px, 280px) minmax(0, 1fr); }
    .osint-time-rail { padding-right:13px; }
    .osint-detail-layout { grid-template-columns:1fr; }
    .osint-detail-media {
        min-height:240px;
        max-height:320px;
        border-right:0;
        border-bottom:1px solid rgba(148,163,184,.28);
    }
    .osint-detail-copy {
        padding:1rem;
    }
}
@media (max-width:575.98px) {
    .osint-feed-head { display:none; }
    .osint-day-live,
    .osint-day-count { display:none; }
    .osint-grid { gap:.9rem; }
    .osint-grid::before { left:15px; }
    .osint-day-divider {
        padding-left:0;
    }
    .osint-card {
        grid-template-columns:1fr;
        margin-left:30px;
        max-height:none;
        min-height:0;
    }
    .osint-card.has-video-item:hover,
    .osint-card.has-video-item:focus { grid-template-columns:1fr; }
    .osint-time-rail {
        justify-content:flex-start;
        padding:.7rem .8rem .35rem;
        background:#f8fafc;
        border-bottom:1px solid rgba(226,232,240,.72);
    }
    .osint-time-rail time { align-items:flex-start; }
    .osint-pulse {
        position:absolute;
        left:-21px;
        top:18px;
    }
    .osint-media {
        height:172px;
        min-height:172px;
        max-height:172px;
    }
    .osint-card-top {
        grid-template-columns:minmax(0, 1fr) auto;
        gap:.35rem;
    }
    .osint-card-top .osint-badges {
        grid-column:1 / -1;
        flex-wrap:wrap;
    }
    .osint-card-footer {
        margin:.65rem -1.15rem -1rem -1.18rem;
    }
    .osint-card-body > .osint-detail-open {
        display:none;
    }
    .osint-signal-row {
        padding-right:0;
    }
    .osint-detail-fields { grid-template-columns:1fr; }
    .osint-detail-modal .modal-dialog {
        margin:.65rem;
    }
    .osint-detail-modal .modal-header {
        min-height:auto;
        padding:.9rem 1rem;
    }
    .osint-detail-modal .modal-title {
        font-size:.98rem;
        -webkit-line-clamp:3;
    }
    .osint-detail-text {
        font-size:1rem;
        line-height:1.48;
    }
    .osint-detail-modal .modal-footer {
        justify-content:flex-start;
        gap:.5rem;
    }
    .osint-detail-modal .modal-footer .btn {
        width:100%;
    }
    .osint-video-context {
        align-items:flex-start;
        flex-direction:column;
    }
    .osint-video-context .osint-open-strong {
        width:100%;
        text-align:center;
    }
    .osint-status-panel { grid-template-columns:1fr; width:100%; }
    .osint-status-main { text-align:left; }
    .osint-title { font-size:2.15rem; }
}

/* Timeline attachment pass: tie headers and cards to the same spine. */
.osint-grid {
    --osint-spine-x:102px;
    gap:0 !important;
}
.osint-grid::before {
    left:var(--osint-spine-x) !important;
    top:58px !important;
    z-index:0 !important;
}
.osint-card {
    margin-top:.72rem;
    position:relative;
    z-index:2;
}
.osint-day-divider + .osint-card {
    margin-top:0 !important;
}
.osint-card + .osint-card {
    margin-top:.72rem;
}
.osint-card + .osint-day-divider {
    margin-top:.35rem;
}
.osint-day-divider:not(.has-day-meta) {
    display:block;
    height:56px;
    min-height:56px;
    margin:.2rem 0 0;
    padding:0;
    position:relative;
}
.osint-day-divider:not(.has-day-meta)::before {
    content:"";
    position:absolute;
    left:var(--osint-spine-x);
    top:-.35rem;
    bottom:-1rem;
    display:block;
    width:4px;
    transform:translateX(-50%);
    border-radius:999px;
    background:
        linear-gradient(180deg, rgba(71,85,105,.28), rgba(15,23,42,.46), rgba(71,85,105,.28)),
        #e2e8f0;
    box-shadow:0 0 0 1px rgba(255,255,255,.72), 0 0 18px rgba(15,23,42,.08);
}
.osint-day-divider:not(.has-day-meta)::after {
    position:absolute;
    left:0;
    right:0;
    top:50%;
    display:block;
    width:auto;
    transform:translateY(-50%);
}
.osint-day-divider:not(.has-day-meta) .osint-day-label {
    position:absolute;
    left:50%;
    top:50%;
    z-index:2;
    transform:translate(-50%, -50%);
}
.osint-day-divider.has-day-meta {
    display:block;
    height:58px;
    min-height:58px;
    margin-bottom:0;
    padding:0;
}
.osint-day-divider.has-day-meta::after {
    position:absolute;
    left:0;
    right:0;
    top:50%;
    display:block;
    width:auto;
    transform:translateY(-50%);
}
.osint-day-divider.has-day-meta .osint-day-live,
.osint-day-divider.has-day-meta .osint-day-label,
.osint-day-divider.has-day-meta .osint-day-count {
    position:absolute;
    top:50%;
    z-index:2;
    transform:translateY(-50%);
}
.osint-day-divider.has-day-meta .osint-day-live {
    left:0;
}
.osint-day-divider.has-day-meta .osint-day-label {
    left:50%;
    transform:translate(-50%, -50%);
}
.osint-day-divider.has-day-meta .osint-day-count {
    right:0;
}
.osint-day-divider.has-day-meta .osint-day-label::after {
    height:30px;
    z-index:-1;
}
@media (min-width:992px) {
    .osint-grid { --osint-spine-x:142px; }
    .osint-card,
    .osint-card + .osint-card { margin-top:1rem; }
    .osint-day-divider + .osint-card { margin-top:0 !important; }
    .osint-time-rail {
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:.68rem;
        padding:16px 22px 16px 14px !important;
        overflow:visible;
    }
    .osint-pulse {
        order:0;
        width:18px;
        height:18px;
        flex:0 0 18px;
        margin:0 !important;
        border-width:4px;
        background:
            radial-gradient(circle at 35% 35%, rgba(255,255,255,.98) 0 2px, transparent 3px),
            #334155;
        box-shadow:
            0 0 0 5px rgba(100,116,139,.15),
            0 0 0 10px rgba(148,163,184,.08),
            0 0 0 1px rgba(15,23,42,.08) inset,
            0 16px 30px rgba(15,23,42,.2);
    }
    .osint-pulse::before {
        content:"";
        position:absolute;
        inset:-15px;
        border-radius:50%;
        background:radial-gradient(circle, rgba(100,116,139,.2), rgba(100,116,139,.08) 38%, transparent 66%);
        z-index:-1;
    }
    .osint-pulse::after {
        inset:-10px;
        border-color:rgba(100,116,139,.32);
    }
    .osint-card.is-alert .osint-pulse {
        background:
            radial-gradient(circle at 35% 35%, rgba(255,255,255,.98) 0 2px, transparent 3px),
            #dc2626;
        box-shadow:
            0 0 0 5px rgba(220,38,38,.16),
            0 0 0 10px rgba(248,113,113,.08),
            0 0 0 1px rgba(127,29,29,.12) inset,
            0 14px 30px rgba(220,38,38,.28);
    }
    .osint-card.is-alert .osint-pulse::before {
        background:radial-gradient(circle, rgba(220,38,38,.2), rgba(220,38,38,.08) 38%, transparent 66%);
    }
    .osint-time-rail time {
        order:1;
        align-items:center;
        text-align:center;
        position:relative;
        min-width:98px;
        padding:.66rem .72rem .62rem;
        border-color:rgba(148,163,184,.42);
        background:
            linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92)),
            #fff;
        box-shadow:
            0 12px 24px rgba(15,23,42,.09),
            inset 0 1px 0 rgba(255,255,255,.92);
        z-index:2;
    }
    .osint-time-rail time::before {
        content:"";
        position:absolute;
        inset:4px 5px auto;
        height:1px;
        border-radius:999px;
        background:linear-gradient(90deg, transparent, rgba(148,163,184,.45), transparent);
    }
    .osint-time-rail time::after {
        content:"";
        position:absolute;
        left:100%;
        top:50%;
        width:30px;
        height:2px;
        transform:translateY(-50%);
        border-radius:999px;
        background:linear-gradient(90deg, rgba(71,85,105,.46), rgba(71,85,105,.14), transparent);
        box-shadow:0 0 0 1px rgba(255,255,255,.72);
        pointer-events:none;
        z-index:-1;
    }
    .osint-time-rail b {
        font-size:1rem;
        letter-spacing:.01em;
    }
    .osint-time-rail small {
        margin-top:.18rem;
        color:#64748b;
        font-size:.62rem;
        letter-spacing:.04em;
    }
    .osint-time-rail::after {
        left:50% !important;
        right:auto !important;
        top:calc(50% - 8px) !important;
        width:2px !important;
        height:18px !important;
        transform:translate(-50%, -50%) !important;
        background:linear-gradient(180deg, rgba(71,85,105,.36), rgba(15,23,42,.08)) !important;
    }
}
@media (max-width:991.98px) {
    .osint-grid { --osint-spine-x:82px; }
}
@media (max-width:575.98px) {
    .osint-grid { --osint-spine-x:15px; }
    .osint-card {
        overflow:visible;
    }
    .osint-time-rail {
        position:relative;
        overflow:visible;
    }
    .osint-pulse {
        z-index:6;
    }
    .osint-day-divider.has-day-meta {
        height:48px;
        min-height:48px;
    }
}
