/* ═════════════════════════════════════════════════════════════════
   AEROFIELD — VĀRTĀ PATRA (NEWS) v3.0
   Viewport-locked · 2:1 Split · Survey-style Tom Freebird sidebar
   Everything fits between navbar (48px) and footer (34px)
   ════════════════════════════════════════════════════════════════ */

/* ── RESET & BASE ──────────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{
    height:100vh;
    overflow:hidden;
    font-family:'Inter',sans-serif;
    background:var(--bg-primary,#0a0a0f);
    color:#e8e4dc;
    position:relative;
    -webkit-font-smoothing:antialiased;
}

/* ── CANVAS BG ──────────────────────────────────────── */
#newsBg{
    position:fixed;inset:0;
    width:100%;height:100%;
    z-index:0;
    pointer-events:none;
}

/* ── NAVBAR (fixed top — 48px) ──────────────────────── */
.nw-navbar{
    position:fixed;top:0;left:0;right:0;
    height:48px;
    display:flex;align-items:center;justify-content:space-between;
    padding:0 clamp(1rem, 3vw, 2.5rem);
    background:rgba(8,8,14,0.88);
    backdrop-filter:blur(20px) saturate(1.3);
    -webkit-backdrop-filter:blur(20px) saturate(1.3);
    border-bottom:1px solid rgba(255,255,255,0.06);
    box-shadow:0 2px 20px rgba(0,0,0,0.4);
    z-index:100;
}
.nw-nav-left{display:flex;align-items:center;gap:14px}
.nw-logo{
    font-family:'Cinzel',serif;
    font-weight:700;font-size:0.9rem;
    color:#d4a04a;letter-spacing:.06em;
    text-shadow:0 0 10px rgba(212,160,74,0.15);
}
.nw-nav-title{
    font-family:'Noto Sans Devanagari','Inter',sans-serif;
    font-size:.78rem;font-weight:500;
    color:rgba(212,160,74,0.45);
    letter-spacing:.1em;
}
.nw-nav-right{display:flex;align-items:center;gap:10px}
.nw-nav-btn{
    padding:0.3rem 0.9rem;
    border:1px solid rgba(255,255,255,0.10);
    border-bottom:2px solid rgba(255,255,255,0.14);
    border-radius:8px;
    color:rgba(255,255,255,0.55);
    text-decoration:none;
    font-size:0.68rem;
    font-family:'Rajdhani',sans-serif;
    font-weight:600;
    letter-spacing:0.08em;
    text-transform:uppercase;
    transition:all 0.35s cubic-bezier(.25,.46,.45,.94);
    background:linear-gradient(180deg, rgba(255,255,255,0.04) 0%, transparent 100%);
    box-shadow:0 2px 8px rgba(0,0,0,0.3);
    position:relative;overflow:hidden;
    backdrop-filter:blur(4px);
}
.nw-nav-btn::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%, rgba(255,255,255,0.05) 0%, transparent 65%);pointer-events:none;transition:opacity .3s ease}
.nw-nav-btn:hover{
    color:#d4a04a;
    border-color:rgba(212,160,74,0.4);
    background:linear-gradient(180deg, rgba(212,160,74,0.1) 0%, rgba(212,160,74,0.03) 100%);
    box-shadow:0 4px 16px rgba(0,0,0,0.35), 0 0 16px rgba(212,160,74,0.1), 0 0 4px rgba(212,160,74,0.2);
    transform:translateY(-2px);
    text-shadow:0 0 10px rgba(212,160,74,0.25);
}

/* ═══════ 3-COL SPLIT CONTAINER — viewport locked ═══════ */
.nw-split{
    position:relative;z-index:2;
    display:flex;
    height:calc(100vh - 48px - 34px);
    margin-top:48px;
    overflow:hidden;
}

/* ═══════ LEFT — PREMIUM VIDYASTHANA TILE (academy-style split) ═══════ */
.nw-vtile{
    flex:0 0 240px;
    display:flex;flex-direction:column;
    overflow:visible;
    background:rgba(16,16,24,0.6);
    border-right:1px solid rgba(212,160,74,0.08);
    border-radius:0;
    position:relative;
}
/* Breathing border glow */
.nw-vtile::after{
    content:'';
    position:absolute;
    inset:-1px;
    pointer-events:none;
    box-shadow:
        0 0 20px rgba(212,160,74,0.04),
        inset 0 0 30px rgba(212,160,74,0.02);
    animation:nw-vtile-breathe 4s ease-in-out infinite;
}
@keyframes nw-vtile-breathe{
    0%,100%{box-shadow:0 0 20px rgba(212,160,74,0.04),inset 0 0 30px rgba(212,160,74,0.02)}
    50%{box-shadow:0 0 40px rgba(212,160,74,0.08),inset 0 0 40px rgba(212,160,74,0.04)}
}

/* ── Visual Inner — animated rings ── */
.nw-vtile-inner{
    position:relative;
    height:110px;
    flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;
    background:
        radial-gradient(ellipse 80% 80% at 50% 50%,
            rgba(212,160,74,0.04) 0%,
            transparent 70%);
}

/* ── Agni Fire Visual ── */
.nw-agni-inner{
    height:140px;
    background:radial-gradient(ellipse 80% 80% at 50% 60%,rgba(255,69,0,0.06) 0%,transparent 70%);
}
.agni-core{
    width:30%;aspect-ratio:1;border-radius:50%;
    background:radial-gradient(circle,rgba(255,140,0,0.6) 0%,rgba(255,69,0,0.3) 40%,transparent 70%);
    filter:drop-shadow(0 0 20px rgba(255,69,0,0.5)) drop-shadow(0 0 40px rgba(255,140,0,0.2));
    animation:agniPulse 2s ease-in-out infinite;
    position:absolute;
}
.agni-flame{
    width:20%;height:35%;
    background:linear-gradient(0deg,rgba(255,69,0,0.3) 0%,rgba(255,200,0,0.1) 60%,transparent 100%);
    border-radius:50% 50% 50% 50% / 60% 60% 40% 40%;
    position:absolute;bottom:45%;
    filter:blur(2px);
    animation:agniFlicker 1.5s ease-in-out infinite;
    transform-origin:bottom center;
}
.agni-flame--2{
    width:15%;height:28%;
    left:55%;animation-delay:-0.7s;animation-duration:1.8s;
}
.agni-spark{
    width:3px;height:3px;border-radius:50%;
    background:#ffaa00;position:absolute;
    filter:drop-shadow(0 0 4px #ff6b35);
    animation:agniSpark 2.5s ease-out infinite;
}
.agni-spark--2{left:60%;animation-delay:-0.8s}
.agni-spark--3{left:35%;animation-delay:-1.6s;animation-duration:3s}
@keyframes agniPulse{
    0%,100%{transform:scale(1);filter:drop-shadow(0 0 20px rgba(255,69,0,0.5)) drop-shadow(0 0 40px rgba(255,140,0,0.2))}
    50%{transform:scale(1.15);filter:drop-shadow(0 0 30px rgba(255,69,0,0.7)) drop-shadow(0 0 60px rgba(255,140,0,0.3))}
}
@keyframes agniFlicker{
    0%,100%{transform:scaleY(1) scaleX(1) rotate(-2deg);opacity:.7}
    30%{transform:scaleY(1.2) scaleX(0.9) rotate(1deg);opacity:1}
    60%{transform:scaleY(0.9) scaleX(1.1) rotate(-1deg);opacity:.6}
}
@keyframes agniSpark{
    0%{transform:translate(0,0) scale(1);opacity:1}
    100%{transform:translate(15px,-50px) scale(0);opacity:0}
}
.nw-agni-info{border-top:1px solid rgba(255,69,0,0.12)}
.nw-agni-sanskrit{color:#ff6b35 !important}
.nw-agni-layer{color:#e05520 !important}
.nw-vtile-ring{
    position:absolute;
    width:56px;height:56px;
    border-radius:50%;
    border:1px solid rgba(212,160,74,0.1);
    animation:nw-ring-spin 12s linear infinite;
}
.nw-vtile-ring--2{
    width:80px;height:80px;
    border-color:rgba(212,160,74,0.06);
    animation-duration:18s;
    animation-direction:reverse;
}
.nw-vtile-ring--3{
    width:105px;height:105px;
    border-color:rgba(212,160,74,0.03);
    animation-duration:25s;
}
@keyframes nw-ring-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.nw-vtile-om{
    position:relative;z-index:1;
    font-family:'Noto Sans Devanagari',serif;
    font-size:20px;font-weight:500;
    color:rgba(212,160,74,0.5);
    text-shadow:0 0 14px rgba(212,160,74,0.25);
    animation:nw-om-pulse 3s ease-in-out infinite;
}
@keyframes nw-om-pulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}
.nw-vtile-glow{
    position:absolute;
    width:30px;height:30px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(212,160,74,0.15) 0%,transparent 70%);
    animation:nw-glow-pulse 3s ease-in-out infinite;
}
@keyframes nw-glow-pulse{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.6)}}

/* ── Info strip ── */
.nw-vtile-info{
    padding:10px 14px;
    border-top:1px solid rgba(212,160,74,0.06);
    border-bottom:1px solid rgba(212,160,74,0.06);
    flex-shrink:0;
    text-align:center;
}
.nw-vtile-sanskrit{
    font-family:'Noto Sans Devanagari',serif;
    font-size:.78rem;font-weight:500;
    color:rgba(212,160,74,0.7);
    letter-spacing:.04em;
    line-height:1.3;
}
.nw-vtile-name{
    font-family:'Cinzel',serif;
    font-size:.6rem;font-weight:600;
    letter-spacing:.15em;
    text-transform:uppercase;
    color:rgba(232,228,220,0.45);
    margin-top:2px;
}
.nw-vtile-layer{
    font-family:'Rajdhani',sans-serif;
    font-size:.46rem;font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:rgba(212,160,74,0.35);
    margin-top:2px;
}

/* ── Node ID Badge ── */
.nw-node-id{
    display:flex;align-items:center;justify-content:center;
    gap:6px;
    padding:8px 12px;
    border-top:1px solid rgba(212,160,74,0.06);
    flex-shrink:0;
}
.nw-node-dot{
    width:5px;height:5px;border-radius:50%;
    background:#2dd4a8;
    box-shadow:0 0 6px rgba(45,212,168,0.4);
    animation:nw-node-blink 2s ease-in-out infinite;
}
@keyframes nw-node-blink{
    0%,100%{opacity:1;box-shadow:0 0 6px rgba(45,212,168,0.4)}
    50%{opacity:.5;box-shadow:0 0 2px rgba(45,212,168,0.2)}
}
.nw-node-label{
    font-family:'Rajdhani',sans-serif;
    font-size:.42rem;font-weight:600;
    letter-spacing:.12em;text-transform:uppercase;
    color:rgba(232,228,220,0.3);
}
.nw-node-value{
    font-family:'JetBrains Mono',monospace;
    font-size:.52rem;font-weight:700;
    color:rgba(45,212,168,0.75);
    letter-spacing:.06em;
}

/* ═══════ AEROFIELD PREAMBLE / CONSTITUTION ═══════ */
.af-preamble{
    flex:1;min-height:0;
    overflow-y:auto;overflow-x:hidden;
    padding:12px 14px 16px;
    scrollbar-width:thin;
    scrollbar-color:rgba(48,63,159,0.15) transparent;
}
.af-preamble::-webkit-scrollbar{width:3px}
.af-preamble::-webkit-scrollbar-track{background:transparent}
.af-preamble::-webkit-scrollbar-thumb{background:rgba(48,63,159,0.15);border-radius:2px}

/* Bodhic Seal */
.af-seal{
    position:relative;
    width:90px;height:90px;
    margin:0 auto 10px;
}
.af-seal-orbit{
    position:absolute;
    inset:0;border-radius:50%;
    border:1px dashed rgba(48,63,159,0.2);
}
.af-seal-orbit--1{inset:12px}
.af-seal-orbit--2{inset:4px}
.af-seal-star{
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    font-size:28px;
    color:rgba(212,175,55,0.8);
    text-shadow:0 0 12px rgba(212,175,55,0.3);
    filter:drop-shadow(0 0 6px rgba(212,175,55,0.2));
}
.af-seal-dot{
    position:absolute;
    width:6px;height:6px;border-radius:50%;
}
.af-seal-dot--species{
    background:#2E7D32;
    top:8px;left:50%;transform:translateX(-50%);
    box-shadow:0 0 6px rgba(46,125,50,0.5);
}
.af-seal-dot--atmo{
    background:#00A8E8;
    bottom:16px;left:8px;
    box-shadow:0 0 6px rgba(0,168,232,0.5);
}
.af-seal-dot--wisdom{
    background:#D4AF37;
    bottom:16px;right:8px;
    box-shadow:0 0 6px rgba(212,175,55,0.5);
}

.af-preamble-title{
    font-family:'Cinzel',serif;
    font-size:.62rem;font-weight:700;
    color:rgba(48,63,159,0.85);
    text-align:center;
    letter-spacing:.08em;
    margin:0 0 2px;
    line-height:1.3;
}
.af-preamble-sub{
    font-family:'Rajdhani',sans-serif;
    font-size:.48rem;font-weight:500;
    color:rgba(212,175,55,0.6);
    text-align:center;
    letter-spacing:.06em;
    font-style:italic;
    margin:0 0 10px;
}

/* Mandate Box */
.af-mandate{
    background:rgba(0,168,232,0.04);
    border:1px solid rgba(48,63,159,0.2);
    border-radius:4px;
    padding:8px 10px;
    margin-bottom:10px;
}
.af-mandate-head{
    font-family:'Cinzel',serif;
    font-size:.52rem;font-weight:700;
    color:rgba(48,63,159,0.8);
    margin-bottom:4px;
    letter-spacing:.04em;
}
.af-mandate-body{
    font-family:'Inter',sans-serif;
    font-size:.5rem;font-weight:400;
    color:rgba(232,228,220,0.55);
    line-height:1.55;
    margin:0;
}

/* Section Head */
.af-section-head{
    font-family:'Cinzel',serif;
    font-size:.5rem;font-weight:600;
    color:rgba(46,125,50,0.8);
    letter-spacing:.06em;
    margin:0 0 6px;
    padding-bottom:3px;
    border-bottom:1px solid rgba(46,125,50,0.12);
}

/* Articles List */
.af-articles{
    list-style:none;margin:0 0 10px;padding:0;
    display:flex;flex-direction:column;gap:6px;
}
.af-articles li{
    display:flex;gap:6px;align-items:flex-start;
}
.af-diamond{
    flex-shrink:0;
    color:#D4AF37;
    font-size:.6rem;
    line-height:1.6;
}
.af-articles li div{
    font-family:'Inter',sans-serif;
    font-size:.48rem;
    color:rgba(232,228,220,0.5);
    line-height:1.55;
}
.af-articles li div strong{
    color:rgba(232,228,220,0.7);
    font-weight:600;
}
.af-articles li div em{
    color:rgba(0,168,232,0.7);
    font-style:normal;
    font-family:'JetBrains Mono',monospace;
    font-size:.44rem;
}

/* Decree Box */
.af-decree{
    border:2px solid rgba(212,175,55,0.35);
    padding:8px 10px;
    text-align:center;
    margin-bottom:8px;
}
.af-decree-label{
    font-family:'Cinzel',serif;
    font-size:.44rem;font-weight:700;
    color:rgba(48,63,159,0.7);
    letter-spacing:.08em;
    margin-bottom:4px;
}
.af-decree-quote{
    font-family:'Inter',sans-serif;
    font-size:.46rem;
    color:rgba(232,228,220,0.5);
    line-height:1.6;
    font-style:italic;
    margin:0;
}

/* Document ID */
.af-doc-id{
    text-align:center;
    font-family:'JetBrains Mono',monospace;
    font-size:.36rem;
    color:rgba(232,228,220,0.2);
    letter-spacing:.08em;
    margin-top:6px;
    padding-top:6px;
    border-top:1px solid rgba(212,175,55,0.1);
}

/* ── Category list ── */
.nw-vtile-cats{
    flex:1;min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding:4px 0;
    scrollbar-width:thin;
    scrollbar-color:rgba(212,160,74,0.1) transparent;
}
.nw-vtile-cats::-webkit-scrollbar{width:2px}
.nw-vtile-cats::-webkit-scrollbar-track{background:transparent}
.nw-vtile-cats::-webkit-scrollbar-thumb{background:rgba(212,160,74,0.1);border-radius:2px}

.nw-vcat{
    display:flex;align-items:center;gap:8px;
    width:100%;
    padding:6px 12px;
    background:transparent;
    border:none;
    cursor:pointer;
    transition:all .25s ease;
    text-align:left;
}
.nw-vcat-dot{
    width:6px;height:6px;flex-shrink:0;
    border-radius:50%;
    background:rgba(212,160,74,0.15);
    transition:all .25s ease;
}
.nw-vcat-text{
    font-family:'Noto Sans Devanagari','Rajdhani',sans-serif;
    font-size:.58rem;font-weight:500;
    color:rgba(232,228,220,0.35);
    line-height:1.3;
    letter-spacing:.02em;
    transition:color .25s ease;
}
.nw-vcat-text small{
    font-family:'Inter',sans-serif;
    font-size:.42rem;font-weight:400;
    color:rgba(232,228,220,0.18);
    letter-spacing:.04em;
    margin-left:4px;
}
.nw-vcat:hover{
    background:rgba(212,160,74,0.04);
}
.nw-vcat:hover .nw-vcat-dot{
    background:rgba(212,160,74,0.4);
    box-shadow:0 0 4px rgba(212,160,74,0.2);
}
.nw-vcat:hover .nw-vcat-text{color:rgba(232,228,220,0.6)}
.nw-vcat--active{
    background:rgba(212,160,74,0.06);
}
.nw-vcat--active .nw-vcat-dot{
    background:#d4a04a;
    box-shadow:0 0 6px rgba(212,160,74,0.35);
}
.nw-vcat--active .nw-vcat-text{
    color:rgba(212,160,74,0.85);
    font-weight:600;
}
.nw-vcat--active .nw-vcat-text small{color:rgba(212,160,74,0.45)}

/* ═══════ NEWS TILES (viewport-locked) ═══════ */
.nw-main{
    flex:1 1 0;min-width:0;
    display:flex;flex-direction:column;
    overflow:hidden;
    padding:10px clamp(12px, 2vw, 24px) 10px;
    position:relative;z-index:1;
    background:rgba(6,6,14,0.35);
    border-left:1px solid rgba(255,255,255,0.03);
    border-right:1px solid rgba(255,255,255,0.03);
}
/* Fixed header elements — never scroll */
.nw-header,.nw-date-bar,.nw-annn-bar,.nw-countdown,.nw-cat-strip,.nw-all-chip-wrap,.nw-section-bar{
    flex-shrink:0;
}
/* Only the grid scrolls */
.nw-grid{
    flex:1;min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding-bottom:6px;
}
/* Custom scrollbar for grid */
.nw-grid::-webkit-scrollbar{width:4px}
.nw-grid::-webkit-scrollbar-track{background:transparent}
.nw-grid::-webkit-scrollbar-thumb{background:rgba(212,160,74,0.15);border-radius:2px}
.nw-grid::-webkit-scrollbar-thumb:hover{background:rgba(212,160,74,0.3)}

/* ═══════════════════════════════════════════════════════
   NEURAL FLOW VISUALIZATION (replaces card tiles)
   Tom Freebird Premium Quality — Glassmorphic + Breathing
   ═══════════════════════════════════════════════════════ */
.nw-neural-flow{
    display:flex;flex-direction:column;
    align-items:center;
    gap:0;
    padding:16px 8px 24px;
    min-height:100%;
    position:relative;
}
/* Ambient glow orb behind neural flow (mirrors Tom's .nw-tom-glow) */
.nw-neural-flow::after{
    content:'';position:absolute;
    top:30%;left:50%;
    width:200%;height:200%;
    transform:translate(-50%,-50%);
    background:radial-gradient(ellipse at center,
        rgba(45,212,168,0.03) 0%,
        rgba(139,92,246,0.015) 30%,
        transparent 70%);
    pointer-events:none;
    animation:nfAmbientOrb 6s ease-in-out infinite alternate;
    z-index:-1;
}
@keyframes nfAmbientOrb{
    0%{opacity:0.5;transform:translate(-50%,-50%) scale(0.9)}
    100%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}
}

/* ── Flow Header ── */
.nf-head{
    text-align:center;
    margin-bottom:12px;
}
.nf-head-icon{
    font-size:1.2rem;
    color:rgba(212,160,74,0.6);
    display:block;margin-bottom:4px;
    animation:nfIconPulse 4s ease-in-out infinite;
    filter:drop-shadow(0 0 6px rgba(212,160,74,0.2));
}
@keyframes nfIconPulse{
    0%,100%{opacity:0.5;text-shadow:none;filter:drop-shadow(0 0 4px rgba(212,160,74,0.1))}
    50%{opacity:1;text-shadow:0 0 12px rgba(212,160,74,0.4);filter:drop-shadow(0 0 10px rgba(212,160,74,0.35))}
}
.nf-head-title{
    font-family:'Cinzel',serif;
    font-size:.85rem;font-weight:600;
    color:rgba(232,228,220,0.85);
    letter-spacing:.06em;
    margin:0;
    text-shadow:0 0 20px rgba(212,160,74,0.12),0 0 40px rgba(212,160,74,0.04);
}
.nf-head-sub{
    font-family:'Rajdhani',sans-serif;
    font-size:.55rem;font-weight:400;
    color:rgba(232,228,220,0.3);
    letter-spacing:.1em;
    text-transform:uppercase;
    margin:2px 0 0;
    text-shadow:0 0 10px rgba(232,228,220,0.05);
}

/* ── Layer Labels ── */
.nf-layer{
    width:100%;max-width:420px;
    display:flex;flex-direction:column;
    align-items:center;
}
.nf-layer--wide{
    max-width:520px;
}
.nf-label{
    font-family:'JetBrains Mono',monospace;
    font-size:.42rem;font-weight:600;
    color:rgba(232,228,220,0.25);
    letter-spacing:.15em;
    text-transform:uppercase;
    margin-bottom:6px;
    text-align:center;
}

/* ── Pipeline Nodes (Tom-quality glassmorphic) ── */
.nf-node{
    width:100%;
    position:relative;
    border-radius:14px;
    padding:12px 16px;
    background:rgba(10,10,18,0.65);
    border:1px solid rgba(255,255,255,0.06);
    backdrop-filter:blur(12px) saturate(1.2);
    -webkit-backdrop-filter:blur(12px) saturate(1.2);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.3),
        inset 0 1px 0 rgba(255,255,255,0.03),
        0 0 20px rgba(0,0,0,0.15);
    transition:all .4s cubic-bezier(.25,.46,.45,.94);
}
/* Breathing border glow — mirrors Tom's sbBreathe */
.nf-node::before{
    content:'';position:absolute;inset:-1px;
    border-radius:15px;
    background:linear-gradient(135deg,
        rgba(45,212,168,0.12),
        rgba(139,92,246,0.08),
        rgba(212,160,74,0.06),
        transparent);
    z-index:-1;
    opacity:0.4;
    animation:nfNodeBreathe 4s ease-in-out infinite;
    pointer-events:none;
}
@keyframes nfNodeBreathe{
    0%,100%{opacity:0.3}
    50%{opacity:0.7}
}
.nf-node:hover{
    background:rgba(10,10,18,0.75);
    border-color:rgba(255,255,255,0.12);
    transform:translateY(-2px);
    box-shadow:
        0 4px 16px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(255,255,255,0.05),
        0 0 30px rgba(45,212,168,0.06);
}
.nf-node:hover::before{opacity:0.85}
.nf-node-glow{
    position:absolute;inset:-1px;
    border-radius:15px;
    pointer-events:none;
    opacity:0.5;
    transition:opacity .4s cubic-bezier(.25,.46,.45,.94);
    mix-blend-mode:screen;
}
.nf-node:hover .nf-node-glow{opacity:0.9}

.nf-node-body{
    display:flex;align-items:center;gap:12px;
}
.nf-node-body svg{flex-shrink:0;opacity:0.8}
.nf-node-text{
    display:flex;flex-direction:column;gap:2px;
    min-width:0;
}
.nf-node-name{
    font-family:'Cinzel',serif;
    font-size:.7rem;font-weight:600;
    letter-spacing:.04em;
}
.nf-node-val{
    font-family:'Rajdhani',sans-serif;
    font-size:.52rem;font-weight:400;
    opacity:0.5;
    letter-spacing:.03em;
}

/* Node color variants */
.nf-node--teal{
    border-color:rgba(45,212,168,0.15);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.3),
        inset 0 1px 0 rgba(45,212,168,0.04),
        0 0 20px rgba(45,212,168,0.04);
}
.nf-node--teal .nf-node-glow{
    background:linear-gradient(135deg,rgba(45,212,168,0.10),rgba(45,212,168,0.02) 60%,transparent);
}
.nf-node--teal::before{
    background:linear-gradient(135deg,rgba(45,212,168,0.15),rgba(45,212,168,0.04),transparent);
}
.nf-node--teal svg{color:rgba(45,212,168,0.85);filter:drop-shadow(0 0 4px rgba(45,212,168,0.2))}
.nf-node--teal .nf-node-name{color:rgba(45,212,168,0.9);text-shadow:0 0 12px rgba(45,212,168,0.1)}
.nf-node--teal:hover{
    border-color:rgba(45,212,168,0.4);
    box-shadow:
        0 4px 16px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(45,212,168,0.06),
        0 0 30px rgba(45,212,168,0.1),
        0 0 60px rgba(45,212,168,0.03);
}

.nf-node--violet{
    border-color:rgba(139,92,246,0.15);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.3),
        inset 0 1px 0 rgba(139,92,246,0.04),
        0 0 20px rgba(139,92,246,0.04);
}
.nf-node--violet .nf-node-glow{
    background:linear-gradient(135deg,rgba(139,92,246,0.10),rgba(139,92,246,0.02) 60%,transparent);
}
.nf-node--violet::before{
    background:linear-gradient(135deg,rgba(139,92,246,0.15),rgba(139,92,246,0.04),transparent);
}
.nf-node--violet svg{color:rgba(139,92,246,0.85);filter:drop-shadow(0 0 4px rgba(139,92,246,0.2))}
.nf-node--violet .nf-node-name{color:rgba(139,92,246,0.9);text-shadow:0 0 12px rgba(139,92,246,0.1)}
.nf-node--violet:hover{
    border-color:rgba(139,92,246,0.4);
    box-shadow:
        0 4px 16px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(139,92,246,0.06),
        0 0 30px rgba(139,92,246,0.1),
        0 0 60px rgba(139,92,246,0.03);
}

.nf-node--crimson{
    border-color:rgba(220,60,60,0.15);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.3),
        inset 0 1px 0 rgba(220,60,60,0.04),
        0 0 20px rgba(220,60,60,0.04);
}
.nf-node--crimson .nf-node-glow{
    background:linear-gradient(135deg,rgba(220,60,60,0.10),rgba(220,60,60,0.02) 60%,transparent);
}
.nf-node--crimson::before{
    background:linear-gradient(135deg,rgba(220,60,60,0.15),rgba(220,60,60,0.04),transparent);
}
.nf-node--crimson svg{color:rgba(220,60,60,0.85);filter:drop-shadow(0 0 4px rgba(220,60,60,0.2))}
.nf-node--crimson .nf-node-name{color:rgba(220,60,60,0.9);text-shadow:0 0 12px rgba(220,60,60,0.1)}
.nf-node--crimson:hover{
    border-color:rgba(220,60,60,0.4);
    box-shadow:
        0 4px 16px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(220,60,60,0.06),
        0 0 30px rgba(220,60,60,0.1),
        0 0 60px rgba(220,60,60,0.03);
}

.nf-node--amber{
    border-color:rgba(212,160,74,0.15);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.3),
        inset 0 1px 0 rgba(212,160,74,0.04),
        0 0 20px rgba(212,160,74,0.04);
}
.nf-node--amber .nf-node-glow{
    background:linear-gradient(135deg,rgba(212,160,74,0.10),rgba(212,160,74,0.02) 60%,transparent);
}
.nf-node--amber::before{
    background:linear-gradient(135deg,rgba(212,160,74,0.15),rgba(212,160,74,0.04),transparent);
}
.nf-node--amber svg{color:rgba(212,160,74,0.85);filter:drop-shadow(0 0 4px rgba(212,160,74,0.2))}
.nf-node--amber .nf-node-name{color:rgba(212,160,74,0.9);text-shadow:0 0 12px rgba(212,160,74,0.1)}
.nf-node--amber:hover{
    border-color:rgba(212,160,74,0.4);
    box-shadow:
        0 4px 16px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(212,160,74,0.06),
        0 0 30px rgba(212,160,74,0.1),
        0 0 60px rgba(212,160,74,0.03);
}

/* ── Tom Avatar in node (Premium ring) ── */
.nf-avatar{
    width:32px;height:32px;
    border-radius:50%;
    object-fit:cover;
    border:1.5px solid rgba(220,60,60,0.35);
    flex-shrink:0;
    box-shadow:
        0 0 10px rgba(220,60,60,0.2),
        0 0 20px rgba(220,60,60,0.08),
        inset 0 0 6px rgba(220,60,60,0.1);
    animation:nfAvatarPulse 3s ease-in-out infinite;
}
@keyframes nfAvatarPulse{
    0%,100%{box-shadow:0 0 10px rgba(220,60,60,0.15),0 0 20px rgba(220,60,60,0.06)}
    50%{box-shadow:0 0 14px rgba(220,60,60,0.25),0 0 28px rgba(220,60,60,0.1)}
}

/* ── Connection Wires (Premium) ── */
.nf-conn{
    display:flex;flex-direction:column;
    align-items:center;
    height:28px;
    position:relative;
    width:100%;max-width:420px;
}
.nf-wire{
    width:2px;height:100%;
    background:linear-gradient(180deg,
        rgba(45,212,168,0.25),
        rgba(45,212,168,0.08));
    position:relative;
    overflow:hidden;
    border-radius:1px;
    box-shadow:0 0 6px rgba(45,212,168,0.08);
}
.nf-pulse{
    position:absolute;
    width:100%;height:10px;
    background:linear-gradient(180deg,
        transparent,
        rgba(45,212,168,0.9),
        rgba(45,212,168,0.4),
        transparent);
    border-radius:1px;
    animation:nfPulseDown 2s ease-in-out infinite;
    filter:blur(0.5px);
    box-shadow:0 0 8px rgba(45,212,168,0.3);
}
@keyframes nfPulseDown{
    0%{top:-10px;opacity:0}
    15%{opacity:1}
    85%{opacity:1}
    100%{top:calc(100% + 10px);opacity:0}
}

/* Fan-out / fan-in lines */
.nf-conn--fan{
    height:22px;
}
.nf-fan-lines{
    display:flex;justify-content:center;gap:0;
    width:80%;max-width:300px;
    height:8px;position:relative;
}
.nf-fan-l,.nf-fan-r{
    flex:1;height:100%;
    border-bottom:1px solid rgba(45,212,168,0.12);
}
.nf-fan-l{
    border-right:1px solid rgba(45,212,168,0.12);
    border-bottom-right-radius:0;
    border-bottom-left-radius:6px;
    box-shadow:0 2px 6px rgba(45,212,168,0.03);
}
.nf-fan-r{
    border-left:none;
    border-bottom-left-radius:0;
    border-bottom-right-radius:6px;
    box-shadow:0 2px 6px rgba(45,212,168,0.03);
}

/* ── 12 Vidyasthana Category Grid (Premium) ── */
.nf-cat-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:6px;
    width:100%;
}
.nf-cat-node{
    display:flex;flex-direction:column;
    align-items:center;
    gap:2px;
    padding:8px 4px;
    border-radius:10px;
    background:rgba(10,10,18,0.55);
    border:1px solid rgba(45,212,168,0.08);
    backdrop-filter:blur(8px) saturate(1.15);
    -webkit-backdrop-filter:blur(8px) saturate(1.15);
    box-shadow:
        0 2px 6px rgba(0,0,0,0.25),
        inset 0 1px 0 rgba(255,255,255,0.02);
    transition:all .35s cubic-bezier(.25,.46,.45,.94);
    position:relative;
    overflow:hidden;
    cursor:pointer;
}
/* Breathing shimmer overlay */
.nf-cat-node::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(ellipse at 50% 0%,
        rgba(45,212,168,0.08),transparent 70%);
    opacity:0;transition:opacity .35s;
    pointer-events:none;
}
/* Animated border accent */
.nf-cat-node::after{
    content:'';position:absolute;inset:-1px;
    border-radius:11px;
    background:linear-gradient(135deg,
        rgba(45,212,168,0.1),
        transparent 40%,
        rgba(212,160,74,0.06));
    opacity:0;
    transition:opacity .35s;
    pointer-events:none;
    z-index:-1;
}
.nf-cat-node:hover::before{opacity:1}
.nf-cat-node:hover::after{opacity:0.7}
.nf-cat-node:hover{
    border-color:rgba(45,212,168,0.3);
    transform:translateY(-2px) scale(1.02);
    box-shadow:
        0 6px 20px rgba(0,0,0,0.35),
        inset 0 1px 0 rgba(255,255,255,0.04),
        0 0 20px rgba(45,212,168,0.06);
}
.nf-cat-node:active{
    transform:translateY(0) scale(0.98);
    transition-duration:.1s;
}

.nf-cat--active{
    border-color:rgba(45,212,168,0.15);
}
.nf-cat--dim{
    opacity:0.35;
    border-color:rgba(255,255,255,0.03);
}
.nf-cat--dim:hover{opacity:0.7}

.nf-cat-icon{
    font-size:.75rem;
    line-height:1;
}
.nf-cat-sanskrit{
    font-family:'Noto Sans Devanagari','Inter',sans-serif;
    font-size:.48rem;font-weight:500;
    color:rgba(212,160,74,0.7);
    line-height:1.2;
    text-align:center;
}
.nf-cat-name{
    font-family:'Rajdhani',sans-serif;
    font-size:.42rem;font-weight:500;
    color:rgba(232,228,220,0.4);
    text-align:center;
    letter-spacing:.02em;
    line-height:1.2;
}
.nf-cat-count{
    font-family:'JetBrains Mono',monospace;
    font-size:.5rem;font-weight:700;
    color:rgba(45,212,168,0.85);
    background:rgba(45,212,168,0.08);
    border:1px solid rgba(45,212,168,0.15);
    padding:1px 6px;border-radius:5px;
    min-width:18px;text-align:center;
    text-shadow:0 0 6px rgba(45,212,168,0.1);
    box-shadow:0 0 8px rgba(45,212,168,0.04);
}
.nf-cat--dim .nf-cat-count{
    color:rgba(232,228,220,0.3);
    background:rgba(255,255,255,0.02);
    border-color:rgba(255,255,255,0.06);
}

/* ── Stats Bar (Glassmorphic) ── */
.nf-stats{
    display:flex;
    justify-content:center;
    gap:20px;
    margin-top:12px;
    padding:10px 16px;
    background:rgba(10,10,18,0.6);
    border:1px solid rgba(212,160,74,0.08);
    border-radius:12px;
    width:100%;max-width:420px;
    backdrop-filter:blur(10px) saturate(1.15);
    -webkit-backdrop-filter:blur(10px) saturate(1.15);
    box-shadow:
        0 2px 8px rgba(0,0,0,0.25),
        inset 0 1px 0 rgba(255,255,255,0.02),
        0 0 16px rgba(212,160,74,0.02);
    position:relative;
    overflow:hidden;
}
/* Subtle breathing accent */
.nf-stats::before{
    content:'';position:absolute;inset:-1px;
    border-radius:13px;
    background:linear-gradient(90deg,
        rgba(212,160,74,0.06),
        rgba(45,212,168,0.04),
        rgba(139,92,246,0.04),
        rgba(212,160,74,0.06));
    opacity:0.5;
    animation:nfStatsBreathe 5s ease-in-out infinite;
    pointer-events:none;
    z-index:-1;
}
@keyframes nfStatsBreathe{
    0%,100%{opacity:0.3}
    50%{opacity:0.7}
}
.nf-stat{
    display:flex;flex-direction:column;
    align-items:center;gap:1px;
}
.nf-stat-val{
    font-family:'JetBrains Mono',monospace;
    font-size:.65rem;font-weight:700;
    color:rgba(212,160,74,0.9);
    text-shadow:0 0 10px rgba(212,160,74,0.15),0 0 20px rgba(212,160,74,0.05);
}
.nf-stat-lbl{
    font-family:'Rajdhani',sans-serif;
    font-size:.42rem;font-weight:500;
    color:rgba(232,228,220,0.35);
    letter-spacing:.08em;
    text-transform:uppercase;
    text-shadow:0 0 8px rgba(232,228,220,0.03);
}

/* ── Architecture Link (Premium) ── */
.nf-arch-link{
    display:inline-flex;align-items:center;gap:5px;
    margin-top:10px;
    font-family:'Rajdhani',sans-serif;
    font-size:.52rem;font-weight:500;
    color:rgba(139,92,246,0.65);
    text-decoration:none;
    letter-spacing:.04em;
    transition:all .35s cubic-bezier(.25,.46,.45,.94);
    padding:5px 12px;
    border-radius:8px;
    border:1px solid rgba(139,92,246,0.1);
    background:rgba(139,92,246,0.02);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
    position:relative;
    overflow:hidden;
}
.nf-arch-link::before{
    content:'';position:absolute;
    top:0;left:-100%;
    width:100%;height:100%;
    background:linear-gradient(90deg,
        transparent,
        rgba(139,92,246,0.06),
        transparent);
    transition:left .5s ease;
    pointer-events:none;
}
.nf-arch-link:hover::before{
    left:100%;
}
.nf-arch-link:hover{
    color:rgba(139,92,246,0.95);
    border-color:rgba(139,92,246,0.3);
    background:rgba(139,92,246,0.06);
    box-shadow:
        0 0 16px rgba(139,92,246,0.1),
        0 0 40px rgba(139,92,246,0.03);
    text-shadow:0 0 8px rgba(139,92,246,0.15);
}
.nf-arch-link svg{opacity:0.7;filter:drop-shadow(0 0 3px rgba(139,92,246,0.15))}



/* ── HEADER (Premium quality) ───────────────────────── */
.nw-header{
    text-align:center;
    padding:6px 0 4px;
    position:relative;
}
.nw-yantra{
    width:24px;height:24px;
    margin:0 auto 4px;
    border:1.5px solid rgba(212,160,74,0.3);
    border-radius:50%;
    position:relative;
    animation:yantraGlow 6s ease-in-out infinite alternate;
    box-shadow:0 0 6px rgba(212,160,74,0.1);
}
.nw-yantra::before{
    content:'';position:absolute;inset:5px;
    border:1px solid rgba(139,92,246,0.25);
    border-radius:50%;
    animation:yantraGlow 6s ease-in-out infinite alternate-reverse;
}
.nw-yantra::after{
    content:'';position:absolute;inset:-3px;
    border-radius:50%;
    border:1px solid rgba(212,160,74,0.08);
    animation:yantraSpin 12s linear infinite;
    border-top-color:rgba(212,160,74,0.25);
}
@keyframes yantraSpin{
    from{transform:rotate(0deg)}
    to{transform:rotate(360deg)}
}
@keyframes yantraGlow{
    0%{box-shadow:0 0 8px rgba(212,160,74,0.15)}
    100%{box-shadow:0 0 20px rgba(212,160,74,0.35),0 0 6px rgba(139,92,246,0.15)}
}
.nw-title{
    font-family:'Cinzel',serif;
    font-size:clamp(1rem, 1.8vw, 1.35rem);font-weight:700;
    color:#d4a04a;
    letter-spacing:.08em;
    text-shadow:0 0 30px rgba(212,160,74,0.18),0 0 60px rgba(212,160,74,0.06);
}
.nw-subtitle{
    font-family:'Rajdhani',sans-serif;
    font-size:.72rem;font-weight:400;
    color:rgba(232,228,220,0.42);
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-top:4px;
    text-shadow:0 0 12px rgba(232,228,220,0.04);
}

/* ── DATE BAR ───────────────────────────────────────── */
.nw-date-bar{
    display:flex;align-items:center;justify-content:center;
    gap:14px;
    padding:4px 0;
}
.nw-date-arrow{
    background:rgba(212,160,74,0.08);
    border:1px solid rgba(212,160,74,0.18);
    color:#d4a04a;
    width:30px;height:30px;
    border-radius:50%;
    cursor:pointer;
    font-size:.65rem;
    display:flex;align-items:center;justify-content:center;
    transition:all .35s cubic-bezier(.25,.46,.45,.94);
    backdrop-filter:blur(4px);
    position:relative;overflow:hidden;
}
.nw-date-arrow::before{
    content:'';position:absolute;inset:0;
    border-radius:50%;
    background:radial-gradient(circle at 50% 30%, rgba(212,160,74,0.08), transparent 70%);
    opacity:0;transition:opacity .3s ease;
    pointer-events:none;
}
.nw-date-arrow:hover:not(:disabled)::before{opacity:1}
.nw-date-arrow:hover:not(:disabled){
    background:rgba(212,160,74,0.15);
    border-color:rgba(212,160,74,0.4);
    box-shadow:0 0 16px rgba(212,160,74,0.2), 0 0 4px rgba(212,160,74,0.3);
    transform:translateY(-1px) scale(1.08);
    text-shadow:0 0 6px rgba(212,160,74,0.4);
}
.nw-date-arrow:disabled{opacity:.2;cursor:not-allowed}
.nw-date-center{display:flex;align-items:center;gap:10px}
.nw-date-label{
    font-family:'JetBrains Mono',monospace;
    font-size:0.95rem;font-weight:500;
    color:#e8e4dc;letter-spacing:.1em;
}
.nw-mode-badge{
    font-family:'JetBrains Mono',monospace;
    font-size:.58rem;font-weight:500;
    padding:2px 8px;border-radius:12px;
    letter-spacing:.08em;
}
.nw-mode--live{
    color:#2dd4a8;
    background:rgba(45,212,168,0.1);
    border:1px solid rgba(45,212,168,0.25);
    animation:livePulse 2s ease-in-out infinite;
}
.nw-mode--review{
    color:#d4a04a;
    background:rgba(212,160,74,0.1);
    border:1px solid rgba(212,160,74,0.25);
}
@keyframes livePulse{
    0%,100%{box-shadow:0 0 4px rgba(45,212,168,0.15)}
    50%{box-shadow:0 0 12px rgba(45,212,168,0.3)}
}

/* ── ANNN STATUS BAR (Glassmorphic) ──────────────────── */
.nw-annn-bar{
    display:flex;align-items:center;justify-content:center;
    gap:8px;
    padding:4px 16px;
    margin:2px auto 4px;
    max-width:600px;
    background:rgba(10,10,18,0.5);
    border:1px solid rgba(139,92,246,0.12);
    border-radius:8px;
    backdrop-filter:blur(8px) saturate(1.1);
    -webkit-backdrop-filter:blur(8px) saturate(1.1);
    box-shadow:
        0 2px 6px rgba(0,0,0,0.2),
        inset 0 1px 0 rgba(139,92,246,0.03);
    position:relative;
    overflow:hidden;
}
.nw-annn-bar::before{
    content:'';position:absolute;inset:0;
    background:linear-gradient(90deg,
        transparent,
        rgba(139,92,246,0.04),
        transparent);
    animation:annnBarShimmer 4s ease-in-out infinite;
    pointer-events:none;
}
@keyframes annnBarShimmer{
    0%,100%{opacity:0.3}
    50%{opacity:0.8}
}
.nw-annn-icon{
    color:#8b5cf6;font-size:.9rem;
    filter:drop-shadow(0 0 4px rgba(139,92,246,0.2));
}
.nw-annn-status{
    font-family:'Rajdhani',sans-serif;
    font-size:.65rem;font-weight:400;
    color:rgba(232,228,220,0.5);
    letter-spacing:.06em;
    text-shadow:0 0 8px rgba(232,228,220,0.04);
}

/* ── COUNTDOWN ───────────────────────────────────────── */
.nw-countdown{
    display:flex;align-items:stretch;justify-content:center;
    gap:0;
    padding:0;
    margin:2px auto 4px;
    max-width:520px;
    background:rgba(212,160,74,0.03);
    border:1px solid rgba(212,160,74,0.08);
    border-radius:8px;
    position:relative;overflow:hidden;
}
.nw-countdown::before{
    content:'';position:absolute;inset:0;
    background:linear-gradient(90deg,transparent,rgba(212,160,74,0.04),transparent);
    animation:cdShimmer 6s ease-in-out infinite;
}
@keyframes cdShimmer{0%,100%{opacity:0}50%{opacity:1}}

/* Each of the 3 time slots */
.nw-cd-slot{
    flex:1;
    display:flex;flex-direction:column;align-items:center;
    gap:2px;
    padding:5px 8px;
    position:relative;z-index:1;
}
.nw-cd-slot + .nw-cd-slot{
    border-left:1px solid rgba(212,160,74,0.08);
}
.nw-cd-slot-label{
    font-family:'Noto Sans Devanagari',sans-serif;
    font-size:.44rem;font-weight:500;
    color:rgba(212,160,74,0.5);
    letter-spacing:.04em;
}
.nw-cd-timer{display:flex;align-items:center;gap:1px;position:relative;z-index:1}
.nw-cd-unit{display:flex;flex-direction:column;align-items:center}
.nw-cd-digit{
    font-family:'JetBrains Mono',monospace;
    font-size:.72rem;font-weight:700;
    color:#d4a04a;letter-spacing:.04em;
    min-width:2ch;text-align:center;line-height:1;
}
.nw-cd-sub{
    font-family:'Rajdhani',sans-serif;
    font-size:.34rem;font-weight:400;
    color:rgba(212,160,74,0.3);
    letter-spacing:.06em;text-transform:uppercase;
    margin-top:1px;
}
.nw-cd-sep{
    font-family:'JetBrains Mono',monospace;
    font-size:.62rem;font-weight:700;
    color:rgba(212,160,74,0.25);margin:0 1px;
    animation:cdBlink 1s step-end infinite;
    align-self:flex-start;
}
@keyframes cdBlink{0%,100%{opacity:1}50%{opacity:.2}}
.nw-cd-ist{
    font-family:'JetBrains Mono',monospace;
    font-size:.38rem;font-weight:400;
    color:rgba(232,228,220,0.2);letter-spacing:.04em;
}

/* ── HORIZONTAL CATEGORY CHIP STRIP ─────────────── */
.nw-cat-strip{
    display:flex;flex-wrap:wrap;
    justify-content:center;
    gap:5px 6px;
    padding:4px 8px;
    margin:2px auto 4px;
    max-width:100%;
}
.nw-chip{
    font-family:'Noto Sans Devanagari','Rajdhani',sans-serif;
    font-size:.52rem;font-weight:500;
    color:rgba(232,228,220,0.35);
    background:rgba(212,160,74,0.04);
    border:1px solid rgba(212,160,74,0.08);
    border-radius:14px;
    padding:3px 10px;
    cursor:pointer;
    transition:all .25s ease;
    white-space:nowrap;
    letter-spacing:.02em;
}
.nw-chip:hover{
    color:rgba(232,228,220,0.6);
    background:rgba(212,160,74,0.08);
    border-color:rgba(212,160,74,0.18);
}
.nw-chip--active{
    color:rgba(212,160,74,0.9);
    background:rgba(212,160,74,0.1);
    border-color:rgba(212,160,74,0.3);
    font-weight:600;
    box-shadow:0 0 6px rgba(212,160,74,0.1);
}

/* ── "ALL" CHIP (top-left corner of center panel) ── */
.nw-all-chip-wrap{
    display:flex;align-items:center;
    padding:2px 0 4px;
}
.nw-chip{
    font-family:'Rajdhani',sans-serif;
    font-size:.58rem;font-weight:600;
    color:rgba(220,60,60,0.55);
    background:rgba(220,60,60,0.04);
    border:1px solid rgba(220,60,60,0.12);
    padding:2px 8px;border-radius:10px;
    cursor:pointer;
    transition:all .25s ease;
    letter-spacing:.03em;
    line-height:1.4;
    white-space:nowrap;
}
.nw-chip:hover{
    color:rgba(220,60,60,0.9);
    border-color:rgba(220,60,60,0.35);
    background:rgba(220,60,60,0.08);
    box-shadow:0 0 6px rgba(220,60,60,0.12);
}
.nw-chip--active{
    color:#dc3c3c;
    background:rgba(220,60,60,0.12);
    border-color:rgba(220,60,60,0.4);
    box-shadow:0 0 8px rgba(220,60,60,0.15), 0 0 3px rgba(220,60,60,0.2);
    text-shadow:0 0 6px rgba(220,60,60,0.15);
}

/* ── SECTION BAR ────────────────────────────────────── */
.nw-section-bar{
    display:flex;align-items:center;justify-content:space-between;
    padding:6px 0 8px;
    border-bottom:1px solid rgba(212,160,74,0.06);
    gap:8px;
}
.nw-section-title{
    font-family:'Cinzel',serif;
    font-size:.85rem;font-weight:500;
    color:rgba(212,160,74,0.7);
    letter-spacing:.06em;
}
.nw-article-count{
    font-family:'JetBrains Mono',monospace;
    font-size:.6rem;
    color:rgba(232,228,220,0.3);
    letter-spacing:.06em;
}

/* ── SECTION RIGHT GROUP ── */
.nw-section-right{
    display:flex;align-items:center;gap:10px;
}

/* ── DAILY AEROTIMES DOWNLOAD BUTTON — Premium ── */
.nw-aerotimes-btn{
    display:inline-flex;align-items:center;gap:7px;
    padding:8px 18px 8px 14px;
    background:linear-gradient(135deg,rgba(200,45,40,0.22),rgba(160,30,30,0.12));
    border:1.5px solid rgba(210,60,55,0.55);
    border-radius:8px;
    color:#ef5a50;
    font-family:'Rajdhani',sans-serif;
    font-size:.76rem;font-weight:700;
    letter-spacing:.08em;
    cursor:pointer;
    transition:all .35s cubic-bezier(.4,0,.2,1);
    text-transform:uppercase;
    position:relative;
    overflow:hidden;
    white-space:nowrap;
    flex-shrink:0;
    z-index:2;
    box-shadow:0 0 8px rgba(200,50,45,0.08),0 1px 3px rgba(0,0,0,0.25);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
}
.nw-aerotimes-btn::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(ellipse at 30% 50%,rgba(220,60,55,0.18),transparent 70%);
    opacity:0;transition:opacity .35s ease;
}
.nw-aerotimes-btn::after{
    content:'';position:absolute;inset:-1px;
    border-radius:inherit;
    background:linear-gradient(135deg,rgba(255,120,110,0.25),transparent 50%,rgba(200,40,40,0.15));
    pointer-events:none;
    mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
    -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
    mask-composite:exclude;-webkit-mask-composite:xor;
    padding:1.5px;
    opacity:.5;transition:opacity .35s ease;
}
.nw-aerotimes-btn:hover{
    border-color:rgba(220,60,55,0.75);
    color:#ff7a70;
    box-shadow:0 0 20px rgba(200,50,45,0.22),0 0 40px rgba(200,50,45,0.08),inset 0 0 14px rgba(200,50,45,0.06);
    transform:translateY(-2px) scale(1.02);
}
.nw-aerotimes-btn:hover::before{opacity:1}
.nw-aerotimes-btn:hover::after{opacity:1}
.nw-aerotimes-btn:active{
    transform:translateY(0) scale(0.98);
    box-shadow:0 0 8px rgba(200,50,45,0.18);
    transition-duration:.1s;
}
.nw-aerotimes-btn svg{
    opacity:.85;transition:all .3s ease;
    stroke:rgba(235,90,80,0.9);
    filter:drop-shadow(0 0 2px rgba(220,60,55,0.3));
}
.nw-aerotimes-btn:hover svg{
    opacity:1;stroke:#ff8a80;
    filter:drop-shadow(0 0 4px rgba(255,120,110,0.4));
    animation:nw-btn-bounce .4s ease;
}
@keyframes nw-btn-bounce{
    0%{transform:translateY(0)}
    40%{transform:translateY(2px)}
    70%{transform:translateY(-1px)}
    100%{transform:translateY(0)}
}

/* ── CARD GRID (layout only — scroll handled above) ── */
.nw-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:14px;
    align-content:start;
}

/* ── LOADING STATE ──────────────────────────────────── */
.nw-loading{
    grid-column:1/-1;
    display:flex;flex-direction:column;
    align-items:center;justify-content:center;
    gap:12px;padding:40px 0;
    color:rgba(212,160,74,0.4);
    font-family:'Rajdhani',sans-serif;
    font-size:.75rem;letter-spacing:.1em;
}
.nw-loading-spinner{
    width:28px;height:28px;
    border:2px solid rgba(212,160,74,0.1);
    border-top-color:rgba(212,160,74,0.5);
    border-radius:50%;
    animation:nwSpin .8s linear infinite;
}
@keyframes nwSpin{to{transform:rotate(360deg)}}

/* ── EMPTY STATE ────────────────────────────────────── */
.nw-empty{
    grid-column:1/-1;
    text-align:center;padding:40px 20px;
    color:rgba(232,228,220,0.35);
}
.nw-empty-icon{font-size:2rem;display:block;margin-bottom:12px}
.nw-empty p{
    font-family:'Rajdhani',sans-serif;
    font-size:.8rem;letter-spacing:.06em;
    margin:4px 0;
}
.nw-empty-sub{
    font-size:.65rem !important;
    color:rgba(232,228,220,0.2) !important;
}

/* Clickable card links */
/* ── CARD ────────────────────────────────────────────── */
.nw-card{
    background:
        linear-gradient(168deg,rgba(18,16,26,0.92),rgba(10,10,16,0.96) 50%,rgba(14,12,20,0.92));
    backdrop-filter:blur(18px) saturate(1.3);
    -webkit-backdrop-filter:blur(18px) saturate(1.3);
    border:1px solid rgba(212,160,74,0.06);
    border-radius:14px;
    padding:14px 16px;
    position:relative;overflow:hidden;
    min-height:160px;
    max-height:280px;
    display:flex;flex-direction:column;
    transition:all .4s cubic-bezier(.25,.46,.45,.94);
    cursor:default;
    box-shadow:
        0 2px 20px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(255,255,255,0.03),
        inset 0 0 0 1px rgba(212,160,74,0.02);
}
/* Premium top accent — metallic gold gradient */
.nw-card::before{
    content:'';position:absolute;top:0;left:0;right:0;
    height:2px;
    background:linear-gradient(90deg,
        transparent 5%,rgba(212,160,74,0.12) 20%,rgba(212,160,74,0.35) 50%,rgba(212,160,74,0.12) 80%,transparent 95%);
    opacity:0.4;transition:opacity .4s ease;
}
/* Bottom inner glow */
.nw-card::after{
    content:'';position:absolute;bottom:0;left:10%;right:10%;
    height:40%;pointer-events:none;
    background:radial-gradient(ellipse at 50% 100%,rgba(212,160,74,0.02) 0%,transparent 70%);
    opacity:0;transition:opacity .4s ease;
}
.nw-card:hover{
    transform:translateY(-4px);
    border-color:rgba(212,160,74,0.16);
    box-shadow:
        0 12px 40px rgba(0,0,0,0.5),
        0 0 20px rgba(212,160,74,0.05),
        inset 0 1px 0 rgba(255,255,255,0.06),
        inset 0 0 0 1px rgba(212,160,74,0.04);
}
.nw-card:hover::before{opacity:1}
.nw-card:hover::after{opacity:1}

/* ── SOURCE TRUST DOT — glowing corner indicator ───── */
.nw-src-dot{
    position:absolute;top:10px;right:10px;
    width:7px;height:7px;border-radius:50%;
    z-index:3;
    transition:all .3s ease;
}
.nw-src-dot--green{
    background:#2dd4a8;
    box-shadow:0 0 6px rgba(45,212,168,0.5),0 0 14px rgba(45,212,168,0.2);
    animation:nw-dot-pulse-g 2.5s ease-in-out infinite;
}
.nw-src-dot--amber{
    background:#d4a04a;
    box-shadow:0 0 6px rgba(212,160,74,0.5),0 0 14px rgba(212,160,74,0.2);
    animation:nw-dot-pulse-a 2.5s ease-in-out infinite;
}
.nw-src-dot--red{
    background:#f43f5e;
    box-shadow:0 0 6px rgba(244,63,94,0.5),0 0 14px rgba(244,63,94,0.2);
    animation:nw-dot-pulse-r 2.5s ease-in-out infinite;
}
@keyframes nw-dot-pulse-g{
    0%,100%{box-shadow:0 0 6px rgba(45,212,168,0.5),0 0 14px rgba(45,212,168,0.2)}
    50%{box-shadow:0 0 10px rgba(45,212,168,0.7),0 0 22px rgba(45,212,168,0.3)}
}
@keyframes nw-dot-pulse-a{
    0%,100%{box-shadow:0 0 6px rgba(212,160,74,0.5),0 0 14px rgba(212,160,74,0.2)}
    50%{box-shadow:0 0 10px rgba(212,160,74,0.7),0 0 22px rgba(212,160,74,0.3)}
}
@keyframes nw-dot-pulse-r{
    0%,100%{box-shadow:0 0 6px rgba(244,63,94,0.5),0 0 14px rgba(244,63,94,0.2)}
    50%{box-shadow:0 0 10px rgba(244,63,94,0.7),0 0 22px rgba(244,63,94,0.3)}
}

/* ── CARD HEADER (tag + NR badge) ─────────────────── */
.nw-card-header{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:8px;
    position:relative;z-index:1;
}

/* ── NR BADGE — Neural Resonance x/13 ────────────── */
.nw-nr-badge{
    font-family:'JetBrains Mono',monospace;
    font-size:.46rem;font-weight:700;
    padding:3px 9px;border-radius:10px;
    letter-spacing:.06em;
    white-space:nowrap;
    flex-shrink:0;
    transition:all .3s ease;
    backdrop-filter:blur(4px);
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
.nw-nr--high{
    color:rgba(45,212,168,1);
    background:rgba(45,212,168,0.1);
    border:1px solid rgba(45,212,168,0.25);
    text-shadow:0 0 8px rgba(45,212,168,0.25);
}
.nw-nr--mid{
    color:rgba(212,160,74,0.95);
    background:rgba(212,160,74,0.08);
    border:1px solid rgba(212,160,74,0.2);
    text-shadow:0 0 6px rgba(212,160,74,0.15);
}
.nw-nr--low{
    color:rgba(244,63,94,0.85);
    background:rgba(244,63,94,0.08);
    border:1px solid rgba(244,63,94,0.18);
    text-shadow:0 0 6px rgba(244,63,94,0.12);
}
.nw-card:hover .nw-nr--high{box-shadow:0 0 12px rgba(45,212,168,0.15)}
.nw-card:hover .nw-nr--mid{box-shadow:0 0 12px rgba(212,160,74,0.12)}
.nw-card:hover .nw-nr--low{box-shadow:0 0 10px rgba(244,63,94,0.1)}

/* ── FEATURED CARD ──────────────────────────────────── */
.nw-card--featured{
    grid-column:1 / -1;
    border-color:rgba(212,160,74,0.15);
    background:rgba(14,14,22,0.88);
}
.nw-card--featured::before{
    height:3px;
    background:linear-gradient(90deg,transparent,rgba(212,160,74,0.55),rgba(139,92,246,0.35),transparent);
    opacity:1;
}
.nw-card--featured::after{
    opacity:0.5;
    animation:cardBreathe 5s ease-in-out infinite;
}
.nw-card--featured .nw-card-title{font-size:.88rem;-webkit-line-clamp:2}
@keyframes cardBreathe{
    0%,100%{opacity:0.3;box-shadow:inset 0 0 20px rgba(212,160,74,0.02),0 0 12px rgba(212,160,74,0.03)}
    50%{opacity:0.7;box-shadow:inset 0 0 35px rgba(212,160,74,0.05),0 0 24px rgba(212,160,74,0.06),0 0 50px rgba(212,160,74,0.03)}
}

/* ── CARD STAMP / TAG ───────────────────────────────── */
.nw-card-stamp,
.nw-card-header{
    display:flex;align-items:center;gap:8px;
    margin-bottom:8px;flex-wrap:nowrap;
    overflow:hidden;
    position:relative;z-index:1;
}
.nw-card-tag{
    font-family:'JetBrains Mono',monospace;
    font-size:.5rem;font-weight:600;
    padding:3px 8px;border-radius:6px;
    letter-spacing:.06em;text-transform:uppercase;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    max-width:140px;
    backdrop-filter:blur(4px);
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
/* Tag colors — 12 Vidyasthana */
.nw-tag--kaya     {color:rgba(255,107,107,0.95);background:rgba(255,107,107,0.1);border:1px solid rgba(255,107,107,0.2)}
.nw-tag--shabda   {color:rgba(255,183,77,0.95);background:rgba(255,183,77,0.1);border:1px solid rgba(255,183,77,0.2)}
.nw-tag--hetu     {color:rgba(56,189,248,0.95);background:rgba(56,189,248,0.1);border:1px solid rgba(56,189,248,0.2)}
.nw-tag--bhautika {color:rgba(139,92,246,0.95);background:rgba(139,92,246,0.1);border:1px solid rgba(139,92,246,0.2)}
.nw-tag--jiva     {color:rgba(102,187,106,0.95);background:rgba(102,187,106,0.1);border:1px solid rgba(102,187,106,0.2)}
.nw-tag--prithvi  {color:rgba(161,136,82,0.95);background:rgba(161,136,82,0.1);border:1px solid rgba(161,136,82,0.2)}
.nw-tag--kala     {color:rgba(171,71,188,0.95);background:rgba(171,71,188,0.1);border:1px solid rgba(171,71,188,0.2)}
.nw-tag--artha    {color:rgba(212,160,74,0.95);background:rgba(212,160,74,0.1);border:1px solid rgba(212,160,74,0.2)}
.nw-tag--raja     {color:rgba(244,63,94,0.95);background:rgba(244,63,94,0.1);border:1px solid rgba(244,63,94,0.2)}
.nw-tag--yantra   {color:rgba(45,212,168,0.95);background:rgba(45,212,168,0.1);border:1px solid rgba(45,212,168,0.2)}
.nw-tag--kalaa    {color:rgba(236,72,153,0.95);background:rgba(236,72,153,0.1);border:1px solid rgba(236,72,153,0.2)}
.nw-tag--dharma   {color:rgba(251,191,36,0.95);background:rgba(251,191,36,0.1);border:1px solid rgba(251,191,36,0.2)}

/* ── CARD TITLE ─────────────────────────────────────── */
.nw-card-title{
    font-family:'Cinzel',serif;
    font-size:.8rem;font-weight:600;
    color:rgba(232,228,220,0.95);line-height:1.4;
    margin-bottom:6px;letter-spacing:.025em;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    word-break:break-word;
    position:relative;z-index:1;
    transition:color .3s ease,text-shadow .3s ease;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
.nw-card:hover .nw-card-title{
    color:#d4a04a;
    text-shadow:0 0 18px rgba(212,160,74,0.12);
}

/* ── CARD DESC ──────────────────────────────────────── */
.nw-card-desc{
    font-family:'Inter',sans-serif;
    font-size:.7rem;font-weight:350;
    color:rgba(232,228,220,0.5);
    line-height:1.6;margin-bottom:0;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    word-break:break-word;
    overflow-wrap:break-word;
    flex:1 1 auto;
    min-height:0;
    position:relative;z-index:1;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

/* ── TOM'S VEDIC INSIGHT ──────────────────────────────── */
.nw-card-tom{
    font-family:'Inter',sans-serif;
    font-size:.58rem;font-weight:400;font-style:italic;
    color:rgba(212,160,74,0.45);
    line-height:1.5;margin-bottom:0;
    padding:5px 0 0;
    border-top:1px solid rgba(212,160,74,0.06);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    word-break:break-word;
    position:relative;z-index:1;
}
.nw-card:hover .nw-card-tom{
    color:rgba(212,160,74,0.65);
}
.nw-card--prime13 .nw-card-tom{
    color:rgba(167,139,250,0.4);
    border-top-color:rgba(139,92,246,0.08);
}
.nw-card--prime13:hover .nw-card-tom{
    color:rgba(167,139,250,0.6);
}

/* ── CARD FOOTER ────────────────────────────────────── */
.nw-card-footer{
    display:flex;align-items:center;
    padding-top:8px;gap:8px;
    border-top:1px solid rgba(212,160,74,0.05);
    margin-top:auto;
    position:relative;z-index:1;
    min-width:0;
}
.nw-card-source{
    font-family:'JetBrains Mono',monospace;
    font-size:.46rem;color:rgba(232,228,220,0.32);
    letter-spacing:.04em;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    flex:1;
    min-width:0;
    transition:color .3s ease;
    -webkit-font-smoothing:antialiased;
}
.nw-card:hover .nw-card-source{color:rgba(232,228,220,0.5)}
.nw-card-read{
    font-family:'Rajdhani',sans-serif;
    font-size:.54rem;font-weight:700;
    color:rgba(212,160,74,0.5);
    text-decoration:none;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding:3px 10px;
    border:1px solid rgba(212,160,74,0.12);
    border-radius:8px;
    background:linear-gradient(135deg,rgba(212,160,74,0.04),rgba(212,160,74,0.02));
    transition:all .3s cubic-bezier(.25,.46,.45,.94);
    flex-shrink:0;
    white-space:nowrap;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
.nw-card:hover .nw-card-read{
    color:#d4a04a;
    border-color:rgba(212,160,74,0.3);
    background:linear-gradient(135deg,rgba(212,160,74,0.08),rgba(212,160,74,0.04));
    box-shadow:0 0 10px rgba(212,160,74,0.1),0 2px 8px rgba(0,0,0,0.2);
    transform:translateY(-1px);
}

/* ── SELECTED CARD (for command panel) ──────────────── */
.nw-card--selected{
    border-color:rgba(45,212,168,0.35) !important;
    box-shadow:
        0 4px 20px rgba(0,0,0,0.35),
        0 0 16px rgba(45,212,168,0.12),
        0 0 4px rgba(45,212,168,0.25),
        inset 0 0 25px rgba(45,212,168,0.04) !important;
}
.nw-card--selected::before{
    background:linear-gradient(90deg,transparent,rgba(45,212,168,0.45),transparent) !important;
    opacity:1 !important;
}
.nw-card--selected::after{
    opacity:1 !important;
    box-shadow:
        inset 0 0 25px rgba(45,212,168,0.04),
        0 0 18px rgba(45,212,168,0.08),
        0 0 40px rgba(45,212,168,0.03) !important;
    animation:selectedBreathe 3s ease-in-out infinite !important;
}
@keyframes selectedBreathe{
    0%,100%{opacity:0.5}
    50%{opacity:1}
}

/* ── TOM'S DB REFERENCE TAG ──────────────────────────── */
.nw-card-dbref{
    font-family:'JetBrains Mono',monospace;
    font-size:.52rem;font-weight:600;
    color:rgba(220,60,60,0.55);
    letter-spacing:.04em;
    padding:4px 9px;border-radius:6px;
    background:rgba(220,60,60,0.05);
    border:1px solid rgba(220,60,60,0.12);
    display:inline-flex;align-items:center;gap:4px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    max-width:45%;
    flex:0 1 auto;
    min-width:0;
    cursor:default;
    backdrop-filter:blur(4px);
    transition:all .35s cubic-bezier(.25,.46,.45,.94);
    position:relative;
}
.nw-card-dbref svg{
    flex-shrink:0;
    opacity:0.6;
    transition:all .3s ease;
    width:11px;height:11px;
}
.nw-card:hover .nw-card-dbref{
    color:rgba(220,60,60,0.85);
    background:rgba(220,60,60,0.08);
    border-color:rgba(220,60,60,0.25);
    box-shadow:0 0 12px rgba(220,60,60,0.1), 0 0 3px rgba(220,60,60,0.2);
    text-shadow:0 0 8px rgba(220,60,60,0.2);
}
.nw-card:hover .nw-card-dbref svg{
    opacity:1;
    filter:drop-shadow(0 0 4px rgba(220,60,60,0.4));
}

/* ── PRIME-13 MYSTERY CARD — Special cosmic purple theme ── */
.nw-card--prime13{
    border-color:rgba(139,92,246,0.15);
    background:rgba(14,10,28,0.88);
}
.nw-card--prime13::before{
    background:linear-gradient(90deg,transparent,rgba(139,92,246,0.45),transparent);
}
.nw-card--prime13:hover{
    border-color:rgba(139,92,246,0.35);
    box-shadow:
        0 10px 30px rgba(0,0,0,0.45),
        0 0 20px rgba(139,92,246,0.1),
        inset 0 1px 0 rgba(255,255,255,0.06);
}
.nw-card--prime13 .nw-card-title{ color:rgba(200,180,255,0.95); }
.nw-card--prime13:hover .nw-card-title{
    color:rgba(167,139,250,1);
    text-shadow:0 0 20px rgba(139,92,246,0.2);
}
.nw-card--prime13 .nw-card-desc{ color:rgba(200,190,230,0.55); }
.nw-card--prime13 .nw-card-source{ color:rgba(167,139,250,0.35); }
.nw-card--prime13:hover .nw-card-source{ color:rgba(167,139,250,0.6); }


/* ═══════════════════════════════════════════════════════
   VEDIC FOOTER (fixed bottom — 34px)
   ═══════════════════════════════════════════════════════ */
.nw-footer{
    position:fixed;bottom:0;left:0;right:0;
    height:34px;z-index:100;
    background:rgba(6,6,12,0.92);
    backdrop-filter:blur(18px) saturate(1.2);
    -webkit-backdrop-filter:blur(18px) saturate(1.2);
    border-top:1px solid rgba(255,255,255,0.05);
    box-shadow:0 -2px 16px rgba(0,0,0,0.35);
    overflow:hidden;
    display:flex;align-items:center;
}
.nw-shloka-track{
    display:flex;
    animation:scrollShloka 90s linear infinite;
    white-space:nowrap;
}
.nw-shloka{
    font-family:'Noto Sans Devanagari','Inter',sans-serif;
    font-size:.62rem;
    color:rgba(212,160,74,0.3);
    letter-spacing:.08em;
    padding:0 60px;
}
@keyframes scrollShloka{
    0%{transform:translateX(0)}
    100%{transform:translateX(-50%)}
}


/* ═══════════════════════════════════════════════════════
   RIGHT 1/3 — TOM FREEBIRD SIDEBAR
   Survey-style: rounded glassmorphic card, breathing
   glow border, crimson accent, full viewport height
   ═══════════════════════════════════════════════════════ */
.nw-tom-sidebar{
    flex:0 0 340px;min-width:0;max-width:380px;
    display:flex;flex-direction:column;
    background:rgba(10,10,18,0.82);
    border:1px solid rgba(220,60,60,0.10);
    border-radius:18px;
    margin:10px 10px 10px 0;
    position:relative;overflow:hidden;
    backdrop-filter:blur(14px) saturate(1.3);
    -webkit-backdrop-filter:blur(14px) saturate(1.3);
    box-shadow:
        0 8px 40px rgba(0,0,0,0.5),
        0 0 1px rgba(220,60,60,0.15),
        inset 0 1px 0 rgba(255,255,255,0.04);
    z-index:2;
}

/* Breathing glow border — exact survey pattern */
.nw-tom-sidebar::before{
    content:'';position:absolute;inset:-1px;
    border-radius:19px;
    background:linear-gradient(135deg,
        rgba(220,60,60,0.20),
        rgba(180,60,60,0.05) 40%,
        rgba(220,60,60,0.12) 70%,
        rgba(255,80,80,0.18));
    z-index:-1;
    animation:sbBreathe 4s ease-in-out infinite;
    pointer-events:none;
}
.nw-tom-sidebar::after{
    content:'';position:absolute;inset:0;
    border-radius:18px;
    box-shadow:
        inset 0 0 30px rgba(220,60,60,0.04),
        0 0 20px rgba(220,60,60,0.06),
        0 0 60px rgba(220,60,60,0.03);
    pointer-events:none;z-index:0;
    animation:sbEdgeGlow 4s ease-in-out infinite;
}
@keyframes sbBreathe{
    0%,100%{opacity:0.4;transform:scale(1)}
    50%{opacity:0.85;transform:scale(1.002)}
}
@keyframes sbEdgeGlow{
    0%,100%{opacity:0.3;box-shadow:inset 0 0 30px rgba(220,60,60,0.03),0 0 15px rgba(220,60,60,0.04),0 0 50px rgba(220,60,60,0.02)}
    50%{opacity:1;box-shadow:inset 0 0 40px rgba(220,60,60,0.06),0 0 28px rgba(220,60,60,0.10),0 0 80px rgba(220,60,60,0.05)}
}

/* Radial glow orb */
.nw-tom-glow{
    position:absolute;top:-50%;right:-50%;width:200%;height:200%;
    background:radial-gradient(ellipse at 80% 30%,rgba(220,60,60,0.06),transparent 60%);
    pointer-events:none;z-index:0;
    animation:sbGlow 6s ease-in-out infinite alternate;
}
@keyframes sbGlow{0%{opacity:0.5}100%{opacity:1}}

/* ── Sidebar Header ───────────────────────────────── */
.nw-tom-header{
    display:flex;align-items:center;gap:0.6rem;
    padding:0.7rem 0.8rem;
    border-bottom:1px solid rgba(220,60,60,0.10);
    border-radius:18px 18px 0 0;
    position:relative;z-index:1;flex-shrink:0;
    background:linear-gradient(180deg, rgba(220,60,60,0.05) 0%, rgba(220,60,60,0.02) 100%);
}

/* Avatar — survey-style crimson glow wrap */
.nw-tom-avatar-wrap{
    width:clamp(42px, 5vw, 52px);height:clamp(42px, 5vw, 52px);
    flex-shrink:0;position:relative;
    border-radius:50%;display:grid;place-items:center;
    background:radial-gradient(circle, rgba(220,60,60,0.35) 0%, rgba(220,60,60,0.10) 55%, transparent 78%);
    box-shadow:0 0 36px rgba(220,60,60,0.22), 0 0 10px rgba(220,60,60,0.10), inset 0 0 22px rgba(220,60,60,0.12);
    border:1.5px solid rgba(220,60,60,0.28);
    overflow:hidden;
}
.nw-tom-avatar-wrap::before{
    content:'';position:absolute;inset:-6px;
    border-radius:50%;
    border:1.5px solid rgba(220,60,60,0.25);
    box-shadow:0 0 16px rgba(220,60,60,0.12);
    animation:avatarRing 5.2s linear infinite;
    pointer-events:none;z-index:2;
}
@keyframes avatarRing{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}

.nw-tom-avatar-ring{display:none} /* replaced by ::before */

.nw-tom-avatar-img{
    width:100%;height:100%;
    border-radius:50%;object-fit:cover;display:block;
    filter:saturate(1.1) brightness(0.95);
    transition:transform 0.4s, filter 0.4s;
}
.nw-tom-sidebar:hover .nw-tom-avatar-img{
    transform:scale(1.08);
    filter:saturate(1.3) brightness(1.05);
}

.nw-tom-badge{
    position:absolute;bottom:-2px;right:-2px;
    font-family:'JetBrains Mono',monospace;
    font-size:0.42rem;font-weight:700;
    color:#dc3c3c;
    background:rgba(10,10,18,0.95);
    border:1px solid rgba(220,60,60,0.35);
    border-radius:4px;
    padding:1px 4px;letter-spacing:0.04em;
    z-index:3;
}

/* Identity text */
.nw-tom-info{flex:1;min-width:0}
.nw-tom-name{
    font-family:'Cinzel',serif;
    font-size:0.82rem;font-weight:600;
    color:#dc3c3c;
    white-space:nowrap;
    letter-spacing:0.04em;
    margin:0;
    text-shadow:0 0 16px rgba(220,60,60,0.5), 0 0 5px rgba(220,60,60,0.25);
}
.nw-tom-role{
    font-family:'Rajdhani',sans-serif;
    font-size:0.5rem;font-weight:500;
    letter-spacing:0.08em;
    color:rgba(255,255,255,0.3);
}

/* Online indicator */
.nw-tom-online{
    display:flex;align-items:center;gap:0.25rem;flex-shrink:0;
    font-family:'JetBrains Mono',monospace;
    font-size:0.42rem;
    color:rgba(220,60,60,0.5);
    letter-spacing:0.1em;
}
.nw-tom-dot{
    width:6px;height:6px;border-radius:50%;
    background:#dc3c3c;
    box-shadow:0 0 10px rgba(220,60,60,0.6);
    animation:btPulse 2s infinite;
}
@keyframes btPulse{
    0%,100%{opacity:1;transform:scale(1)}
    50%{opacity:0.5;transform:scale(0.8)}
}

/* ── Chat Area ─────────────────────────────────────── */
.nw-tom-chat{
    flex:1;overflow-y:auto;
    padding:0.6rem;
    display:flex;flex-direction:column;gap:0.4rem;
    position:relative;z-index:1;
}
.nw-tom-chat::-webkit-scrollbar{width:3px}
.nw-tom-chat::-webkit-scrollbar-track{background:transparent}
.nw-tom-chat::-webkit-scrollbar-thumb{background:rgba(220,60,60,0.15);border-radius:2px}

/* ── Chat Messages — survey bt-msg style ───────────── */
.nw-tc-msg{
    max-width:88%;padding:0.5rem 0.7rem;border-radius:10px;
    font-size:0.72rem;line-height:1.55;
    animation:btMsgIn .3s ease-out;
}
@keyframes btMsgIn{
    from{opacity:0;transform:translateY(8px)}
    to{opacity:1;transform:translateY(0)}
}
.nw-tc-msg--tom{
    align-self:flex-start;
    background:rgba(220,60,60,0.08);
    border:1px solid rgba(220,60,60,0.12);
    color:rgba(255,255,255,0.75);
    border-bottom-left-radius:3px;
    font-family:'Inter',sans-serif;
}
.nw-tc-msg--user{
    align-self:flex-end;
    background:rgba(255,255,255,0.06);
    border:1px solid rgba(255,255,255,0.08);
    color:rgba(255,255,255,0.8);
    border-bottom-right-radius:3px;
    font-family:'Inter',sans-serif;
}
.nw-tc-msg--system{
    align-self:center;text-align:center;
    font-family:'JetBrains Mono',monospace;
    font-size:0.55rem;
    color:rgba(255,255,255,0.2);
    letter-spacing:0.08em;
    padding:0.2rem 0.6rem;
}

/* ── Typing Indicator — survey bt-typing style ─────── */
.nw-tom-typing{
    display:flex;align-items:center;gap:0.3rem;
    padding:0.4rem 0.7rem;
    position:relative;z-index:1;
    align-self:flex-start;
}
.nw-tom-typing-dots{display:flex;gap:3px}
.nw-tom-typing-dots span{
    width:5px;height:5px;border-radius:50%;
    background:rgba(220,60,60,0.4);
    animation:btTyping 1.2s ease-in-out infinite;
}
.nw-tom-typing-dots span:nth-child(2){animation-delay:.2s}
.nw-tom-typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes btTyping{
    0%,60%,100%{transform:translateY(0)}
    30%{transform:translateY(-5px)}
}
.nw-tom-typing-text{
    font-family:'Rajdhani',sans-serif;
    font-size:0.52rem;
    color:rgba(220,60,60,0.35);
    letter-spacing:0.04em;
}

/* ── Input Area — survey bt-sb-input style ─────────── */
.nw-tom-input-area{
    display:flex;align-items:center;gap:0.4rem;
    padding:0.5rem 0.6rem;
    border-top:1px solid rgba(220,60,60,0.08);
    position:relative;z-index:1;flex-shrink:0;
}
.nw-tom-input{
    flex:1;padding:0.45rem 0.7rem;border-radius:8px;
    background:rgba(255,255,255,0.04);
    border:1px solid rgba(255,255,255,0.08);
    font-family:'JetBrains Mono',monospace;
    font-size:0.7rem;color:#e5e5e5;
    outline:none;transition:border-color .3s;
}
.nw-tom-input:focus{
    border-color:rgba(220,60,60,0.35);
    box-shadow:0 0 12px rgba(220,60,60,0.08);
}
.nw-tom-input::placeholder{
    color:rgba(255,255,255,0.18);
    font-family:'Rajdhani',sans-serif;
    font-size:0.68rem;letter-spacing:0.04em;
}
.nw-tom-send{
    width:36px;height:36px;border-radius:10px;border:1px solid rgba(220,60,60,0.2);cursor:pointer;
    background:rgba(220,60,60,0.12);
    color:rgba(220,60,60,0.7);
    display:flex;align-items:center;justify-content:center;
    transition:all .35s cubic-bezier(.25,.46,.45,.94);
    position:relative;overflow:hidden;
    backdrop-filter:blur(4px);
}
.nw-tom-send::before{
    content:'';position:absolute;inset:0;
    border-radius:10px;
    background:radial-gradient(circle at 50% 30%, rgba(220,60,60,0.1), transparent 70%);
    opacity:0;transition:opacity .3s ease;
    pointer-events:none;
}
.nw-tom-send:hover::before{opacity:1}
.nw-tom-send:hover{
    background:rgba(220,60,60,0.22);
    border-color:rgba(220,60,60,0.4);
    color:#dc3c3c;
    box-shadow:0 0 20px rgba(220,60,60,0.25), 0 0 6px rgba(220,60,60,0.35);
    transform:translateY(-1px);
    text-shadow:0 0 8px rgba(220,60,60,0.4);
}


/* ═══════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════ */
@media(max-width:1100px){
    .nw-vtile{flex:0 0 200px}
    .nw-vtile-inner{height:80px}
    .nw-vcat-text{font-size:.52rem}
    .nw-tom-sidebar{flex:0 0 280px;max-width:300px}
    .nw-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
}
@media(max-width:900px){
    .nw-split{flex-direction:column;height:auto;overflow:auto}
    body{height:auto;overflow:auto}
    .nw-vtile{
        flex:none;
        flex-direction:row;
        border-right:none;border-bottom:1px solid rgba(212,160,74,0.08);
    }
    .nw-vtile-inner{display:none}
    .nw-vtile-info{display:none}
    .nw-vtile-cats{
        display:flex;flex-wrap:wrap;
        gap:2px;padding:6px 10px;
        overflow-y:visible;
    }
    .nw-vcat{width:auto;padding:3px 8px}
    .nw-vcat-text small{display:none}
    .nw-main{overflow:visible}
    .nw-tom-sidebar{
        flex:none;height:380px;
        margin:0 10px 44px 10px;
        border-radius:14px;
    }
    .nw-tom-sidebar::before{border-radius:15px}
    .nw-tom-header{border-radius:14px 14px 0 0}
    .nw-nav-title{display:none}
    .nw-grid{grid-template-columns:1fr}
    .nw-card--featured{grid-column:auto}
    .nw-title{font-size:1.4rem}
    .nw-chip{font-size:.48rem;padding:2px 6px}
    .nw-annn-bar{flex-direction:column;text-align:center}
    .nw-countdown{gap:0;padding:0}
    .nw-cd-slot{padding:4px 4px}
    .nw-cd-digit{font-size:.58rem}
    .nw-section-bar{flex-direction:column;gap:3px}
    .nw-shloka{font-size:.55rem}
}
@media(max-width:480px){
    .nw-card{padding:14px}
    .nw-card-title{font-size:.78rem}
    .nw-card-desc{font-size:.68rem}
    .nw-title{font-size:1.2rem}
    .nw-date-bar{gap:8px}
    .nw-date-arrow{width:24px;height:24px;font-size:.58rem}
}
