:root{--accent:#1C6FD2;--accent-2:#1556A8;--accent-soft:rgba(28,111,210,.16);--accent-mist:rgba(28,111,210,.08);--accent-2-text:#1556A8;--light-accent:#1C6FD2;--logo-violet:#1C6FD2;--cream:#F7F9FB;--cream-2:#F4F1EA;--white:#FFFFFF;--bg-app:#F7F9FB;--bg-side:#EEF1F5;--bg-soft:#F0EDE5;--ink:#181B1F;--ink-2:#3E3E3C;--ink-3:#6B6A65;--ink-4:#9D9C95;--ink-5:#C5C3BB;--line:rgba(25,25,24,.08);--line-2:rgba(25,25,24,.14);--green:#1D8A5D;--green-soft:rgba(43,197,136,.14);--rose:#B33860;--rose-soft:rgba(236,104,137,.14);--amber:#8C6418;--amber-soft:rgba(245,192,86,.18);--teal:#0E7A6E;--teal-soft:rgba(46,178,161,.14);--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-2xl:28px;--r-pill:999px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;font-size:14px;color:var(--ink);background:var(--bg-app);-webkit-font-smoothing:antialiased}em{font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;font-style:italic;font-weight:500}a{color:inherit;text-decoration:none}button{font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;cursor:pointer;border:none;background:none;color:inherit}.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.side{background:var(--bg-side);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.side-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;border-bottom:1px solid var(--line);margin-bottom:12px}.side-brand-mark{width:26px;height:26px}.side-brand-name{font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;font-weight:600;letter-spacing:-.01em;font-size:15px}.side-group{margin-top:14px;padding:0 10px;font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-4);font-weight:700;margin-bottom:6px}.side-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-sm);color:var(--ink-2);font-weight:500;font-size:13.5px;position:relative}.side-item:hover{background:rgba(25,25,24,.045);color:var(--ink)}.side-item.active{background:var(--white);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(25,25,24,.05),0 0 0 1px var(--line)}.side-item .ico{width:16px;height:16px;color:var(--ink-3)}.side-item.active .ico{color:var(--accent)}.side-item .badge{margin-left:auto;font-size:10.5px;background:var(--accent-mist);color:var(--accent-2-text);padding:1px 7px;border-radius:var(--r-pill);font-weight:600}.side-item .pip-live{margin-left:auto;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px var(--green-soft);animation:pulse-dot 2s ease-out infinite}@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.45}}.side-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.side-plan{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-md);background:var(--white);border:1px solid var(--line)}.side-plan-avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--white);display:grid;place-items:center;font-weight:700;font-size:13px}.side-plan-meta{flex:1;min-width:0}.side-plan-name{font-size:13px;font-weight:600;color:var(--ink)}.side-plan-tier{font-size:11.5px;color:var(--ink-3)}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:12px 28px;border-bottom:1px solid var(--line);background:var(--cream);position:sticky;top:0;z-index:10}.topbar-search{flex:1;max-width:560px;display:flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:8px 14px;font-size:13.5px;color:var(--ink-3)}.topbar-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-mist);color:var(--ink)}.topbar-search input{border:none;outline:none;background:none;flex:1;font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;font-size:inherit;color:var(--ink)}.topbar-search .kbd{font-size:10.5px;padding:2px 6px;border-radius:5px;background:var(--bg-soft);color:var(--ink-3);font-weight:600}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.topbar-credit{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:var(--r-pill);background:var(--white);border:1px solid var(--line);font-size:12px;color:var(--ink-2);font-weight:500}.topbar-credit strong{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.topbar-credit .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.topbar-btn{padding:7px 13px;border-radius:var(--r-md);background:var(--ink);color:var(--cream);font-size:13px;font-weight:600}.topbar-btn:hover{background:#000}.content{padding:28px 32px 60px;max-width:1320px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-end;gap:18px;margin-bottom:24px}.page-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-weight:700;margin-bottom:6px}.page-title{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink);margin:0}.page-sub{font-size:14px;color:var(--ink-3);margin:6px 0 0}.page-actions{margin-left:auto;display:flex;gap:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--r-md);background:var(--white);border:1px solid var(--line);font-size:13px;color:var(--ink);font-weight:600}.btn:hover{border-color:var(--line-2)}.btn.primary{background:var(--accent);color:var(--white);border-color:var(--accent)}.btn.primary:hover{background:var(--accent-2);border-color:var(--accent-2)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn.ghost:hover{background:rgba(25,25,24,.04)}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 18px 16px}.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:700;display:flex;align-items:center;gap:7px}.stat-label .pip{width:6px;height:6px;border-radius:50%;background:var(--accent)}.stat-num{font-size:30px;font-weight:700;letter-spacing:-.025em;line-height:1;margin:12px 0 6px;color:var(--ink);font-variant-numeric:tabular-nums}.stat-delta{font-size:12px;color:var(--ink-3)}.stat-delta .up{color:var(--green);font-weight:600}.stat-delta .down{color:var(--rose);font-weight:600}.two-col{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px}.card-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.card-title{font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.card-sub{font-size:12px;color:var(--ink-3);margin-left:6px;font-weight:500}.card-link{margin-left:auto;font-size:12.5px;color:var(--accent-2-text);font-weight:600}.card-link:hover{color:var(--accent)}.queue{display:flex;flex-direction:column}.queue-row{display:grid;grid-template-columns:36px 1fr auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.queue-row:last-child{border-bottom:none}.queue-logo{width:36px;height:36px;border-radius:9px;background:var(--ink);color:var(--white);display:grid;place-items:center;font-weight:700;font-size:14px}.queue-logo.t1{background:#2D2D2A}.queue-logo.t2{background:#3E3E3C}.queue-logo.t3{background:#4F4F4C}.queue-logo.t4{background:#6B6A65}.queue-meta{min-width:0}.queue-name{font-size:14px;font-weight:600;color:var(--ink)}.queue-why{font-size:12.5px;color:var(--ink-3);margin-top:2px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.queue-why .badge{font-size:9.5px;padding:2px 6px;border-radius:5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.b-funding{background:var(--rose-soft);color:var(--rose)}.b-hiring{background:var(--accent-mist);color:var(--accent-2-text)}.b-tech{background:var(--amber-soft);color:var(--amber)}.b-exec{background:var(--teal-soft);color:var(--teal)}.b-launch{background:rgba(86,158,245,.16);color:#2566B5}.b-voice{background:rgba(176,132,245,.16);color:#6F45C0}.queue-score{text-align:right;font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--accent-2-text);font-variant-numeric:tabular-nums;min-width:36px}.queue-score-label{font-size:10px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.queue-cta{font-size:12px;color:var(--ink-3);font-weight:600;padding:6px 10px;border-radius:var(--r-sm);border:1px solid var(--line)}.queue-cta:hover{color:var(--ink);border-color:var(--line-2)}.live-strip{display:flex;flex-direction:column}.live-row{display:grid;grid-template-columns:64px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.live-row:last-child{border-bottom:none}.live-row .badge{font-size:9.5px;padding:3px 6px;border-radius:5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;text-align:center;height:fit-content;line-height:1.2}.live-text{min-width:0}.live-co{font-weight:600;color:var(--ink);font-size:13px}.live-sub{font-size:12px;color:var(--ink-3);margin-top:1px}.live-time{font-size:11px;color:var(--ink-4);font-variant-numeric:tabular-nums;padding-top:3px}.crawl-tile{margin-top:22px;background:linear-gradient(135deg,#1A1F4A 0%,#F7F9FB 100%);border-radius:var(--r-lg);padding:22px;color:var(--cream)}.crawl-tile-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.crawl-tile-dot{width:8px;height:8px;border-radius:50%;background:#6EE7B7;box-shadow:0 0 12px #6EE7B7;animation:pulse-dot 2s ease-out infinite}.crawl-tile-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:rgba(255,255,255,.7)}.crawl-tile-num{font-size:26px;font-weight:700;letter-spacing:-.025em;line-height:1;font-variant-numeric:tabular-nums;margin-bottom:4px}.crawl-tile-sub{font-size:12px;color:rgba(255,255,255,.65)}.crawl-tile-row{display:flex;gap:16px;margin-top:14px;font-size:12px;border-top:1px solid rgba(255,255,255,.12);padding-top:12px}.crawl-tile-row>div{flex:1}.crawl-tile-row strong{display:block;font-size:14px;font-weight:700;color:var(--cream);margin-bottom:2px}.welcome{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;align-items:center;gap:18px;margin-bottom:22px}.welcome-icon{width:48px;height:48px;border-radius:12px;background:var(--accent-mist);color:var(--accent);display:grid;place-items:center;font-size:22px;font-weight:700;flex-shrink:0}.welcome-body{flex:1;min-width:0}.welcome-title{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:3px}.welcome-sub{font-size:13px;color:var(--ink-3)}.welcome-cta{padding:9px 16px;border-radius:var(--r-md);background:var(--ink);color:var(--cream);font-size:13px;font-weight:600}.muted{color:var(--ink-3)}.kbd{font-size:10.5px;padding:2px 6px;border-radius:5px;background:var(--bg-soft);color:var(--ink-3);font-weight:600;border:1px solid var(--line)}.topbar-freshness{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:var(--r-pill);background:var(--white);border:1px solid var(--line);font-size:12px;color:var(--ink-2);font-weight:500;cursor:pointer;font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif}.topbar-freshness:hover{border-color:var(--line-2)}.topbar-freshness strong{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.topbar-freshness .fdot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 2px var(--green-soft)}/* ── SignalMama brand mark + lockup (v2, with signal-ping animation) ──
 * Replaces the static <svg><use href="#icon-logo"> in nav/footer/sidebar
 * with an HTML structure that supports the brand-spec ambient ping +
 * breathing animation. Geometry per the brand pkg: three concentric
 * circles at 36.4% / 68.2% / 100% of mark width, opacity 1 / 0.5 / 0.25.
 * Sizes scale from a single width on .sm-mark.
 *
 * Wordmark: "SignalMama" as one visual word — manual -0.05em margin on
 * the .sm-mama span closes the seam between weight 600 "Signal" and
 * weight 400 "Mama" per the v2 brand HTML.
 *
 * Animation:
 *   .r0 breathes (scale 1 → 1.08 → 1, 3s)
 *   ::before / ::after = two staggered ping rings emanating outward
 *   Hover speeds the cycle up to 1.6s
 *   Whole block is gated on prefers-reduced-motion: no-preference. */
.sm-mark {
  position: relative;
  width: 28px;
  aspect-ratio: 1;
  flex: none;
  color: #1C6FD2;
  display: inline-block;
  vertical-align: middle;
}
.sm-mark .ring {
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%;
  background: currentColor;
}
.sm-mark .r0 { width: 36.4%; aspect-ratio: 1; opacity: 1;    z-index: 3; }
.sm-mark .r1 { width: 68.2%; aspect-ratio: 1; opacity: 0.5;  z-index: 2; }
.sm-mark .r2 { width: 100%;  aspect-ratio: 1; opacity: 0.25; z-index: 1; }

/* Lockup typography — Signal 600 + Mama 400 + manual kern */
.sm-lockup { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.sm-word {
  font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1;
  color: #181B1F;
}
.sm-word .sm-mama {
  font-weight: 400;
  margin-left: -0.05em;
  color: #1C6FD2;
}

/* Ambient ping + breathing core. Only when motion is welcome. */
@media (prefers-reduced-motion: no-preference) {
  .sm-mark::before,
  .sm-mark::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 36.4%;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    z-index: 0;
    opacity: 0;
    animation: sm-ping 3s cubic-bezier(.22,.61,.36,1) infinite;
    box-sizing: border-box;
  }
  .sm-mark::after { animation-delay: 1.5s; }
  .sm-mark .r0   { animation: sm-breathe 3s ease-in-out infinite; }
  .sm-lockup:hover .sm-mark::before,
  .sm-lockup:hover .sm-mark::after { animation-duration: 1.6s; }
}
@keyframes sm-ping {
  0%   { transform: scale(1);    opacity: 0.55; }
  70%  {                         opacity: 0; }
  100% { transform: scale(2.9);  opacity: 0; }
}
@keyframes sm-breathe {
  0%, 100% { transform: scale(1);    }
  50%      { transform: scale(1.08); }
}
/* ── Signal Mama brand mark + lockup · canonical (brand pkg v1.0) ──
 * Three concentric rings at 36.4% / 68.2% / 100% of mark width, opacities
 * 1 / .5 / .25. Wordmark is one color (Ink) — differentiation is weight
 * alone, 600 "Signal" + 400 "Mama". Animation: breathing core + two
 * staggered ambient ping rings, gated on prefers-reduced-motion.
 *
 * Sizes are proportional — set width on .mark and the rings + ping scale.
 * Per-context wrappers (.logo / .footer-logo / .side-brand) own width
 * and gap; everything else inherits from the canonical rules. */

.logo, .footer-logo, .side-brand { text-decoration: none; }

.mark {
  position: relative;
  aspect-ratio: 1;
  flex: none;
  color: #1C6FD2;
  display: inline-block;
  vertical-align: middle;
}
.mark .ring {
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%;
  background: currentColor;
}
.mark .r0 { width: 36.4%; aspect-ratio: 1; opacity: 1;    z-index: 3; }
.mark .r1 { width: 68.2%; aspect-ratio: 1; opacity: 0.5;  z-index: 2; }
.mark .r2 { width: 100%;  aspect-ratio: 1; opacity: 0.25; z-index: 1; }

/* Per-context mark size */
.logo .mark        { width: 28px; }
.footer-logo .mark { width: 32px; }
.side-brand .mark  { width: 26px; }

.wordmark {
  font-family: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1;
  color: #181B1F;
}
.wordmark .mama { font-weight: 400; }

/* Per-context wordmark size */
.logo .wordmark        { font-size: 17px; }
.footer-logo .wordmark { font-size: 18px; }
.side-brand .wordmark  { font-size: 15px; }

/* Ambient ping + breathing core — only when motion is welcome. */
@media (prefers-reduced-motion: no-preference) {
  .mark::before, .mark::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 36.4%;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    z-index: 0;
    opacity: 0;
    box-sizing: border-box;
    animation: sm-ping 3s cubic-bezier(.22,.61,.36,1) infinite;
  }
  .mark::after { animation-delay: 1.5s; }
  .mark .r0   { animation: sm-breathe 3s ease-in-out infinite; }
  .logo:hover .mark::before, .logo:hover .mark::after,
  .footer-logo:hover .mark::before, .footer-logo:hover .mark::after,
  .side-brand:hover .mark::before, .side-brand:hover .mark::after { animation-duration: 1.6s; }
}
@keyframes sm-ping {
  0%   { transform: scale(1);   opacity: 0.55; }
  70%  {                        opacity: 0; }
  100% { transform: scale(2.9); opacity: 0; }
}
@keyframes sm-breathe {
  0%, 100% { transform: scale(1);    }
  50%      { transform: scale(1.08); }
}
