/* ZeroSpread news-analysis — rules target .zs-* classes used only on this route */
/* ============================================================
           SCOPED STYLES — only inside .zs-news-lab
           ============================================================ */
        .zs-news-lab {
          /* Palette tokens — dark defaults; flipped by html.light below.
             Dark mode keeps its exact greyscale ramp; Light Mode is the base. */
          --na-bg: #070707;
          --na-s1: #0c0c0c;
          --na-s2: #121212;
          --na-s3: #161616;
          --na-bd1: #1a1a1a;
          --na-bd2: #242424;
          --na-bd3: #2e2e2e;
          --na-bd4: #383838;
          --na-text: #ededed;
          --na-text2: #c8c8c8;
          --na-muted: #9a9a9a;
          --na-muted2: #6b6b6b;
          --na-green: #a3ff12;
          --na-green-rgb: 163, 255, 18;
          background: var(--na-bg);
          color: var(--na-text);
          font-family: var(--font-news-analysis-sans), 'IBM Plex Sans Arabic', 'Tajawal', 'Cairo', system-ui, -apple-system, 'Segoe UI', sans-serif;
          min-height: 100vh;
          padding-bottom: 80px;
          font-feature-settings: 'kern', 'liga', 'calt';
          -webkit-font-smoothing: antialiased;
          letter-spacing: 0.005em;
        }
        .zs-news-lab * { box-sizing: border-box; }
        .zs-news-lab button { font-family: inherit; }
        .zs-news-lab :focus-visible {
          outline: 1px solid rgba(var(--na-green-rgb), 0.22);
          outline-offset: 2px;
          border-radius: 6px;
        }

        .zs-intelligence-lab {
          --zs-intel-accent: rgba(var(--na-green-rgb), 0.14);
          --zs-intel-cool: rgba(122, 184, 232, 0.16);
        }

        /* === Section frame === */
        .zs-section {
          max-width: 1280px;
          margin: 0 auto;
          padding: 80px 32px 0;
        }

        /* === Section label === */
        .zs-sec-label { margin-bottom: 36px; max-width: 720px; }
        .zs-sec-caption {
          display: inline-flex; align-items: center; gap: 8px;
          font-size: 12px; color: var(--na-muted); font-weight: 500;
          letter-spacing: 0.04em;
          padding: 5px 12px;
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 999px;
          margin-bottom: 18px;
        }
        .zs-dot {
          width: 5px; height: 5px; border-radius: 50%;
          background: var(--na-green);
          box-shadow: 0 0 8px rgba(var(--na-green-rgb), 0.35);
        }
        .zs-sec-title {
          font-size: clamp(28px, 3.4vw, 40px);
          font-weight: 700;
          line-height: 1.2;
          margin: 0 0 12px;
          letter-spacing: -0.018em;
          color: var(--na-text);
        }
        .zs-sec-kicker {
          font-size: 15px; line-height: 1.7; margin: 0;
          color: var(--na-muted);
          max-width: 580px;
        }

        /* === HERO === */
        .zs-hero {
          position: relative;
          padding: 120px 32px 0;
          overflow: hidden;
          isolation: isolate;
        }
        .zs-hero-bg { position: absolute; inset: 0; pointer-events: none; }
        .zs-hero-grid {
          position: absolute; inset: 0;
          background-image:
            radial-gradient(circle, var(--na-bd2) 1px, transparent 1px);
          background-size: 28px 28px;
          mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, black 30%, transparent 80%);
          -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, black 30%, transparent 80%);
          opacity: 0.5;
        }
        .zs-hero-grid-static {
          opacity: 0.35;
        }
        .zs-hero-grid-dots {
          opacity: 0.38;
          background-image: radial-gradient(circle, rgba(180, 190, 200, 0.28) 1px, transparent 1.5px);
          background-size: 22px 22px;
          animation: zs-hero-dots-drift 78s linear infinite;
        }
        @keyframes zs-hero-dots-drift {
          0% { background-position: 0 0; }
          100% { background-position: 220px 140px; }
        }
        .zs-hero-drift {
          position: absolute; inset: -20%;
          background: radial-gradient(ellipse 50% 40% at 50% 25%, rgba(122, 184, 232, 0.06) 0%, transparent 55%);
          animation: zs-hero-drift-pan 22s ease-in-out infinite alternate;
          pointer-events: none;
        }
        @keyframes zs-hero-drift-pan {
          from { transform: translate(0, 0) scale(1); opacity: 0.85; }
          to   { transform: translate(-2%, 1%) scale(1.03); opacity: 1; }
        }
        .zs-hero-glow {
          position: absolute;
          width: 800px; height: 800px;
          left: 50%; top: 60%;
          transform: translate(-50%, -50%);
          background: radial-gradient(circle, rgba(var(--na-green-rgb), 0.10) 0%, transparent 60%);
          filter: blur(40px);
          opacity: 0.7;
        }
        .zs-hero-glow-wide {
          width: 960px; height: 720px;
          top: 42%;
          background:
            radial-gradient(circle at 50% 45%, rgba(var(--na-green-rgb), 0.11) 0%, transparent 42%),
            radial-gradient(circle at 50% 50%, rgba(122, 184, 232, 0.07) 0%, transparent 50%);
          filter: blur(56px);
          opacity: 0.85;
        }
        .zs-hero-center-pulse {
          position: absolute;
          left: 50%; top: 38%;
          transform: translate(-50%, -50%);
          width: min(72vw, 520px); height: min(72vw, 520px);
          border-radius: 50%;
          background: radial-gradient(circle, rgba(var(--na-green-rgb), 0.07) 0%, transparent 62%);
          animation: zs-hero-center-breathe 5.5s ease-in-out infinite;
          pointer-events: none;
        }
        @keyframes zs-hero-center-breathe {
          0%, 100% { opacity: 0.55; transform: translate(-50%, -50%) scale(1); }
          50%      { opacity: 0.95; transform: translate(-50%, -50%) scale(1.06); }
        }
        .zs-hero-scan {
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          height: 1px;
          pointer-events: none;
        }
        .zs-hero-scan-fast {
          background: linear-gradient(to right, transparent, rgba(var(--na-green-rgb), 0.11), transparent);
          animation: zs-scan-fast 8s linear infinite;
          opacity: 0.42;
        }
        @keyframes zs-scan-fast {
          0%   { transform: translateY(72px);  opacity: 0; }
          22%  { opacity: 0.85; }
          78%  { opacity: 0.85; }
          100% { transform: translateY(400px); opacity: 0; }
        }
        .zs-hero-scan-slow {
          background: linear-gradient(to right, transparent, rgba(122, 184, 232, 0.07), transparent);
          animation: zs-scan-slow 19s linear infinite;
          animation-delay: -4s;
          opacity: 0.28;
        }
        @keyframes zs-scan-slow {
          0%   { transform: translateY(48px); opacity: 0; }
          35%  { opacity: 0.55; }
          100% { transform: translateY(460px); opacity: 0; }
        }
        .zs-hero-title-radial-pulse {
          position: absolute;
          left: 50%;
          top: 30%;
          transform: translate(-50%, -50%);
          width: min(86vw, 640px);
          height: min(86vw, 640px);
          border-radius: 50%;
          pointer-events: none;
          background: radial-gradient(circle, rgba(122, 184, 232, 0.055) 0%, transparent 58%);
          opacity: 0;
          animation: zs-hero-title-radial 6s ease-in-out infinite;
        }
        @keyframes zs-hero-title-radial {
          0%, 72% { opacity: 0; transform: translate(-50%, -50%) scale(0.94); }
          84%    { opacity: 0.55; transform: translate(-50%, -50%) scale(1); }
          100%   { opacity: 0; transform: translate(-50%, -50%) scale(1.03); }
        }
        .zs-hero-inner {
          position: relative;
          max-width: 1280px;
          margin: 0 auto;
          text-align: center;
          padding: 60px 0 48px;
        }
        .zs-hero-tag {
          display: inline-flex; align-items: center; gap: 12px;
          padding: 7px 16px;
          background: rgba(16, 16, 16, 0.85);
          border: 1px solid var(--na-bd2);
          border-radius: 999px;
          font-size: 12px;
          color: var(--na-muted);
          margin-bottom: 28px;
          font-weight: 500;
          letter-spacing: 0.02em;
          backdrop-filter: blur(10px);
        }
        .zs-hero-tag-line {
          font-size: 12px;
          letter-spacing: 0.02em;
          color: #B8B8B8;
          font-weight: 600;
        }
        .zs-tag-sep {
          width: 1px; height: 12px; background: var(--na-bd2);
        }
        .zs-tag-brand {
          color: var(--na-text);
          font-weight: 600;
          font-family: var(--font-news-analysis-sans), 'IBM Plex Sans Arabic', 'Tajawal', 'Cairo', system-ui, -apple-system, 'Segoe UI', sans-serif;
        }
        .zs-pulse-dot {
          width: 6px; height: 6px; border-radius: 50%;
          background: var(--na-green);
          box-shadow: 0 0 10px rgba(var(--na-green-rgb), 0.35);
          animation: zs-pulse 2s ease-in-out infinite;
        }
        @keyframes zs-pulse {
          0%, 100% { opacity: 1;   transform: scale(1);   }
          50%      { opacity: 0.5; transform: scale(0.8); }
        }
        .zs-hero-title-wrap {
          position: relative;
          display: inline-block;
          max-width: 100%;
          padding: 0 12px 8px;
        }
        .zs-hero-title-wrap::before {
          content: '';
          position: absolute;
          inset: -12% -8% -18%;
          background: radial-gradient(ellipse 65% 55% at 50% 35%, rgba(var(--na-green-rgb), 0.09) 0%, transparent 68%);
          pointer-events: none;
          z-index: -1;
          filter: blur(4px);
        }
        .zs-hero-title {
          font-size: clamp(40px, 6.5vw, 76px);
          line-height: 1.05;
          font-weight: 700;
          margin: 0 0 24px;
          letter-spacing: -0.025em;
          color: var(--na-text);
          position: relative;
        }
        .zs-title-accent {
          background: linear-gradient(180deg, var(--na-text) 0%, var(--na-muted) 100%);
          -webkit-background-clip: text;
          background-clip: text;
          -webkit-text-fill-color: transparent;
        }
        .zs-hero-sub {
          font-size: clamp(15px, 1.4vw, 17px);
          line-height: 1.75;
          color: var(--na-muted);
          max-width: 640px;
          margin: 0 auto 18px;
        }
        .zs-hero-live-status {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 11px;
          flex-wrap: wrap;
          margin: 0 auto 22px;
          font-size: 12px;
          font-weight: 500;
          letter-spacing: 0.03em;
          color: rgba(154, 154, 154, 0.68);
        }
        .zs-hero-live-status-text {
          opacity: 0.88;
        }
        .zs-hero-live-status-dots {
          display: inline-flex;
          align-items: center;
          gap: 6px;
        }
        .zs-hero-status-dot {
          width: 4px;
          height: 4px;
          border-radius: 50%;
          background: rgba(122, 184, 232, 0.5);
          opacity: 0.32;
          animation: zs-hero-status-wave 1.35s ease-in-out infinite;
        }
        .zs-hero-status-dot-b { animation-delay: 0.22s; }
        .zs-hero-status-dot-c { animation-delay: 0.44s; }
        @keyframes zs-hero-status-wave {
          0%, 100% { opacity: 0.28; transform: scale(0.88); }
          50%      { opacity: 0.82; transform: scale(1.12); }
        }

        .zs-live-feed {
          max-width: 720px;
          margin: 0 auto;
          padding: 12px 16px 12px;
          border-radius: 14px;
          border: 1px solid var(--na-bd2);
          background: linear-gradient(180deg, rgba(15, 15, 15, 0.95) 0%, rgba(9, 9, 9, 0.98) 100%);
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.04),
            0 18px 48px -36px rgba(0, 0, 0, 0.9);
        }
        .zs-live-feed-label {
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 10px;
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.05em;
          color: var(--na-muted2);
          margin-bottom: 10px;
        }
        .zs-live-feed-dot {
          width: 6px; height: 6px;
          border-radius: 50%;
          background: rgba(var(--na-green-rgb), 0.85);
          box-shadow: 0 0 12px rgba(var(--na-green-rgb), 0.35);
          animation: zs-live-dot 1.8s ease-in-out infinite;
        }
        @keyframes zs-live-dot {
          0%, 100% { opacity: 1; transform: scale(1); }
          50%      { opacity: 0.45; transform: scale(0.85); }
        }
        .zs-ticker-viewport {
          overflow: hidden;
          mask-image: linear-gradient(to left, transparent, black 9%, black 91%, transparent);
          -webkit-mask-image: linear-gradient(to left, transparent, black 9%, black 91%, transparent);
        }
        .zs-ticker-track {
          display: inline-flex;
          flex-wrap: nowrap;
          align-items: center;
          gap: 14px;
          padding: 5px 0;
          width: max-content;
          animation: zs-ticker-marquee 44s linear infinite;
        }
        @keyframes zs-ticker-marquee {
          0%   { transform: translateX(0); }
          100% { transform: translateX(-50%); }
        }
        .zs-ticker-capsule {
          display: inline-flex;
          align-items: center;
          gap: 8px;
          flex-shrink: 0;
          padding: 7px 14px 7px 11px;
          border-radius: 999px;
          background: linear-gradient(180deg, var(--na-s1) 0%, var(--na-bg) 100%);
          border: 1px solid rgba(54, 54, 54, 0.95);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
          transition: border-color 0.28s ease, box-shadow 0.28s ease;
        }
        .zs-ticker-capsule:hover {
          border-color: rgba(122, 184, 232, 0.26);
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.045),
            0 0 22px -11px rgba(122, 184, 232, 0.32);
        }
        .zs-ticker-cap-pulse {
          width: 5px;
          height: 5px;
          border-radius: 50%;
          flex-shrink: 0;
          background: rgba(var(--na-green-rgb), 0.42);
          animation: zs-ticker-cap-pulse 1.65s ease-in-out infinite;
        }
        @keyframes zs-ticker-cap-pulse {
          0%, 100% { opacity: 0.5; transform: scale(0.9); }
          50%      { opacity: 1; transform: scale(1.06); }
        }
        .zs-ticker-cap-asset {
          font-size: 12px;
          font-weight: 700;
          color: #DADADA;
          letter-spacing: 0.02em;
        }
        .zs-ticker-cap-arrow {
          font-size: 11px;
          color: #505050;
          opacity: 0.9;
          font-weight: 600;
        }
        .zs-ticker-cap-event {
          font-size: 12px;
          font-weight: 500;
          color: #ABABAB;
          letter-spacing: 0.015em;
        }
        .zs-ticker-cap-clock {
          font-size: 11px;
          font-weight: 600;
          color: #6E6E6E;
          letter-spacing: 0.03em;
          font-variant-numeric: tabular-nums;
          flex-shrink: 0;
        }

        /* === PROMPT === */
        .zs-prompt-section {
          max-width: 1280px;
          margin: 0 auto;
          padding: 36px 32px 0;
        }
        .zs-prompt-wrap { max-width: 920px; margin: 0 auto; }
        .zs-prompt-engine-shell {
          position: relative;
          padding: 1px;
          border-radius: 20px;
          background: linear-gradient(
            135deg,
            rgba(122, 184, 232, 0.22) 0%,
            rgba(var(--na-green-rgb), 0.12) 38%,
            rgba(42, 42, 42, 0.9) 72%,
            rgba(122, 184, 232, 0.14) 100%
          );
          box-shadow:
            0 28px 80px -48px rgba(0, 0, 0, 0.85),
            0 0 40px -28px rgba(122, 184, 232, 0.12);
        }
        .zs-prompt-engine-shell:focus-within {
          box-shadow:
            0 28px 80px -48px rgba(0, 0, 0, 0.85),
            0 0 52px -24px rgba(var(--na-green-rgb), 0.14),
            0 0 36px -20px rgba(122, 184, 232, 0.14);
        }
        .zs-prompt-engine-shell.zs-prompt-shell-active {
          box-shadow:
            0 28px 80px -48px rgba(0, 0, 0, 0.85),
            0 0 46px -22px rgba(var(--na-green-rgb), 0.09),
            0 0 38px -20px rgba(122, 184, 232, 0.11);
        }
        .zs-prompt-engine-shell.zs-prompt-shell-active .zs-prompt-frame {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.065),
            inset 0 -28px 56px -44px rgba(0, 0, 0, 0.75),
            0 0 0 1px rgba(var(--na-green-rgb), 0.065),
            inset 0 0 26px -20px rgba(var(--na-green-rgb), 0.035);
        }
        .zs-prompt-frame {
          position: relative;
          background: linear-gradient(185deg, var(--na-s2) 0%, var(--na-bg) 100%);
          border: 1px solid transparent;
          border-radius: 19px;
          padding: 22px 24px 18px;
          transition: box-shadow 0.35s ease;
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            inset 0 -22px 48px -40px rgba(0, 0, 0, 0.65);
        }
        .zs-prompt-engine-core:focus-within {
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.06),
            inset 0 -28px 56px -44px rgba(0, 0, 0, 0.75),
            0 0 0 1px rgba(var(--na-green-rgb), 0.08);
        }
        .zs-prompt-corners {
          position: absolute; inset: 0; pointer-events: none;
        }
        .zs-prompt-corners span {
          position: absolute; width: 14px; height: 14px;
          border: 1px solid var(--na-bd3);
        }
        .zs-prompt-corners span:nth-child(1) { top: -1px; right: -1px; border-bottom: none; border-left: none; border-top-right-radius: 4px; }
        .zs-prompt-corners span:nth-child(2) { top: -1px; left:  -1px; border-bottom: none; border-right: none; border-top-left-radius:  4px; }
        .zs-prompt-corners span:nth-child(3) { bottom: -1px; right: -1px; border-top: none; border-left: none; border-bottom-right-radius: 4px; }
        .zs-prompt-corners span:nth-child(4) { bottom: -1px; left:  -1px; border-top: none; border-right: none; border-bottom-left-radius:  4px; }

        /* Quick news injection — neutral premium chips (no strong accent green) */
        .zs-quick-inject {
          margin-bottom: 14px;
        }
        .zs-quick-inject-row {
          display: flex;
          flex-wrap: wrap;
          gap: 8px;
          align-items: center;
        }
        .zs-quick-inject-btn {
          position: relative;
          padding: 7px 13px;
          font-family: inherit;
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.02em;
          color: #A3A3A3;
          background: linear-gradient(180deg, var(--na-s2) 0%, #0D0D0D 100%);
          border: 1px solid #2C2C2C;
          border-radius: 999px;
          cursor: pointer;
          transition:
            color 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            border-color 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            background 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            box-shadow 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            transform 0.42s cubic-bezier(0.22, 0.61, 0.36, 1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
        }
        .zs-quick-chip {
          display: inline-flex;
          align-items: center;
          gap: 8px;
        }
        .zs-quick-chip-icon {
          display: flex;
          align-items: center;
          justify-content: center;
          opacity: 0.72;
          color: var(--na-muted);
          transition: opacity 0.2s, color 0.2s;
        }
        .zs-quick-inject-btn:hover .zs-quick-chip-icon {
          opacity: 1;
          color: var(--na-text2);
        }
        .zs-quick-inject-btn:hover {
          color: #E8E8E8;
          border-color: #404040;
          background: linear-gradient(180deg, #171717 0%, var(--na-s2) 100%);
          box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.06),
            0 0 0 1px rgba(255, 255, 255, 0.03),
            0 0 22px -12px rgba(122, 184, 232, 0.22);
          transition:
            color 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            border-color 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            background 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            box-shadow 0.42s cubic-bezier(0.22, 0.61, 0.36, 1),
            transform 0.42s cubic-bezier(0.22, 0.61, 0.36, 1);
          transform: translateY(-1px);
        }
        .zs-quick-inject-btn.on {
          position: relative;
          color: var(--na-text);
          border-color: rgba(122, 184, 232, 0.28);
          background: linear-gradient(180deg, var(--na-s3) 0%, var(--na-s2) 100%);
          box-shadow:
            inset 0 1px 0 rgba(122, 184, 232, 0.06),
            0 0 22px -12px rgba(122, 184, 232, 0.16);
        }
        .zs-quick-inject-btn.on::before {
          content: '';
          position: absolute;
          top: 0;
          left: 12%;
          right: 12%;
          height: 2px;
          border-radius: 0 0 4px 4px;
          background: linear-gradient(90deg, transparent, rgba(122, 184, 232, 0.38), transparent);
          opacity: 0.85;
          pointer-events: none;
        }

        .zs-quick-inject-example-action {
          margin-top: 10px;
          display: flex;
          justify-content: center;
          flex-wrap: wrap;
          gap: 8px;
        }
        .zs-quick-inject-analyze {
          padding: 8px 16px;
          font-family: inherit;
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.03em;
          color: var(--na-text2);
          background: transparent;
          border: 1px dashed var(--na-bd4);
          border-radius: 10px;
          cursor: pointer;
          transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
        }
        .zs-quick-inject-analyze:hover:not(:disabled) {
          color: var(--na-text);
          border-color: #4D4D4D;
          border-style: solid;
          background: rgba(255, 255, 255, 0.03);
        }
        .zs-quick-inject-analyze:disabled {
          opacity: 0.45;
          cursor: not-allowed;
        }

        .zs-prompt-input {
          width: 100%;
          background: transparent;
          border: 0;
          outline: 0;
          color: var(--na-text);
          font-size: 17px;
          line-height: 1.7;
          resize: none;
          font-family: inherit;
          padding: 0;
          min-height: 70px;
        }
        .zs-prompt-input::placeholder {
          color: var(--na-muted2);
        }
        .zs-prompt-live-hint {
          display: flex;
          align-items: center;
          gap: 10px;
          margin-top: 10px;
          font-size: 12px;
          font-weight: 500;
          letter-spacing: 0.04em;
          color: #8A9BA8;
        }
        .zs-prompt-live-hint-dot {
          width: 6px; height: 6px;
          border-radius: 50%;
          background: rgba(122, 184, 232, 0.85);
          box-shadow: 0 0 10px rgba(122, 184, 232, 0.35);
          animation: zs-hint-pulse 1.4s ease-in-out infinite;
        }
        @keyframes zs-hint-pulse {
          0%, 100% { opacity: 0.55; }
          50%      { opacity: 1; }
        }
        .zs-tool-analyze-row {
          display: flex;
          justify-content: flex-start;
          flex-wrap: wrap;
          gap: 10px;
          margin-top: 12px;
          align-items: center;
        }
        .zs-tool-analyze-btn {
          padding: 7px 14px;
          font-family: inherit;
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.02em;
          color: #B0B0B0;
          background: rgba(255, 255, 255, 0.02);
          border: 1px solid var(--na-bd4);
          border-radius: 9px;
          cursor: pointer;
          transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
        }
        .zs-tool-analyze-btn:hover:not(:disabled) {
          color: #E4E4E4;
          border-color: rgba(122, 184, 232, 0.35);
          background: rgba(122, 184, 232, 0.06);
        }
        .zs-tool-analyze-btn:disabled {
          opacity: 0.45;
          cursor: not-allowed;
        }
        .zs-prompt-actions {
          display: flex; align-items: center; justify-content: space-between;
          margin-top: 12px;
          padding-top: 16px;
          border-top: 1px dashed var(--na-bd1);
          gap: 12px;
        }
        .zs-prompt-hint {
          display: inline-flex; align-items: center; gap: 8px;
          font-size: 12px;
          color: var(--na-muted2);
          letter-spacing: 0.01em;
        }
        .zs-prompt-btn {
          display: inline-flex; align-items: center; gap: 10px;
          padding: 11px 22px;
          background: linear-gradient(180deg, #b8ff4a 0%, #9FE810 48%, #8FD010 100%);
          color: var(--na-bg);
          border: 0;
          border-radius: 10px;
          font-size: 14px;
          font-weight: 700;
          cursor: pointer;
          transition: transform 0.18s, box-shadow 0.25s, opacity 0.2s;
          box-shadow:
            0 6px 22px -8px rgba(var(--na-green-rgb), 0.35),
            inset 0 1px 0 rgba(255, 255, 255, 0.22);
        }
        .zs-prompt-btn-engine:hover:not(:disabled) {
          transform: translateY(-1px) scale(1.025);
          box-shadow:
            0 14px 42px -10px rgba(var(--na-green-rgb), 0.34),
            inset 0 1px 0 rgba(255, 255, 255, 0.28),
            inset 0 -3px 14px rgba(0, 0, 0, 0.07);
        }
        .zs-prompt-btn-engine:active:not(:disabled) {
          transform: translateY(1px) scale(0.992);
        }
        .zs-prompt-btn:hover:not(:disabled) {
          transform: translateY(-1px);
          box-shadow: 0 10px 32px -8px rgba(var(--na-green-rgb), 0.35);
        }
        .zs-prompt-btn:disabled {
          opacity: 0.45;
          cursor: not-allowed;
        }
        .zs-spin {
          width: 12px; height: 12px;
          border: 1.5px solid rgba(0,0,0,0.25);
          border-top-color: var(--na-bg);
          border-radius: 50%;
          animation: zs-spin 0.7s linear infinite;
        }
        @keyframes zs-spin { to { transform: rotate(360deg); } }
        .zs-spin-soft {
          border-width: 1.5px;
          border-color: rgba(6, 6, 6, 0.14);
          border-top-color: rgba(6, 6, 6, 0.52);
          animation-duration: 0.95s;
        }

        .zs-chips {
          display: flex; flex-wrap: wrap; gap: 8px;
          margin-top: 18px;
          justify-content: center;
        }
        .zs-chip {
          position: relative;
          padding: 8px 14px;
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 999px;
          color: var(--na-muted);
          font-size: 13px;
          cursor: pointer;
          transition:
            color 0.38s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            border-color 0.38s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            background 0.38s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            box-shadow 0.38s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            transform 0.38s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .zs-chip-smart {
          display: inline-flex;
          align-items: center;
          gap: 8px;
        }
        .zs-chip-icon {
          display: flex;
          align-items: center;
          opacity: 0.65;
          transition: opacity 0.2s;
        }
        .zs-chip:hover {
          color: var(--na-text);
          border-color: var(--na-bd4);
          transform: translateY(-1px);
          box-shadow:
            0 0 26px -12px rgba(122, 184, 232, 0.22),
            inset 0 1px 0 rgba(255, 255, 255, 0.035);
        }
        .zs-chip:hover .zs-chip-icon { opacity: 1; }
        .zs-chip.on {
          color: var(--na-text);
          background: linear-gradient(180deg, var(--na-s3) 0%, var(--na-s2) 100%);
          border-color: rgba(122, 184, 232, 0.32);
          box-shadow:
            inset 0 1px 0 rgba(122, 184, 232, 0.07),
            0 0 26px -14px rgba(122, 184, 232, 0.2);
        }
        .zs-chip.on::before {
          content: '';
          position: absolute;
          top: 0;
          left: 16%;
          right: 16%;
          height: 2px;
          border-radius: 0 0 4px 4px;
          background: linear-gradient(90deg, transparent, rgba(122, 184, 232, 0.42), transparent);
          opacity: 0.88;
          pointer-events: none;
        }

        /* === RESULT === */
        .zs-result {
          margin-top: 28px;
          background: linear-gradient(180deg, var(--na-s2) 0%, var(--na-s1) 100%);
          border: 1px solid var(--na-bd2);
          border-radius: 16px;
          padding: 26px 28px;
          animation: zs-fade-up 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) both;
        }
        .zs-result-intelligence {
          border-color: var(--na-bd3);
          box-shadow:
            0 24px 70px -40px rgba(0, 0, 0, 0.85),
            0 0 48px -36px rgba(122, 184, 232, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.03);
        }
        .zs-result-system-line {
          margin-bottom: 2px;
        }
        .zs-result-system-name {
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.03em;
          color: var(--na-muted2);
        }
        @keyframes zs-fade-up {
          from { opacity: 0; transform: translateY(12px); }
          to   { opacity: 1; transform: translateY(0); }
        }
        .zs-result-head {
          display: flex; justify-content: space-between; align-items: flex-start;
          gap: 16px;
          padding-bottom: 18px;
          border-bottom: 1px dashed var(--na-bd1);
          margin-bottom: 22px;
        }
        .zs-result-head-main {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          gap: 8px;
          min-width: 0;
        }
        .zs-result-mode-row {
          display: flex;
          flex-wrap: wrap;
          align-items: center;
          gap: 8px;
        }
        .zs-result-mode-pill {
          display: inline-flex;
          align-items: center;
          gap: 8px;
          font-size: 11px;
          font-weight: 600;
          letter-spacing: 0.05em;
          padding: 5px 12px;
          border-radius: 999px;
          border: 1px solid var(--na-bd3);
          color: #8E8E8E;
          background: rgba(255, 255, 255, 0.02);
        }
        .zs-mode-status-dot {
          width: 7px; height: 7px;
          border-radius: 50%;
          flex-shrink: 0;
        }
        .zs-mode-status-live {
          background: rgba(122, 184, 232, 0.95);
          box-shadow: 0 0 0 3px rgba(122, 184, 232, 0.12), 0 0 14px rgba(122, 184, 232, 0.35);
          animation: zs-mode-live-pulse 2s ease-in-out infinite;
        }
        .zs-mode-status-idle {
          background: var(--na-muted2);
          box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.04);
        }
        @keyframes zs-mode-live-pulse {
          0%, 100% { opacity: 1; transform: scale(1); }
          50%      { opacity: 0.65; transform: scale(0.92); }
        }
        .zs-result-mode-pill.zs-result-mode-live {
          color: #A8C4DC;
          border-color: rgba(122, 184, 232, 0.28);
          background: rgba(122, 184, 232, 0.06);
        }
        .zs-result-mode-pill.zs-result-mode-fallback {
          color: #909090;
          border-color: var(--na-bd4);
          background: rgba(255, 255, 255, 0.02);
        }
        .zs-result-title {
          display: inline-flex; align-items: center; gap: 10px;
          font-size: 14px; font-weight: 600; color: var(--na-text);
          letter-spacing: 0.01em;
        }
        .zs-result-analysis-time {
          font-size: 11px;
          font-weight: 600;
          letter-spacing: 0.045em;
          color: #8899A8;
          margin-top: 6px;
        }
        .zs-result-glow {
          width: 8px; height: 8px; border-radius: 50%;
          background: var(--na-green);
          box-shadow: 0 0 12px rgba(var(--na-green-rgb), 0.35);
        }
        .zs-result-close {
          flex-shrink: 0;
          align-self: center;
          background: transparent; border: 1px solid var(--na-bd1);
          color: var(--na-muted);
          padding: 6px 14px;
          border-radius: 7px;
          font-size: 12px;
          cursor: pointer;
          transition: all 0.18s;
        }
        .zs-result-close:hover {
          color: var(--na-text);
          border-color: var(--na-bd3);
        }

        .zs-result-grid {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 14px;
          margin-bottom: 22px;
        }
        .zs-result-cell {
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 11px;
          padding: 16px 18px;
          display: flex; flex-direction: column; gap: 8px;
          min-height: 84px;
        }
        .zs-cell-wide { grid-column: span 2; }
        .zs-cell-warn {
          background: rgba(228, 163, 94, 0.08);
          border-color: rgba(228, 163, 94, 0.20);
        }
        .zs-cell-label {
          font-size: 12px;
          color: var(--na-muted2);
          font-weight: 500;
          letter-spacing: 0.02em;
        }
        .zs-cell-value {
          font-size: 14px;
          color: var(--na-text);
          line-height: 1.65;
        }
        .zs-cell-strong {
          font-weight: 600;
          font-size: 15px;
        }

        .zs-meter {
          display: flex; align-items: center; gap: 12px;
          margin-top: 4px;
        }
        .zs-meter-track {
          flex: 1;
          height: 6px;
          background: var(--na-bd1);
          border-radius: 3px;
          overflow: hidden;
        }
        .zs-meter-fill {
          height: 100%;
          border-radius: 3px;
          transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
          transform-origin: right center;
        }
        .zs-meter-animated .zs-meter-fill {
          animation: zs-meter-bar-reveal 1.05s cubic-bezier(0.2, 0.82, 0.2, 1) both;
        }
        @keyframes zs-meter-bar-reveal {
          from { transform: scaleX(0.08); opacity: 0.35; }
          to   { transform: scaleX(1); opacity: 1; }
        }
        .zs-meter-val {
          font-size: 13px;
          color: var(--na-text);
          font-weight: 600;
          min-width: 24px;
          text-align: left;
        }

        .zs-asset-row { display: flex; flex-wrap: wrap; gap: 6px; }
        .zs-asset-chip {
          padding: 4px 10px;
          background: var(--na-s3);
          border: 1px solid var(--na-bd1);
          border-radius: 999px;
          font-size: 12px;
          color: var(--na-text);
          font-weight: 500;
        }
        .zs-asset-chip.small { padding: 3px 8px; font-size: 11px; }

        .zs-result-summary {
          display: grid; gap: 10px;
          padding-top: 18px;
          border-top: 1px dashed var(--na-bd1);
        }
        .zs-summary-line {
          display: flex; gap: 14px; align-items: flex-start;
          font-size: 14px;
          color: var(--na-text);
          line-height: 1.7;
        }
        .zs-summary-num {
          color: var(--na-muted2);
          font-size: 12px;
          min-width: 28px;
          padding-top: 3px;
          font-weight: 500;
        }

        .zs-decision-stack {
          display: flex;
          flex-direction: column;
          gap: 14px;
          margin-bottom: 22px;
        }
        .zs-decision-card {
          position: relative;
          border-radius: 14px;
          padding: 18px 20px;
          border: 1px solid var(--na-bd2);
          background: linear-gradient(165deg, var(--na-s1) 0%, var(--na-bg) 100%);
          overflow: hidden;
          transition: border-color 0.25s ease, box-shadow 0.25s ease;
        }
        .zs-decision-card:hover {
          border-color: #323232;
          box-shadow: 0 16px 48px -36px rgba(0, 0, 0, 0.75);
        }
        .zs-decision-card-head {
          display: flex;
          align-items: center;
          gap: 10px;
          margin-bottom: 10px;
        }
        .zs-decision-kicker {
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.04em;
          color: var(--na-muted2);
        }
        .zs-decision-icon {
          width: 22px; height: 22px;
          border-radius: 6px;
          border: 1px solid var(--na-bd3);
          background: var(--na-s2);
          flex-shrink: 0;
        }
        .zs-decision-icon-target {
          box-shadow: inset 0 0 0 2px rgba(var(--na-green-rgb), 0.15);
        }
        .zs-decision-icon-warn {
          box-shadow: inset 0 0 0 2px rgba(228, 163, 94, 0.18);
        }
        .zs-decision-icon-eye {
          box-shadow: inset 0 0 0 2px rgba(122, 184, 232, 0.15);
        }
        .zs-decision-lead {
          margin: 0;
          font-size: 15px;
          font-weight: 600;
          line-height: 1.65;
          color: var(--na-text);
        }
        .zs-decision-body {
          margin: 0;
          font-size: 14px;
          line-height: 1.75;
          color: var(--na-text2);
        }
        .zs-decision-bullets {
          margin: 12px 0 0;
          padding: 0 18px 0 0;
          font-size: 13px;
          line-height: 1.75;
          color: var(--na-text2);
        }
        .zs-decision-bullets li { margin-bottom: 6px; }
        .zs-decision-market {
          border-right: 2px solid rgba(var(--na-green-rgb), 0.14);
        }
        .zs-decision-risk {
          border-right: 2px solid rgba(228, 163, 94, 0.18);
          background: rgba(228, 163, 94, 0.04);
        }
        .zs-decision-watch {
          border-right: 2px solid rgba(122, 184, 232, 0.16);
        }

        .zs-result-metrics {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 14px;
          margin-bottom: 18px;
        }
        .zs-result-metric {
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 11px;
          padding: 14px 16px;
          display: flex;
          flex-direction: column;
          gap: 8px;
          min-height: 76px;
        }
        .zs-result-assets {
          margin-bottom: 18px;
          padding: 16px 18px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 11px;
          display: flex;
          flex-direction: column;
          gap: 10px;
        }
        .zs-result-summary-engine {
          border-top: 1px dashed var(--na-bd2);
        }
        .zs-result-summary-head {
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.04em;
          color: var(--na-muted2);
          margin-bottom: 12px;
        }

        .zs-decision-console {
          position: relative;
        }
        .zs-console-inner-title {
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.07em;
          color: #738696;
          margin-top: 2px;
        }
        .zs-console-stack {
          display: flex;
          flex-direction: column;
          gap: 14px;
          margin-bottom: 20px;
        }
        .zs-console-block {
          border-radius: 14px;
          padding: 18px 20px;
          border: 1px solid #232323;
          background: linear-gradient(165deg, var(--na-s1) 0%, var(--na-bg) 100%);
          transition: border-color 0.25s ease;
        }
        .zs-console-block:hover {
          border-color: var(--na-bd3);
        }
        .zs-console-label {
          display: block;
          font-size: 11px;
          font-weight: 700;
          letter-spacing: 0.055em;
          color: #868686;
          margin-bottom: 10px;
        }
        .zs-console-lead {
          margin: 0;
          font-size: 15px;
          font-weight: 600;
          line-height: 1.65;
          color: var(--na-text);
        }
        .zs-console-body {
          margin: 0;
          font-size: 14px;
          line-height: 1.75;
          color: var(--na-text2);
        }
        .zs-console-bullets {
          margin: 12px 0 0;
          padding: 0 18px 0 0;
          font-size: 13px;
          line-height: 1.75;
          color: var(--na-text2);
        }
        .zs-console-bullets li { margin-bottom: 6px; }
        .zs-console-metrics-row {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 14px;
        }
        .zs-console-metric-card {
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 11px;
          padding: 14px 16px;
          display: flex;
          flex-direction: column;
          gap: 8px;
          min-height: 76px;
          transition: border-color 0.22s ease;
        }
        .zs-console-metric-card:hover {
          border-color: var(--na-bd2);
        }

        /* === TOOLS GRID === */
        .zs-tools-featured-row {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 20px;
          margin-bottom: 20px;
        }
        .zs-tools-grid {
          display: grid;
          grid-template-columns: repeat(4, 1fr);
          gap: 18px;
        }
        .zs-tools-grid-standard {
          margin-top: 0;
        }
        .zs-tool-card {
          position: relative;
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 16px;
          overflow: hidden;
          cursor: pointer;
          transition: transform 0.3s cubic-bezier(0.2,0.7,0.2,1), border-color 0.3s, background 0.3s;
          display: flex; flex-direction: column;
          min-height: 320px;
        }
        .zs-tool-card:hover, .zs-tool-card:focus-visible {
          transform: translateY(-4px);
          border-color: #343434;
          background: var(--na-s3);
          box-shadow:
            0 22px 56px -36px rgba(0, 0, 0, 0.85),
            0 0 38px -22px rgba(122, 184, 232, 0.14);
        }
        .zs-tool-card-scan {
          position: absolute;
          inset: 0;
          pointer-events: none;
          z-index: 2;
          background: linear-gradient(
            105deg,
            transparent 44%,
            rgba(122, 184, 232, 0.045) 50%,
            transparent 56%
          );
          opacity: 0;
          mix-blend-mode: screen;
        }
        .zs-tool-card:hover .zs-tool-card-scan,
        .zs-tool-card:focus-visible .zs-tool-card-scan {
          animation: zs-tool-scan-once 2s ease-out forwards;
        }
        @keyframes zs-tool-scan-once {
          0%   { transform: translateX(-28%); opacity: 0; }
          12%  { opacity: 1; }
          100% { transform: translateX(28%); opacity: 0; }
        }
        .zs-tool-card-featured {
          min-height: 378px;
          border-color: rgba(58, 58, 58, 0.95);
          background: linear-gradient(175deg, var(--na-s2) 0%, var(--na-s1) 100%);
          box-shadow:
            0 28px 70px -44px rgba(0, 0, 0, 0.9),
            0 0 46px -28px rgba(122, 184, 232, 0.07),
            inset 0 1px 0 rgba(255, 255, 255, 0.035);
        }
        .zs-tool-card-featured .zs-tool-visual {
          height: 156px;
          background: linear-gradient(180deg, var(--na-s1) 0%, #0A0A0A 100%);
        }
        .zs-tool-card-featured:hover {
          box-shadow:
            0 32px 76px -40px rgba(0, 0, 0, 0.88),
            0 0 48px -24px rgba(var(--na-green-rgb), 0.12),
            0 0 36px -20px rgba(122, 184, 232, 0.1);
        }
        .zs-tool-card-shine {
          position: absolute;
          inset: 0;
          background: linear-gradient(
            125deg,
            transparent 40%,
            rgba(255, 255, 255, 0.03) 48%,
            transparent 56%
          );
          opacity: 0;
          pointer-events: none;
          transition: opacity 0.45s ease;
        }
        .zs-tool-card:hover .zs-tool-card-shine {
          opacity: 1;
          animation: zs-tool-shine-sweep 1.2s ease forwards;
        }
        @keyframes zs-tool-shine-sweep {
          from { transform: translateX(-30%); }
          to   { transform: translateX(30%); }
        }
        .zs-tool-card-line {
          position: absolute;
          bottom: 0;
          left: 12%;
          right: 12%;
          height: 2px;
          border-radius: 2px;
          background: linear-gradient(90deg, transparent, rgba(122, 184, 232, 0.35), transparent);
          opacity: 0;
          transform: scaleX(0.3);
          transition: opacity 0.35s ease, transform 0.45s cubic-bezier(0.2, 0.75, 0.2, 1);
          pointer-events: none;
        }
        .zs-tool-card:hover .zs-tool-card-line {
          opacity: 1;
          transform: scaleX(1);
        }
        .zs-tool-card.zs-tool-card-active {
          border-color: rgba(122, 184, 232, 0.32);
          box-shadow:
            0 0 0 1px rgba(122, 184, 232, 0.1),
            0 14px 42px -28px rgba(0, 0, 0, 0.65);
          background: var(--na-s2);
        }
        .zs-tool-card.zs-tool-card-active:focus-visible {
          outline: none;
        }
        .zs-tool-visual {
          height: 130px;
          background: var(--na-s1);
          border-bottom: 1px solid var(--na-bd1);
          padding: 14px;
          position: relative;
          overflow: hidden;
        }
        .zs-news-lab .zs-visual {
          width: 100%; height: 100%;
          display: block;
        }
        .zs-tool-body {
          flex: 1;
          padding: 18px 20px 22px;
          display: flex; flex-direction: column;
        }
        .zs-tool-meta {
          font-size: 11px;
          color: var(--na-muted2);
          letter-spacing: 0.04em;
          margin-bottom: 8px;
          text-transform: none;
          font-weight: 500;
        }
        .zs-tool-title {
          font-size: 19px;
          font-weight: 600;
          margin: 0 0 10px;
          color: var(--na-text);
          letter-spacing: -0.01em;
          line-height: 1.3;
        }
        .zs-tool-desc {
          font-size: 13.5px;
          line-height: 1.7;
          color: var(--na-muted);
          margin: 0 0 18px;
          flex: 1;
        }
        .zs-tool-foot {
          padding-top: 14px;
          border-top: 1px dashed var(--na-bd1);
        }
        .zs-tool-cta {
          display: inline-flex; align-items: center; gap: 6px;
          font-size: 13px;
          color: var(--na-muted);
          font-weight: 500;
          transition: color 0.2s, gap 0.2s;
        }
        .zs-tool-card:hover .zs-tool-cta {
          color: var(--na-green);
          gap: 10px;
        }
        .zs-tool-hover {
          position: absolute;
          inset: 0;
          background: radial-gradient(circle at 50% 0%, rgba(var(--na-green-rgb), 0.10) 0%, transparent 50%);
          opacity: 0;
          pointer-events: none;
          transition: opacity 0.4s;
        }
        .zs-tool-card:hover .zs-tool-hover { opacity: 1; }
        .zs-tool-card.accent-amber:hover .zs-tool-cta { color: #E4A35E; }
        .zs-tool-card.accent-amber .zs-tool-hover {
          background: radial-gradient(circle at 50% 0%, rgba(228, 163, 94, 0.08) 0%, transparent 50%);
        }

        /* === SPOTLIGHT === */
        .zs-spot {
          position: relative;
          background: linear-gradient(180deg, var(--na-s2) 0%, var(--na-s1) 100%);
          border: 1px solid var(--na-bd2);
          border-radius: 18px;
          padding: 36px;
          overflow: hidden;
        }
        .zs-spot-bg {
          position: absolute; inset: 0;
          background:
            radial-gradient(ellipse 60% 50% at 100% 0%, rgba(var(--na-green-rgb), 0.10) 0%, transparent 60%),
            radial-gradient(ellipse 50% 40% at 0% 100%, rgba(122, 184, 232, 0.08) 0%, transparent 70%);
          pointer-events: none;
        }
        .zs-spot-inner {
          position: relative;
          display: grid;
          grid-template-columns: 1.5fr 1fr;
          gap: 40px;
        }
        .zs-spot-status {
          display: inline-flex; align-items: center; gap: 8px;
          font-size: 12px; color: var(--na-muted);
          margin-bottom: 18px;
        }
        .zs-spot-title {
          font-size: clamp(24px, 2.8vw, 32px);
          font-weight: 700;
          line-height: 1.2;
          letter-spacing: -0.018em;
          margin: 0 0 8px;
        }
        .zs-spot-sub {
          color: var(--na-muted);
          font-size: 14px;
          margin: 0 0 28px;
        }
        .zs-spot-meta-grid {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 16px;
          margin-bottom: 24px;
        }
        .zs-spot-meta {
          display: flex; flex-direction: column; gap: 6px;
          padding: 14px 16px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 10px;
        }
        .zs-spot-watch {
          padding: 16px 18px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd2);
          border-right: 2px solid rgba(var(--na-green-rgb), 0.22);
          border-radius: 10px;
        }
        .zs-spot-watch-label {
          font-size: 11px;
          color: var(--na-green);
          letter-spacing: 0.05em;
          font-weight: 600;
          display: block;
          margin-bottom: 6px;
        }
        .zs-spot-watch-text {
          font-size: 14.5px;
          line-height: 1.75;
          color: var(--na-text);
          margin: 0;
        }

        .zs-spot-right {
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 12px;
          padding: 22px 22px;
          display: flex; flex-direction: column; gap: 22px;
        }
        .zs-spot-metric-stack {
          display: flex; flex-direction: column; gap: 18px;
        }
        .zs-spot-metric { display: flex; flex-direction: column; gap: 8px; }
        .zs-spot-metric-head {
          display: flex; justify-content: space-between; align-items: center;
          font-size: 13px;
          color: var(--na-muted);
        }
        .zs-spot-metric-val {
          font-size: 14px;
          color: var(--na-text);
          font-weight: 600;
        }

        /* spotlight live timeline */
        .zs-spot-timeline {
          padding-top: 22px;
          border-top: 1px dashed var(--na-bd1);
          display: flex; flex-direction: column; gap: 14px;
        }
        .zs-spot-timeline-head {
          display: flex; justify-content: space-between; align-items: center;
        }
        .zs-spot-timeline-title {
          font-size: 12px;
          color: var(--na-muted2);
          font-weight: 500;
          letter-spacing: 0.04em;
        }
        .zs-spot-timeline-live {
          display: inline-flex; align-items: center; gap: 6px;
          font-size: 11px;
          color: var(--na-green);
          font-weight: 600;
          letter-spacing: 0.05em;
        }
        .zs-spot-timeline-rows {
          display: flex; flex-direction: column; gap: 14px;
        }
        .zs-stl-row {
          display: flex; flex-direction: column; gap: 6px;
        }
        .zs-stl-head {
          display: flex; justify-content: space-between; align-items: center;
        }
        .zs-stl-label {
          font-size: 12.5px;
          color: var(--na-text);
          font-weight: 500;
        }
        .zs-stl-tag {
          font-size: 11px;
          color: var(--na-muted);
          padding: 2px 8px;
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 999px;
        }
        .zs-stl-bars {
          display: flex; align-items: flex-end; gap: 3px;
          height: 22px;
          padding: 2px 0;
        }
        .zs-stl-bar {
          flex: 1;
          min-height: 3px;
          border-radius: 1px;
          transition: opacity 0.3s, height 0.3s;
        }

        /* === PIPELINE === */
        .zs-pipeline {
          position: relative;
          display: grid;
          grid-template-columns: repeat(5, 1fr);
          gap: 16px;
          padding-top: 20px;
        }
        .zs-pipeline-track {
          position: absolute;
          top: 70px;
          right: 8%;
          left: 8%;
          height: 1px;
          background: repeating-linear-gradient(
            to left,
            var(--na-bd2) 0 5px,
            transparent 5px 11px
          );
          z-index: 0;
          animation: zs-flow 1.6s linear infinite;
        }
        @keyframes zs-flow {
          to { background-position: 22px 0; }
        }
        .zs-node {
          position: relative;
          z-index: 1;
          opacity: 0;
          animation: zs-fade-up 0.6s cubic-bezier(0.2,0.7,0.2,1) forwards;
        }
        .zs-node-num {
          font-size: 12px;
          color: var(--na-muted2);
          margin-bottom: 14px;
          padding-right: 4px;
          font-weight: 500;
        }
        .zs-node-card {
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 14px;
          padding: 22px 20px 20px;
          transition: all 0.3s;
          height: 180px;
          display: flex; flex-direction: column;
        }
        .zs-node-card:hover {
          border-color: var(--na-bd3);
          background: var(--na-s3);
        }
        .zs-node-icon {
          width: 38px; height: 38px;
          border-radius: 9px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          display: flex; align-items: center; justify-content: center;
          color: var(--na-text);
          margin-bottom: 16px;
        }
        .zs-node-title {
          font-size: 16px;
          font-weight: 600;
          color: var(--na-text);
          margin-bottom: 8px;
          letter-spacing: -0.005em;
        }
        .zs-node-hint {
          font-size: 12.5px;
          color: var(--na-muted);
          line-height: 1.6;
        }

        /* === SMART EVENTS === */
        .zs-events-grid {
          display: grid;
          grid-template-columns: repeat(5, 1fr);
          gap: 14px;
        }
        .zs-event-card {
          position: relative;
          isolation: isolate;
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 14px;
          padding: 22px 24px 20px;
          cursor: pointer;
          transition:
            transform 0.2s ease,
            border-color 0.2s ease,
            background 0.2s ease,
            box-shadow 0.2s ease;
          display: flex;
          flex-direction: column;
          gap: 12px;
          overflow: hidden;
        }
        .zs-event-card::after {
          content: '';
          pointer-events: none;
          position: absolute;
          inset: 0;
          z-index: 0;
          opacity: 0;
          transition: opacity 0.2s ease;
          border-radius: inherit;
          background: linear-gradient(transparent, rgba(var(--na-green-rgb), 0.03));
        }
        .zs-event-card > * {
          position: relative;
          z-index: 1;
        }
        .zs-event-card--featured {
          transform: scale(1.02);
          background: rgba(255, 255, 255, 0.02);
          border-color: rgba(255, 255, 255, 0.12);
          box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.04);
        }
        .zs-event-card--pulse-high {
          box-shadow: inset 0 0 20px rgba(var(--na-green-rgb), 0.08);
        }
        .zs-event-card--featured.zs-event-card--pulse-high {
          box-shadow:
            0 0 0 1px rgba(255, 255, 255, 0.04),
            inset 0 0 20px rgba(var(--na-green-rgb), 0.08);
        }
        .zs-event-card:hover,
        .zs-event-card:focus-visible {
          border-color: rgba(var(--na-green-rgb), 0.22);
          background: var(--na-s3);
          transform: translateY(-4px);
        }
        .zs-event-card--featured:hover,
        .zs-event-card--featured:focus-visible {
          transform: scale(1.02) translateY(-4px);
          border-color: rgba(var(--na-green-rgb), 0.26);
          background: rgba(255, 255, 255, 0.035);
        }
        .zs-event-card:hover::after,
        .zs-event-card:focus-visible::after {
          opacity: 1;
        }
        .zs-event-head {
          display: flex; justify-content: space-between; align-items: center;
          gap: 10px;
        }
        .zs-event-cat {
          font-size: 10.5px;
          color: rgba(255, 255, 255, 0.72);
          padding: 5px 12px;
          background: rgba(255, 255, 255, 0.04);
          border: 1px solid rgba(255, 255, 255, 0.07);
          border-radius: 999px;
          font-weight: 500;
          letter-spacing: 0.02em;
          white-space: nowrap;
        }
        .zs-event-asset {
          font-size: 11.5px;
          color: #F5F5F5;
          font-weight: 600;
          white-space: nowrap;
        }
        .zs-event-time-line {
          font-size: 11px;
          font-weight: 600;
          color: rgba(255, 255, 255, 0.55);
          letter-spacing: 0.02em;
          line-height: 1.45;
        }
        .zs-event-copy {
          display: flex;
          flex-direction: column;
          gap: 8px;
        }
        .zs-event-title {
          font-size: 16px;
          font-weight: 700;
          color: var(--na-text);
          margin: 0;
          line-height: 1.45;
          letter-spacing: -0.01em;
        }
        .zs-event-insight {
          font-size: 14px;
          line-height: 1.8;
          color: rgba(255, 255, 255, 0.75);
          margin: 0;
        }
        .zs-event-strength {
          display: flex;
          flex-direction: column;
          gap: 6px;
          padding-top: 2px;
        }
        .zs-event-strength-label {
          font-size: 10px;
          font-weight: 600;
          letter-spacing: 0.04em;
          color: rgba(255, 255, 255, 0.42);
        }
        .zs-event-pulse {
          display: flex; align-items: flex-end; gap: 1.5px;
          height: 18px;
          padding: 4px 0 2px;
          transition: opacity 0.2s ease;
        }
        .zs-event-strength--low .zs-event-pulse {
          opacity: 0.5;
        }
        .zs-pulse-bar {
          flex: 1;
          height: 6px;
          background: var(--na-bd1);
          border-radius: 1px;
          transition: background 0.25s ease, height 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
        }
        .zs-pulse-bar.on {
          background: #D8D8D8;
          height: 14px;
          opacity: 0.75;
        }
        .zs-event-strength--high .zs-pulse-bar.on {
          background: #C5FF3D;
          opacity: 1;
          box-shadow: 0 0 10px rgba(var(--na-green-rgb), 0.35);
        }
        .zs-event-card:hover .zs-pulse-bar.on,
        .zs-event-card:focus-visible .zs-pulse-bar.on {
          background: var(--na-green);
          opacity: 1;
          height: 16px;
          box-shadow: 0 0 12px rgba(var(--na-green-rgb), 0.45);
        }
        .zs-event-card:hover .zs-event-strength--high .zs-pulse-bar.on,
        .zs-event-card:focus-visible .zs-event-strength--high .zs-pulse-bar.on {
          background: #C8FF4D;
        }
        .zs-event-foot {
          display: flex; align-items: center; gap: 8px;
          padding-top: 12px;
          border-top: 1px dashed rgba(255, 255, 255, 0.1);
          font-size: 12.5px;
          color: rgba(255, 255, 255, 0.72);
          font-weight: 600;
          opacity: 0.85;
          transition:
            color 0.2s ease,
            opacity 0.2s ease,
            transform 0.2s ease,
            gap 0.2s ease;
        }
        .zs-event-foot-label {
          display: inline-block;
        }
        .zs-event-card:hover .zs-event-foot,
        .zs-event-card:focus-visible .zs-event-foot {
          color: var(--na-text);
          opacity: 1;
          gap: 10px;
          transform: translateX(-3px);
        }

        /* === SMART ALERTS === */
        .zs-alerts {
          display: grid;
          grid-template-columns: 360px 1fr;
          gap: 18px;
        }
        .zs-alerts-side {
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 16px;
          padding: 22px;
          display: flex; flex-direction: column; gap: 22px;
          height: fit-content;
        }
        .zs-alerts-toggle {
          display: flex; justify-content: space-between; align-items: center;
          gap: 16px;
          padding-bottom: 22px;
          border-bottom: 1px dashed var(--na-bd1);
        }
        .zs-alerts-toggle-info { display: flex; flex-direction: column; gap: 4px; }
        .zs-alerts-toggle-title {
          display: inline-flex; align-items: center; gap: 8px;
          font-size: 14px; font-weight: 600; color: var(--na-text);
        }
        .zs-alerts-toggle-sub {
          font-size: 12px;
          color: var(--na-muted);
        }

        .zs-switch {
          position: relative;
          width: 46px; height: 26px;
          background: #181818;
          border: 1px solid var(--na-bd2);
          border-radius: 999px;
          cursor: pointer;
          transition: all 0.25s;
          flex-shrink: 0;
          padding: 0;
        }
        .zs-switch.on {
          background: var(--na-green);
          border-color: var(--na-green);
          box-shadow: 0 0 18px -4px rgba(var(--na-green-rgb), 0.35);
        }
        .zs-switch-thumb {
          position: absolute;
          top: 2px; right: 2px;
          width: 20px; height: 20px;
          background: var(--na-text);
          border-radius: 50%;
          transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .zs-switch.on .zs-switch-thumb {
          right: calc(100% - 22px);
          background: var(--na-bg);
        }

        .zs-alerts-filter { display: flex; flex-direction: column; gap: 10px; }
        .zs-filter-label {
          font-size: 12px;
          color: var(--na-muted2);
          font-weight: 500;
          letter-spacing: 0.02em;
        }
        .zs-filter-pills { display: flex; flex-wrap: wrap; gap: 6px; }
        .zs-filter-pill {
          padding: 7px 12px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 8px;
          color: var(--na-muted);
          font-size: 12.5px;
          cursor: pointer;
          transition: all 0.18s;
        }
        .zs-filter-pill:hover:not(:disabled) {
          color: var(--na-text);
          border-color: var(--na-bd3);
        }
        .zs-filter-pill.on {
          color: var(--na-text);
          background: var(--na-s3);
          border-color: rgba(var(--na-green-rgb), 0.22);
        }
        .zs-filter-pill:disabled { opacity: 0.4; cursor: not-allowed; }

        .zs-alerts-stats {
          display: flex; align-items: center; justify-content: space-between;
          padding-top: 18px;
          border-top: 1px dashed var(--na-bd1);
          gap: 12px;
        }
        .zs-alerts-stat { display: flex; flex-direction: column; gap: 3px; }
        .zs-stat-val { font-size: 22px; font-weight: 700; color: var(--na-text); }
        .zs-mark-all {
          background: transparent;
          border: 1px solid var(--na-bd1);
          color: var(--na-muted);
          padding: 8px 12px;
          border-radius: 8px;
          font-size: 12px;
          cursor: pointer;
          transition: all 0.18s;
        }
        .zs-mark-all:hover:not(:disabled) {
          color: var(--na-text); border-color: var(--na-bd3);
        }
        .zs-mark-all:disabled { opacity: 0.4; cursor: not-allowed; }

        .zs-alerts-note {
          font-size: 12.5px;
          line-height: 1.75;
          color: var(--na-muted2);
          margin: 0;
          padding-top: 18px;
          border-top: 1px dashed var(--na-bd1);
        }

        .zs-alerts-panel {
          background: var(--na-s2);
          border: 1px solid var(--na-bd1);
          border-radius: 16px;
          overflow: hidden;
          display: flex; flex-direction: column;
          max-height: 540px;
        }
        .zs-alerts-head {
          display: flex; justify-content: space-between; align-items: center;
          padding: 18px 22px;
          border-bottom: 1px solid var(--na-bd1);
          background: var(--na-s1);
        }
        .zs-alerts-head-label {
          font-size: 13px; font-weight: 600; color: var(--na-text);
        }
        .zs-alerts-head-meta {
          font-size: 12px; color: var(--na-muted);
        }
        .zs-alerts-list {
          overflow-y: auto;
          padding: 12px;
          display: flex; flex-direction: column; gap: 8px;
        }
        .zs-alerts-list.dim { opacity: 0.4; pointer-events: none; }
        .zs-alerts-list::-webkit-scrollbar { width: 6px; }
        .zs-alerts-list::-webkit-scrollbar-thumb {
          background: var(--na-bd1); border-radius: 3px;
        }
        .zs-alerts-list::-webkit-scrollbar-thumb:hover { background: var(--na-bd3); }

        .zs-alerts-empty {
          padding: 40px 20px;
          text-align: center;
          color: var(--na-muted2);
          font-size: 13px;
        }

        .zs-alert-card {
          display: flex; align-items: stretch; gap: 14px;
          padding: 14px 16px 14px 14px;
          background: var(--na-s1);
          border: 1px solid var(--na-bd1);
          border-radius: 11px;
          text-align: right;
          cursor: pointer;
          transition: all 0.2s;
          font-family: inherit;
          width: 100%;
        }
        .zs-alert-card:hover {
          background: var(--na-s3);
          border-color: var(--na-bd3);
        }
        .zs-alert-indicator {
          width: 3px;
          border-radius: 2px;
          flex-shrink: 0;
        }
        .zs-alert-card.tone-green  .zs-alert-indicator { background: var(--na-green); }
        .zs-alert-card.tone-amber  .zs-alert-indicator { background: #E4A35E;   }
        .zs-alert-card.tone-cool   .zs-alert-indicator { background: #7AB8E8;   }
        .zs-alert-card.tone-neutral .zs-alert-indicator { background: var(--na-bd3); }

        .zs-alert-intensity-opportunity.unread {
          box-shadow: 0 0 26px -15px rgba(var(--na-green-rgb), 0.26);
          border-color: rgba(var(--na-green-rgb), 0.14);
        }
        .zs-alert-intensity-hazard.unread {
          box-shadow: 0 0 26px -15px rgba(228, 163, 94, 0.28);
          border-color: rgba(228, 163, 94, 0.2);
        }
        .zs-alert-intensity-trap.unread {
          box-shadow: 0 0 28px -14px rgba(228, 163, 94, 0.32);
          border-color: rgba(228, 163, 94, 0.22);
        }
        .zs-alert-intensity-trap.unread .zs-alert-indicator {
          background: #E4A35E !important;
          box-shadow: 0 0 10px rgba(228, 163, 94, 0.26);
        }
        .zs-alert-intensity-noise.unread {
          box-shadow: 0 0 22px -14px rgba(120, 120, 120, 0.14);
          border-color: rgba(90, 90, 90, 0.35);
        }
        .zs-alert-intensity-noise.unread .zs-alert-indicator {
          background: #5A5A5A !important;
          box-shadow: 0 0 8px rgba(255, 255, 255, 0.06);
        }
        .zs-alert-card.unread {
          animation:
            zs-alert-enter 0.55s cubic-bezier(0.2, 0.75, 0.2, 1) both,
            zs-alert-unread-glow 2.8s ease-in-out 0.4s 2;
        }
        @keyframes zs-alert-unread-glow {
          0%, 100% { filter: brightness(1); }
          50%      { filter: brightness(1.04); }
        }
        @keyframes zs-alert-enter {
          from {
            opacity: 0;
            transform: translateY(8px);
          }
          to {
            opacity: 1;
            transform: translateY(0);
          }
        }

        .zs-alerts-engine-section .zs-sec-caption {
          letter-spacing: 0.06em;
        }

        .zs-reveal-section {
          opacity: 0;
          transform: translateY(16px);
          animation: zs-reveal-up 0.75s cubic-bezier(0.2, 0.72, 0.2, 1) both;
        }
        .zs-hero.zs-reveal-section {
          animation-duration: 0.85s;
        }
        @keyframes zs-reveal-up {
          to {
            opacity: 1;
            transform: translateY(0);
          }
        }
        .zs-news-lab > .zs-reveal-section:nth-of-type(2) { animation-delay: 0.06s; }
        .zs-news-lab > .zs-reveal-section:nth-of-type(3) { animation-delay: 0.1s; }
        .zs-news-lab > .zs-reveal-section:nth-of-type(4) { animation-delay: 0.14s; }
        .zs-news-lab > .zs-reveal-section:nth-of-type(5) { animation-delay: 0.18s; }
        .zs-news-lab > .zs-reveal-section:nth-of-type(6) { animation-delay: 0.22s; }
        .zs-news-lab > .zs-reveal-section:nth-of-type(7) { animation-delay: 0.26s; }

        .zs-alert-body {
          flex: 1;
          display: flex; flex-direction: column; gap: 6px;
        }
        .zs-alert-top {
          display: flex; align-items: center; gap: 8px;
          font-size: 11px;
          color: var(--na-muted);
        }
        .zs-alert-type {
          letter-spacing: 0.02em;
          font-weight: 500;
        }
        .zs-alert-new {
          padding: 2px 8px;
          background: rgba(var(--na-green-rgb), 0.10);
          border: 1px solid rgba(var(--na-green-rgb), 0.22);
          color: var(--na-green);
          border-radius: 999px;
          font-size: 10px;
          font-weight: 600;
        }
        .zs-alert-title {
          font-size: 14px;
          font-weight: 500;
          color: var(--na-text);
          line-height: 1.5;
        }
        .zs-alert-card.read .zs-alert-title { color: var(--na-muted); font-weight: 400; }
        .zs-alert-foot {
          display: flex; align-items: center; justify-content: space-between;
          margin-top: 4px;
        }
        .zs-alert-foot-time {
          flex-direction: column;
          align-items: stretch;
          justify-content: flex-start;
          gap: 6px;
        }
        .zs-alert-time-line {
          font-size: 11px;
          font-weight: 600;
          color: var(--na-muted2);
          letter-spacing: 0.02em;
          line-height: 1.45;
        }
        .zs-alert-time {
          font-size: 11px;
          color: var(--na-muted2);
        }

        /* === FOOT === */
        .zs-foot-line {
          max-width: 1280px;
          margin: 100px auto 0;
          padding: 0 32px;
          display: grid;
          grid-template-columns: 1fr auto 1fr;
          align-items: center;
          gap: 18px;
        }
        .zs-foot-line span:first-child,
        .zs-foot-line span:last-child {
          height: 1px;
          background: linear-gradient(to right, transparent, var(--na-bd1), transparent);
        }
        .zs-foot-brand {
          font-size: 11px;
          color: var(--na-muted2);
          letter-spacing: 0.15em;
          font-weight: 600;
        }

        /* === RESPONSIVE === */
        @media (max-width: 1180px) {
          .zs-events-grid { grid-template-columns: repeat(3, 1fr); }
        }
        @media (max-width: 1080px) {
          .zs-tools-featured-row { grid-template-columns: 1fr; }
          .zs-result-metrics,
          .zs-console-metrics-row { grid-template-columns: 1fr; }
          .zs-tools-grid { grid-template-columns: repeat(2, 1fr); }
          .zs-pipeline { grid-template-columns: repeat(5, 1fr); gap: 8px; }
          .zs-pipeline-track { display: none; }
          .zs-node-card { padding: 18px 14px; height: auto; min-height: 160px; }
          .zs-spot-inner { grid-template-columns: 1fr; gap: 24px; }
          .zs-alerts { grid-template-columns: 1fr; }
        }

        @media (max-width: 720px) {
          .zs-section { padding: 60px 18px 0; }
          .zs-hero { padding: 80px 18px 0; }
          .zs-hero-inner { padding: 30px 0 20px; }
          .zs-hero-title { line-height: 1.1; }
          .zs-prompt-section { padding: 28px 18px 0; }
          .zs-prompt-frame { padding: 18px 18px 14px; border-radius: 14px; }
          .zs-prompt-input { font-size: 15px; min-height: 60px; }
          .zs-prompt-actions { flex-direction: column; align-items: stretch; gap: 12px; }
          .zs-prompt-btn { justify-content: center; }
          .zs-tools-grid { grid-template-columns: 1fr; }
          .zs-tool-card { min-height: 280px; }
          .zs-pipeline { grid-template-columns: 1fr; gap: 12px; }
          .zs-spot { padding: 24px 22px; }
          .zs-spot-meta-grid { grid-template-columns: 1fr; }
          .zs-result-grid { grid-template-columns: 1fr; }
          .zs-cell-wide { grid-column: span 1; }
          .zs-events-grid { grid-template-columns: 1fr; }
          .zs-alerts { grid-template-columns: 1fr; }
          .zs-alerts-panel { max-height: 480px; }
          .zs-foot-line { margin-top: 70px; padding: 0 18px; }
          .zs-sec-title { font-size: 26px; }
          .zs-ticker-track { animation-duration: 38s; }
        }

        @media (prefers-reduced-motion: reduce) {
          .zs-event-card,
          .zs-event-card--featured,
          .zs-event-card:hover,
          .zs-event-card:focus-visible,
          .zs-event-card--featured:hover,
          .zs-event-card--featured:focus-visible,
          .zs-event-card:hover .zs-event-foot,
          .zs-event-card:focus-visible .zs-event-foot {
            transform: none !important;
          }
          .zs-event-card::after {
            transition: none;
          }
          .zs-hero-grid-dots,
          .zs-hero-drift,
          .zs-hero-center-pulse,
          .zs-hero-scan-fast,
          .zs-hero-scan-slow,
          .zs-hero-title-radial-pulse,
          .zs-ticker-track,
          .zs-live-feed-dot,
          .zs-ticker-cap-pulse,
          .zs-hero-status-dot,
          .zs-pulse-dot,
          .zs-mode-status-live,
          .zs-prompt-live-hint-dot,
          .zs-meter-animated .zs-meter-fill,
          .zs-tool-card-shine,
          .zs-tool-card-line,
          .zs-tool-card:hover .zs-tool-card-scan,
          .zs-tool-card:focus-visible .zs-tool-card-scan,
          .zs-alert-card.unread,
          .zs-reveal-section {
            animation: none !important;
          }
          .zs-reveal-section {
            opacity: 1;
            transform: none;
          }
          .zs-live-dot {
            animation: none !important;
          }
        }

        .zs-live-indicator {
          display: flex;
          align-items: center;
          gap: 8px;
          font-size: 12px;
          opacity: 0.8;
        }

        .zs-live-dot {
          width: 6px;
          height: 6px;
          border-radius: 50%;
          background: var(--na-green);
          box-shadow: 0 0 8px var(--na-green);
          animation: zs-live-dot-pulse 1.5s infinite;
        }

        @keyframes zs-live-dot-pulse {
          0% { opacity: 0.3; }
          50% { opacity: 1; }
          100% { opacity: 0.3; }
        }

        .zs-live-indicator-fallback .zs-live-dot {
          background: #666;
          box-shadow: none;
          animation: none;
        }

/* ═══════════════════════════════════════════════════════════════════════
   LIGHT MODE — /markets/news-analysis (.zs-news-lab)
   Light is the base. Ivory page, white cards, slate text, calm hairlines.
   Brand green heavily reduced → slate (only the tiny live dot stays green).
   Dark mode keeps its exact greyscale palette above.
   ═══════════════════════════════════════════════════════════════════════ */
html.light .zs-news-lab{
  --na-bg: #F7F8F5;
  --na-s1: #FFFFFF;
  --na-s2: #FFFFFF;
  --na-s3: #F4F6F2;
  --na-bd1: #E5E7EB;
  --na-bd2: #E2E8F0;
  --na-bd3: #CBD5E1;
  --na-bd4: #94A3B8;
  --na-text: #0F172A;
  --na-text2: #334155;
  --na-muted: #64748B;
  --na-muted2: #94A3B8;
  /* Tiny live/status dot stays a calm green; everything else (soft fills,
     glows, borders that used the green channel) becomes neutral slate. */
  --na-green: #4D7C0F;
  --na-green-rgb: 17, 24, 39;
}

