:root{
    color-scheme:dark;
    --bg:#0a0b0f;
    --bg-1:#111319;
    --bg-2:#171a22;
    --bg-3:#1d212b;
    --border:#242732;
    --border-soft:#1a1d26;
    --text:#eceef2;
    --text-dim:#9297a6;
    --text-faint:#5c6070;
    --purple:#8b7cf6;
    --orange:#f5a35c;
    --green:#4ade80;
    --green-dim:#1c3a2a;
    --amber:#fb923c;
    --amber-dim:#3a2814;
    --pink:#f472b6;
    --pink-dim:#3a1d2e;
    --blue:#60a5fa;
    --blue-dim:#17284a;
    --red:#ef4444;
    --red-dim:#3a1414;
    --radius:14px;
    --ad-rail-w:clamp(250px, 18.65vw, 358px);
  }
  :root[data-theme="light"]{
    color-scheme:light;
    --bg:#f4f6fb;
    --bg-1:#ffffff;
    --bg-2:#eef1f7;
    --bg-3:#e5e9f2;
    --border:#d7dce7;
    --border-soft:#e3e7ef;
    --text:#161923;
    --text-dim:#5f6676;
    --text-faint:#858c9d;
    --green:#168a49;
    --green-dim:#dff4e7;
    --amber:#c66a18;
    --amber-dim:#faead9;
    --pink:#b83d7e;
    --pink-dim:#f7e1ed;
    --blue:#3478d4;
    --blue-dim:#e2edfb;
    --red:#d63b3b;
    --red-dim:#f9e2e2;
  }
  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; overflow-x:hidden; }
  body{
    margin:0;
    background:
      radial-gradient(900px 500px at 15% -10%, rgba(139,124,246,0.10), transparent 60%),
      radial-gradient(900px 500px at 100% 0%, rgba(245,163,92,0.08), transparent 55%),
      var(--bg);
    color:var(--text);
    font-family:'Inter', sans-serif;
    -webkit-font-smoothing:antialiased;
    min-height:100vh;
    overflow-x:hidden;
    transition:background-color .22s ease,color .22s ease;
  }
  :root[data-theme="light"] body{
    background:
      radial-gradient(900px 500px at 15% -10%, rgba(91,75,216,.09), transparent 60%),
      radial-gradient(900px 500px at 100% 0%, rgba(198,106,24,.08), transparent 55%),
      var(--bg);
  }
  .mono{ font-family:'IBM Plex Mono', monospace; }
  a{ color:inherit; text-decoration:none; }
  ::selection{ background:var(--purple); color:#0a0b0f; }
  button{ font-family:inherit; }

  .grad-ai{
    background:linear-gradient(90deg, var(--purple), var(--orange));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
  }

  /* ===== NAV ===== */
  nav.topnav{
    position:sticky; top:0; z-index:50;
    display:flex; align-items:center; justify-content:space-between;
    gap:16px;
    padding:14px 28px;
    background:rgba(10,11,15,0.85);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border-soft);
  }
  :root[data-theme="light"] nav.topnav{ background:rgba(255,255,255,.86); }
  .logo{ display:flex; align-items:center; gap:10px; cursor:pointer; flex:none; }
  .logo-badge{
    width:34px; height:34px; border-radius:9px;
    display:flex; align-items:center; justify-content:center;
    background:transparent;
    border:1px solid color-mix(in srgb,var(--purple) 38%,var(--border));
    color:var(--purple);
    overflow:visible;
  }
  .robot-mark{ width:27px; height:27px; overflow:visible; animation:robot-float 3.2s ease-in-out infinite; }
  .robot-shell,.robot-antenna,.robot-smile{ fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
  .robot-antenna,.robot-smile{ stroke:var(--orange); }
  .robot-eye{ fill:var(--green); transform-box:fill-box; transform-origin:center; animation:robot-blink 5s infinite; }
  .robot-signal{ fill:var(--orange); animation:robot-pulse 1.9s ease-in-out infinite; }
  .robot-eye.e2{ animation-delay:.04s; }
  @keyframes robot-float{ 0%,100%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-1.5px) rotate(1deg)} }
  @keyframes robot-blink{ 0%,44%,48%,100%{transform:scaleY(1)} 46%{transform:scaleY(.12)} }
  @keyframes robot-pulse{ 0%,100%{opacity:.45;filter:drop-shadow(0 0 0 transparent)} 50%{opacity:1;filter:drop-shadow(0 0 4px var(--orange))} }
  .logo-text{ font-weight:800; font-size:16.5px; letter-spacing:-0.01em; white-space:nowrap; }
  .logo-text .c1{ color:var(--text); }
  .logo-text .c2{ color:var(--orange); text-shadow:0 0 18px rgba(245,163,92,.25); }
  .logo-text .c3{ color:var(--text); }
  .logo-text .c4{ color:var(--text-faint); font-weight:600; }
  .brand-name{ color:var(--text); }
  .brand-name .brand-replace{ color:var(--orange); text-shadow:0 0 20px rgba(245,163,92,.22); }
  .brand-name .brand-domain{ color:var(--text-faint); }

  .nav-links{
    display:flex; align-items:center; gap:4px; flex:1; justify-content:center;
    width:fit-content; max-width:470px; margin:0 auto; padding:4px;
    border:1px solid var(--border-soft); border-radius:11px; background:rgba(17,19,25,.72);
    font-size:12.5px; color:var(--text-dim);
  }
  :root[data-theme="light"] .nav-links{ background:rgba(255,255,255,.82); box-shadow:0 8px 26px rgba(38,45,65,.06); }
  .nav-links a{
    position:relative; white-space:nowrap; padding:8px 12px; border:1px solid transparent; border-radius:8px;
    font-weight:600; transition:color .16s,background .16s,border-color .16s,transform .16s,box-shadow .16s;
  }
  .nav-links a:hover{ color:var(--text); background:var(--bg-2); border-color:var(--border); transform:translateY(-1px); }
  .nav-links a:focus-visible{ outline:2px solid var(--purple); outline-offset:2px; }
  .nav-links a.active{ color:#b9f8ce; background:rgba(74,222,128,.12); border-color:rgba(74,222,128,.38); box-shadow:inset 0 0 14px rgba(74,222,128,.045); }
  :root[data-theme="light"] .nav-links a.active{ color:#116b39; background:rgba(22,138,73,.1); border-color:rgba(22,138,73,.28); }
  .nav-links a[data-route="sponsor"]{ color:#f6ba83; }
  .nav-links a[data-route="sponsor"].active{ color:#ffd0a6; background:rgba(245,163,92,.12); border-color:rgba(245,163,92,.42); }

  .theme-btn{
    display:flex; align-items:center; gap:7px;
    background:var(--bg-2);
    border:1px solid var(--border);
    color:var(--text-dim);
    padding:8px 14px;
    border-radius:9px;
    font-size:13px; font-weight:600;
    cursor:pointer;
    transition:border-color .15s,color .15s,background .15s,transform .15s,box-shadow .15s;
    flex:none;
  }
  .theme-btn:hover{ border-color:var(--purple); color:var(--text); transform:translateY(-1px); box-shadow:0 8px 20px rgba(0,0,0,.12); }
  .theme-btn:focus-visible{ outline:2px solid var(--purple); outline-offset:2px; }
  .theme-icon{ width:17px; text-align:center; color:var(--orange); font-size:16px; line-height:1; }

  @media (max-width: 820px){ .nav-links{ display:none; } }

  /* ===== HERO ===== */
  .hero{ max-width:1000px; margin:0 auto; padding:44px 20px 24px; text-align:center; }
  .hero h1{
    font-size:clamp(2.3rem, 6vw, 3.8rem);
    font-weight:800;
    letter-spacing:-0.03em;
    line-height:1.06;
    margin:0 0 16px;
    display:flex;
    align-items:baseline;
    justify-content:center;
    flex-wrap:wrap;
    gap:0.18em;
  }
  .blank-slot{
    display:inline-block;
    width:auto;
    min-width:1ch;
    max-width:100%;
    text-align:left;
    overflow:visible;
    white-space:nowrap;
    border-bottom:5px solid var(--green);
    padding:0 2px 2px;
    color:var(--green);
    flex:none;
  }
  @media (max-width:560px){
    .hero{ padding:34px 14px 20px; }
    .hero h1{ gap:0.12em; }
    .blank-slot{ max-width:78vw; }
  }
  .cursor{ opacity:1; animation:blink 1s step-end infinite; }
  @keyframes blink{ 50%{ opacity:0; } }
  .hero p.sub{ color:var(--text-dim); font-size:15.5px; line-height:1.65; max-width:520px; margin:0 auto 30px; }
  .hero p.sub .hl{ color:var(--text); font-weight:600; }

  .search-bar{
    display:flex; align-items:center; gap:12px;
    width:100%; max-width:900px; margin:0 auto;
    background:linear-gradient(110deg,rgba(139,124,246,.045),transparent 35%,rgba(74,222,128,.025)),var(--bg-1);
    border:1px solid #2b2f3a;
    border-radius:14px;
    padding:9px 11px 9px 22px;
    box-shadow:0 14px 34px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.025);
    transition:border-color .18s,box-shadow .18s,background .18s;
    position:relative; z-index:30;
  }
  .search-bar:focus-within{ border-color:rgba(139,124,246,.78); box-shadow:0 16px 38px rgba(0,0,0,.26),0 0 0 3px rgba(139,124,246,.08); }
  .search-bar .ico{ color:#7f88a0; font-size:17px; }
  .search-bar input{
    flex:1; background:none; border:none; outline:none;
    color:var(--text); font-family:'IBM Plex Mono', monospace; font-size:15px;
    padding:13px 0;
  }
  .search-bar input::placeholder{ color:var(--text-faint); }
  .search-bar > #searchBtn{
    width:48px; height:48px; border-radius:11px; flex:none;
    border:none; cursor:pointer;
    background:linear-gradient(135deg, var(--purple), var(--orange));
    color:#0a0b0f; font-size:18px; font-weight:800;
    display:flex; align-items:center; justify-content:center;
    transition:transform .12s;
  }
  .search-bar > #searchBtn:hover{ transform:scale(1.05); }
  .search-suggestions{
    position:absolute; top:calc(100% + 7px); left:0; right:0;
    display:none; overflow:hidden; padding:6px;
    background:rgba(15,17,23,.98); border:1px solid #2a2f3a; border-radius:12px;
    box-shadow:0 20px 55px rgba(0,0,0,.48),0 1px 0 rgba(255,255,255,.025) inset;
    backdrop-filter:blur(14px);
    text-align:left;
  }
  .search-suggestions.open{ display:block; }
  .suggestion-item{
    appearance:none; width:100%; min-height:52px; padding:8px 10px;
    display:grid; grid-template-columns:30px minmax(0,1fr) 20px; align-items:center; gap:10px;
    background:transparent; border:0; border-radius:8px;
    color:var(--text); text-align:left; cursor:pointer; font:inherit;
    transition:background .12s ease,transform .12s ease;
  }
  .suggestion-item + .suggestion-item{ border-top:1px solid rgba(255,255,255,.045); }
  .suggestion-item:hover,.suggestion-item.active{ background:#1a1e27; transform:none; }
  .suggestion-icon{ width:30px; height:30px; display:flex; align-items:center; justify-content:center; border-radius:7px; background:#20242e; font-size:14px; }
  .suggestion-main{ min-width:0; }
  .suggestion-title{ display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; line-height:1.3; font-weight:650; }
  .suggestion-meta{ display:block; margin-top:3px; color:#7f8798; font:500 10px 'IBM Plex Mono',monospace; }
  .suggestion-rank{ color:#626b7c; font:700 16px/1 sans-serif; text-align:center; }
  .suggestion-item:hover .suggestion-rank,.suggestion-item.active .suggestion-rank{ color:var(--green); transform:translateX(2px); }

  .pills{ display:flex; flex-wrap:wrap; gap:9px; justify-content:center; max-width:900px; margin:13px auto 0; }
  .pill{
    --pill-accent:var(--green);
    display:flex; align-items:center; gap:7px;
    padding:9px 15px;
    border-radius:20px;
    border:1px solid color-mix(in srgb,var(--pill-accent) 34%,var(--border));
    background:color-mix(in srgb,var(--pill-accent) 5%,var(--bg-1));
    color:color-mix(in srgb,var(--pill-accent) 72%,var(--text));
    font-size:13.5px; font-weight:600;
    cursor:pointer;
    transition:transform .15s,border-color .15s,background .15s,color .15s,box-shadow .15s;
  }
  .pill:nth-child(1){ --pill-accent:#4ade80; }
  .pill:nth-child(2){ --pill-accent:#60a5fa; }
  .pill:nth-child(3){ --pill-accent:#c084fc; }
  .pill:nth-child(4){ --pill-accent:#fb923c; }
  .pill:nth-child(5){ --pill-accent:#f472b6; }
  .pill:nth-child(6){ --pill-accent:#facc15; }
  .pill:nth-child(7){ --pill-accent:#22d3ee; }
  .pill:nth-child(8){ --pill-accent:#818cf8; }
  .pill:nth-child(9){ --pill-accent:#fb7185; }
  .pill:nth-child(10){ --pill-accent:#2dd4bf; }
  .pill:nth-child(11){ --pill-accent:#fbbf24; }
  .pill:hover{ transform:translateY(-1px); border-color:color-mix(in srgb,var(--pill-accent) 74%,white 4%); background:color-mix(in srgb,var(--pill-accent) 11%,var(--bg-1)); color:color-mix(in srgb,var(--pill-accent) 82%,white); }
  .pill.active{ border-color:var(--pill-accent); color:color-mix(in srgb,var(--pill-accent) 78%,white); background:color-mix(in srgb,var(--pill-accent) 18%,var(--bg-1)); box-shadow:0 0 0 1px color-mix(in srgb,var(--pill-accent) 18%,transparent),0 0 18px color-mix(in srgb,var(--pill-accent) 14%,transparent); }

  .banner{
    max-width:820px; margin:22px auto 0;
    display:flex; align-items:center; gap:12px;
    padding:13px 18px;
    border:1px solid var(--border);
    border-radius:11px;
    background:var(--bg-1);
    font-size:13.5px;
    color:var(--text-dim);
  }
  .banner .tag{
    background:var(--green-dim); color:var(--green);
    font-size:10.5px; font-weight:700; letter-spacing:0.04em;
    padding:3px 8px; border-radius:5px; flex:none;
  }
  .banner .arrow{ margin-left:auto; color:var(--text-faint); }

  /* ===== GLOBAL INSIGHT ===== */
  .global-insight{
    position:relative; isolation:isolate;
    max-width:720px; height:190px; margin:24px auto 2px; overflow:hidden;
    display:grid; grid-template-columns:180px minmax(300px,1fr) 155px;
    align-items:center; gap:12px; padding:0 4px;
    border:0; border-radius:0; background:transparent; box-shadow:none;
  }
  .global-insight::before{ content:''; position:absolute; inset:15px 5%; z-index:-1; background:radial-gradient(ellipse at center,rgba(74,222,128,.045),transparent 68%); pointer-events:none; }
  .insight-copy{ position:relative; z-index:3; }
  .insight-eyebrow{ color:var(--green); font:700 8px 'IBM Plex Mono',monospace; letter-spacing:.13em; text-transform:uppercase; margin-bottom:8px; }
  .insight-title{ margin:0 0 7px; color:var(--text); font-size:14px; line-height:1.25; letter-spacing:-.02em; }
  .insight-headline{ max-width:170px; margin:0; color:var(--text-dim); font-size:10.5px; line-height:1.45; }
  .insight-headline strong{ color:var(--green); font-size:13px; }
  .insight-side{ position:relative; z-index:4; display:grid; grid-template-columns:62px 1fr; align-items:center; gap:7px; }
  .insight-gauge-wrap{ position:relative; width:60px; height:60px; }
  .insight-gauge{ width:60px; height:60px; transform:rotate(-90deg); }
  .insight-gauge-track{ fill:var(--bg-2); stroke:var(--border); stroke-width:7; }
  .insight-gauge-fill{ fill:none; stroke:var(--green); stroke-width:7; stroke-linecap:round; transition:stroke .55s ease; }
  .insight-gauge-value{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:var(--green); font:800 15px 'IBM Plex Mono',monospace; transition:color .55s ease; }
  .global-insight.over-20 .insight-gauge-fill{ stroke:#f5c451; }
  .global-insight.over-20 .insight-gauge-value{ color:#f5c451; }
  .insight-note strong{ display:block; margin-bottom:5px; color:var(--text); font-size:9.5px; }
  .insight-note span{ display:block; color:var(--text-faint); font-size:8px; line-height:1.35; }
  .insight-source{ margin-top:6px; color:var(--text-faint); font:500 7.5px 'IBM Plex Mono',monospace; }
  .insight-source a{ color:var(--purple); }
  .live-map-wrap{ position:relative; z-index:2; height:174px; min-width:0; opacity:1; transform:scale(1.04); }
  .live-map-wrap::before,.live-map-wrap::after{ content:''; position:absolute; top:0; bottom:0; width:34px; pointer-events:none; z-index:2; }
  .live-map-wrap::before{ left:0; background:linear-gradient(90deg,var(--bg),transparent); }
  .live-map-wrap::after{ right:0; background:linear-gradient(-90deg,var(--bg),transparent); }
  #globalLiveMap{ width:100%; height:100%; display:block; overflow:visible; }
  .world-dot{ fill:#25b967; opacity:.48; transform-box:fill-box; transform-origin:center; }
  .world-dot.live-blue{ fill:var(--orange); filter:drop-shadow(0 0 4px var(--orange)); animation:worldBlink 3.8s ease-in-out infinite; }
  .world-dot.live-green{ fill:#f5c451; filter:drop-shadow(0 0 4px #f5c451); animation:worldBlink 4.6s ease-in-out infinite; }
  @keyframes worldBlink{ 0%,18%,100%{opacity:.08;transform:scale(.55)} 48%,65%{opacity:1;transform:scale(1.65)} 82%{opacity:.2;transform:scale(.8)} }
  @media(max-width:800px){
    .global-insight{ width:auto; height:auto; margin:22px 14px 0; grid-template-columns:1fr 190px; padding:0 8px; }
    .live-map-wrap{ grid-column:1/-1; grid-row:2; height:140px; }
  }
  @media(max-width:520px){
    .global-insight{ grid-template-columns:1fr; text-align:center; }
    .insight-headline{ margin-left:auto; margin-right:auto; }
    .insight-side{ justify-self:center; text-align:left; }
    .live-map-wrap{ display:none; }
  }

  /* ===== JOB LIST ===== */
  main.board{ max-width:1180px; margin:32px auto 52px; padding:0 20px; }
  .board-head{
    display:flex; align-items:center; justify-content:space-between;
    gap:14px; flex-wrap:wrap;
    margin-bottom:16px;
  }
  .board-head h2{ display:flex; align-items:center; gap:10px; font-size:19px; font-weight:700; margin:0; }
  .filter-tabs{ display:flex; gap:6px; flex-wrap:wrap; }
  .ftab{
    font-size:12.5px; font-weight:600; color:var(--text-dim);
    background:var(--bg-1); border:1px solid var(--border);
    padding:7px 13px; border-radius:8px; cursor:pointer;
    font-family:inherit; letter-spacing:.01em;
    transition:background .18s, border-color .18s, color .18s, box-shadow .18s, transform .18s;
  }
  .ftab:hover{ transform:translateY(-1px); }
  .ftab.filter-all,.ftab.filter-safe{ color:#8be9ad; border-color:rgba(74,222,128,.46); }
  .ftab.filter-reassigned{ color:#f7c46f; border-color:rgba(245,163,92,.52); }
  .ftab.filter-terminated{ color:#ff8d8d; border-color:rgba(239,68,68,.52); }
  .ftab.filter-all:hover,.ftab.filter-safe:hover{ border-color:var(--green); background:rgba(74,222,128,.08); }
  .ftab.filter-reassigned:hover{ border-color:var(--orange); background:rgba(245,163,92,.09); }
  .ftab.filter-terminated:hover{ border-color:var(--red); background:rgba(239,68,68,.09); }
  .ftab.filter-all.active,.ftab.filter-safe.active{ color:#b7f7cc; border-color:#4ade80; background:rgba(74,222,128,.16); box-shadow:0 0 0 1px rgba(74,222,128,.14),0 0 18px rgba(74,222,128,.13); }
  .ftab.filter-reassigned.active{ color:#ffd792; border-color:#f5a35c; background:rgba(245,163,92,.16); box-shadow:0 0 0 1px rgba(245,163,92,.14),0 0 18px rgba(245,163,92,.13); }
  .ftab.filter-terminated.active{ color:#ffb2b2; border-color:#ef4444; background:rgba(239,68,68,.16); box-shadow:0 0 0 1px rgba(239,68,68,.14),0 0 18px rgba(239,68,68,.13); }

  .job-table{
    border:1px solid var(--border);
    border-radius:var(--radius);
    overflow:hidden;
    background:var(--bg-1);
  }
  .row{
    display:grid;
    grid-template-columns:34px 2fr 1.3fr 1.1fr 0.9fr 1.3fr;
    gap:14px;
    align-items:center;
    padding:14px 18px;
    border-bottom:1px solid var(--border-soft);
    cursor:pointer;
    transition:background .12s;
    color:inherit; text-decoration:none;
  }
  .row:hover{ background:var(--bg-2); }
  .row.head{
    cursor:default;
    font-size:10.5px; color:var(--text-faint);
    letter-spacing:0.06em; text-transform:uppercase;
    font-weight:600;
    background:var(--bg-1);
  }
  .row.head:hover{ background:var(--bg-1); }
  .row .idx{ color:var(--text-faint); font-family:'IBM Plex Mono', monospace; font-size:12px; }
  .row .jname{ display:flex; flex-direction:column; gap:2px; min-width:0; }
  .row .jname .t{ font-weight:600; font-size:14.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .risk-cell{ display:flex; flex-direction:column; gap:5px; }
  .risk-num{ font-family:'IBM Plex Mono', monospace; font-size:13px; font-weight:600; }
  .risk-track{ height:5px; background:var(--bg-3); border-radius:3px; overflow:hidden; }
  .risk-fill{ height:100%; border-radius:3px; }
  .fill-high{ background:var(--red); }
  .fill-med{ background:var(--amber); }
  .fill-low{ background:var(--green); }
  .num-high{ color:var(--red); }
  .num-med{ color:var(--amber); }
  .num-low{ color:var(--green); }

  .vpill{
    display:inline-block; font-size:11px; font-weight:700; letter-spacing:0.03em;
    padding:5px 10px; border-radius:7px; white-space:nowrap; width:fit-content;
  }
  .v-terminated{ background:var(--red-dim); color:var(--red); }
  .v-reassigned{ background:var(--amber-dim); color:var(--amber); }
  .v-safe{ background:var(--green-dim); color:var(--green); }

  .impact-year-cell{ display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
  .impact-year{ display:flex; flex-direction:column; gap:2px; min-width:0; }
  .impact-year strong{ color:var(--text); font:700 13px/1.1 'IBM Plex Mono',monospace; }
  .impact-year small{ color:var(--text-faint); font-size:9px; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }

  .empty-state{ text-align:center; padding:60px 20px; color:var(--text-faint); font-family:'IBM Plex Mono', monospace; font-size:13px; }

  @media (max-width:760px){
    .row{ grid-template-columns:24px 1.6fr 1fr 0.9fr; }
    .row > :nth-child(3), .row > :nth-child(6){ display:none; }
  }

  footer.site-footer{
    max-width:900px; margin:0 auto 48px; padding:0 20px;
  }
  .foot-banner{
    display:flex; align-items:center; gap:10px; justify-content:center;
    padding:16px 20px; border:1px solid var(--border); border-radius:12px;
    background:var(--bg-1); font-size:13.5px; color:var(--text-dim); text-align:center;
    cursor:pointer;
  }
  .foot-banner .hl{ color:var(--green); font-weight:700; }

  /* ===== SPONSOR SIDEBARS ===== */
  .home-layout{
    display:grid;
    grid-template-columns:var(--ad-rail-w) minmax(0,1120px) var(--ad-rail-w);
    justify-content:center;
    gap:18px;
    max-width:none;
    margin:0 auto;
    padding:0 16px;
  }
  .side-col{
    position:fixed;
    top:70px;
    z-index:12;
    width:var(--ad-rail-w);
    height:calc(100vh - 78px);
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:2px 0 4px;
    overflow:hidden;
  }
  .rail-left{ left:16px; }
  .rail-right{ right:16px; }
  .home-center{ grid-column:2; min-width:0; }
  .spcard{
    flex:1 1 0;
    min-height:0;
    max-height:none;
    border-radius:7px; padding:15px 18px 14px;
    border:1px solid var(--border);
    transition:transform .15s ease;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
  }
  .spcard:hover{ transform:translateY(-2px); }
  .spcard.free-slot{
    border-style:dashed;
    border-color:rgba(74,222,128,.38);
    background:rgba(74,222,128,.025);
    cursor:pointer;
  }
  .spcard.free-slot:hover{ border-color:var(--green); background:rgba(74,222,128,.07); }
  .spcard.free-slot h5{ color:var(--green); font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
  .spcard.free-slot p{ color:var(--text); font-weight:700; font-size:12px; }
  .spcard.free-slot .free-arrow{ color:var(--green); margin-top:8px; font:600 11px 'IBM Plex Mono',monospace; }
  .spcard .sp-icon{
    width:32px; height:32px; border-radius:8px;
    display:flex; align-items:center; justify-content:center;
    font-size:17px; margin-bottom:9px;
    background:rgba(255,255,255,0.07);
  }
  .spcard h5{ font-size:14px; font-weight:700; margin:0 0 4px; color:var(--text); }
  .spcard p{ font-size:11px; color:var(--text-dim); line-height:1.4; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
  .spcard.bilaura-card{
    position:relative; isolation:isolate; overflow:hidden; text-decoration:none;
    border-color:rgba(167,139,250,.52);
    background:
      linear-gradient(180deg,rgba(6,8,15,.28),rgba(7,9,15,.9) 72%,rgba(7,9,15,.97)),
      url('assets/bilaura-dream-bg.png') center/cover no-repeat;
    box-shadow:inset 0 0 34px rgba(139,92,246,.12),0 0 22px rgba(124,58,237,.08);
  }
  .spcard.bilaura-card::after{
    content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:linear-gradient(115deg,transparent 28%,rgba(74,222,128,.08) 50%,transparent 72%);
  }
  .bilaura-featured{ position:absolute; top:9px; right:10px; color:#d8ccff; font:700 8px 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
  .bilaura-logo{ width:27px; height:27px; object-fit:cover; border-radius:50%; margin-bottom:3px; box-shadow:0 0 14px rgba(168,85,247,.55); }
  .spcard.bilaura-card h5{ color:#fff; font-size:17px; letter-spacing:.04em; margin-bottom:3px; text-shadow:0 2px 10px #000; }
  .spcard.bilaura-card p{ color:#f0ebff; display:block; overflow:visible; white-space:nowrap; font-size:10.5px; font-weight:700; text-shadow:0 1px 8px #000; }
  .spcard.bilaura-card:hover{ border-color:#a78bfa; box-shadow:inset 0 0 34px rgba(139,92,246,.17),0 0 24px rgba(124,58,237,.18); }
  .tint-green{ background:rgba(74,222,128,0.07); border-color:rgba(74,222,128,0.22); }
  .tint-red{ background:rgba(239,68,68,0.07); border-color:rgba(239,68,68,0.2); }
  .tint-purple{ background:rgba(139,124,246,0.08); border-color:rgba(139,124,246,0.22); }
  .tint-navy{ background:rgba(59,130,246,0.07); border-color:rgba(59,130,246,0.2); }
  .tint-teal{ background:rgba(45,212,191,0.07); border-color:rgba(45,212,191,0.2); }
  .tint-olive{ background:rgba(234,179,8,0.07); border-color:rgba(234,179,8,0.2); }
  .slots-card{
    flex:0 0 126px;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-align:center; padding:14px;
    border:1px dashed var(--border); border-radius:7px;
    color:var(--text-faint); font-size:11.5px;
    cursor:pointer; transition:all .15s ease;
  }
  .slots-card:hover{ border-color:var(--green); background:rgba(74,222,128,0.06); transform:translateY(-2px); }
  .slots-card .big{ font-weight:700; color:var(--text); font-size:12px; margin-bottom:8px; }
  .slots-card .lnk{ color:var(--green); font-weight:600; }
  @media (max-width:1180px){
    .home-layout{ grid-template-columns:1fr; padding:0; max-width:100%; }
    .side-col{ display:none; }
    .home-center{ grid-column:1; }
  }

  /* ===== SPONSOR PAGE ===== */
  .sponsor-page{ width:calc(100vw - var(--ad-rail-w) - var(--ad-rail-w) - 68px); max-width:960px; margin:0 auto; padding:64px 24px 80px; }
  .sponsor-hero{ text-align:center; max-width:780px; margin:0 auto 52px; }
  .sponsor-kicker{ color:var(--green); font:600 12px 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; margin-bottom:14px; }
  .sponsor-hero h1{ font-size:clamp(2.25rem,6vw,4.6rem); line-height:1; letter-spacing:-.045em; margin:0 0 20px; }
  .sponsor-hero p{ color:var(--text-dim); font:400 15px/1.75 'IBM Plex Mono',monospace; max-width:650px; margin:0 auto; }
  .availability-strip{ display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; margin:28px auto 0; }
  .availability-dot{ width:9px; height:9px; border-radius:50%; background:var(--green); box-shadow:0 0 14px rgba(74,222,128,.75); }
  .availability-copy{ color:var(--text); font:700 13px 'IBM Plex Mono',monospace; }
  .availability-copy span{ color:var(--green); }
  .sponsor-metrics{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:0 0 48px; }
  .sponsor-metric{ padding:24px; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-1); }
  .sponsor-metric strong{ display:block; font-size:clamp(1.7rem,4vw,2.6rem); letter-spacing:-.04em; margin-bottom:7px; }
  .sponsor-metric span{ color:var(--text-faint); font:500 11px 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
  .sponsor-section{ margin-top:56px; }
  .sponsor-section h2{ font-size:clamp(1.65rem,4vw,2.5rem); letter-spacing:-.03em; margin:0 0 12px; }
  .section-lead{ max-width:690px; color:var(--text-dim); line-height:1.7; margin:0 0 26px; }
  .audience-grid,.placement-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
  .audience-card,.placement-card{ border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-1); padding:22px; }
  .audience-card .ico{ font-size:23px; margin-bottom:16px; }
  .audience-card h3,.placement-card h3{ font-size:15px; margin:0 0 8px; }
  .audience-card p,.placement-card p{ color:var(--text-dim); font-size:13px; line-height:1.65; margin:0; }
  .placement-card.featured{ border-color:rgba(74,222,128,.55); background:linear-gradient(145deg,rgba(74,222,128,.08),var(--bg-1)); }
  .placement-label{ color:var(--purple); font:700 10px 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.1em; margin-bottom:12px; }
  .placement-card.featured .placement-label{ color:var(--green); }
  .placement-price{ font-size:27px; font-weight:800; margin:16px 0 4px; }
  .placement-price small{ font-size:12px; color:var(--text-faint); font-weight:500; }
  .placement-list{ list-style:none; margin:18px 0 0; padding:0; display:grid; gap:10px; }
  .placement-list li{ color:var(--text-dim); font-size:12.5px; line-height:1.45; }
  .placement-list li::before{ content:'\2713'; color:var(--green); font-weight:800; margin-right:8px; }
  .claim-panel{ margin-top:56px; border:1px solid rgba(74,222,128,.45); border-radius:18px; padding:clamp(25px,5vw,46px); background:radial-gradient(600px 250px at 50% 0%,rgba(74,222,128,.10),transparent 70%),var(--bg-1); text-align:center; }
  .claim-panel h2{ margin:0 0 10px; font-size:clamp(1.8rem,5vw,3rem); }
  .claim-panel p{ color:var(--text-dim); line-height:1.7; max-width:620px; margin:0 auto 24px; }
  .claim-btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:50px; padding:0 24px; border:0; border-radius:10px; background:linear-gradient(135deg,var(--green),#22c55e); color:#06110a; font-weight:800; cursor:pointer; box-shadow:0 10px 30px rgba(74,222,128,.16); }
  .claim-btn:hover{ transform:translateY(-2px); }
  .claim-note{ display:block; margin-top:13px; color:var(--text-faint); font:500 11px 'IBM Plex Mono',monospace; }
  .sponsor-back{ display:inline-flex; margin-top:30px; color:var(--text-dim); font-size:13px; cursor:pointer; }
  .sponsor-back:hover{ color:var(--text); }
  @media (max-width:760px){
    .sponsor-page{ padding:40px 16px 60px; }
    .sponsor-metrics,.audience-grid,.placement-grid{ grid-template-columns:1fr; }
    .sponsor-metric{ text-align:center; }
  }

  /* ===== DETAIL PAGE ===== */
  .detail-wrap{ width:calc(100vw - var(--ad-rail-w) - var(--ad-rail-w) - 68px); max-width:1080px; margin:0 auto; padding:24px 20px 60px; }
  .term-bar{
    display:inline-flex; align-items:center; gap:8px;
    background:var(--bg-1); border:1px solid var(--border);
    border-radius:8px; padding:7px 14px;
    font-family:'IBM Plex Mono', monospace; font-size:12.5px; color:var(--text-dim);
    margin-bottom:18px;
  }
  .term-bar .prompt{ color:var(--green); }
  .breadcrumb{
    font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--text-faint);
    margin-bottom:14px;
  }
  .breadcrumb a:hover{ color:var(--text); }
  .breadcrumb .cur{ color:var(--purple); }

  .detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    align-items:start;
  }
  .detail-grid > .sponsor-card{ display:none; }

  .sponsor-card{
    border:1px solid var(--border); border-radius:var(--radius);
    background:var(--bg-1); padding:22px 18px; text-align:center;
    position:sticky; top:80px;
  }
  .sponsor-card .lbl{ font-size:10px; letter-spacing:0.08em; color:var(--text-faint); text-transform:uppercase; margin-bottom:16px; }
  .sponsor-card .sicon{ font-size:26px; margin-bottom:14px; }
  .sponsor-card h4{ font-size:16px; line-height:1.35; margin:0 0 10px; }
  .sponsor-card p{ font-size:12.5px; color:var(--text-dim); line-height:1.6; margin:0 0 18px; }
  .sponsor-card .sbtn{
    display:inline-block; font-size:12.5px; font-weight:600;
    border:1px solid var(--border); border-radius:8px; padding:9px 16px;
    color:var(--text);
  }
  .sponsor-card.b .sbtn{ border-color:var(--green); color:var(--green); }
  .sponsor-card.a .sicon{ color:var(--purple); }
  .sponsor-card.b .sicon{ color:var(--green); }

  .detail-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-bottom:6px; }
  .detail-header h1{ font-size:clamp(1.7rem,3.6vw,2.5rem); font-weight:800; letter-spacing:-0.02em; margin:0; line-height:1.15; max-width:760px; }
  .alert-badge{
    display:flex; align-items:center; gap:8px; flex:none;
    padding:9px 15px; border-radius:9px; font-size:13px; font-weight:700;
    border:1px solid;
  }
  .alert-high{ background:var(--red-dim); border-color:#5a1f1f; color:#ff8080; }
  .alert-med{ background:var(--amber-dim); border-color:#5a3a17; color:var(--orange); }
  .alert-low{ background:var(--green-dim); border-color:#1f5238; color:var(--green); }
  .detail-sub{ color:var(--text-dim); font-size:14.5px; margin:10px 0 24px; }

  .stat-cards{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:24px; }
  @media (max-width:760px){ .stat-cards{ grid-template-columns:1fr 1fr; } }
  .scard{ border:1px solid var(--border); background:var(--bg-1); border-radius:12px; padding:16px 16px 15px; }
  .scard .slbl{ font-size:10px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:10px; display:flex; align-items:center; gap:6px; }
  .scard .sval{ font-family:'IBM Plex Mono', monospace; font-weight:700; font-size:26px; line-height:1; margin-bottom:6px; }
  .scard .ssub{ font-size:12px; color:var(--text-dim); }
  .scard .risk-track{ margin-top:10px; }

  .desc-para{ font-size:15px; line-height:1.75; color:#cdd0da; margin-bottom:26px; max-width:820px; }

  .moat-row{ display:flex; align-items:center; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
  .moat-row .lbl{ font-size:11px; letter-spacing:0.07em; text-transform:uppercase; color:var(--text-faint); display:flex; align-items:center; gap:6px; }
  .moat-tags{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:28px; }
  .moat-tag{
    display:flex; align-items:center; gap:8px;
    border:1px solid var(--border); background:var(--bg-1);
    border-radius:10px; padding:10px 14px;
  }
  .moat-tag .mt-label{ font-size:13px; font-weight:600; }
  .moat-tag .mt-conf{ font-size:11px; font-weight:700; }
  .conf-High{ color:var(--green); }
  .conf-Medium{ color:var(--amber); }

  .term-card{ border:1px solid var(--border); background:var(--bg-1); border-radius:var(--radius); overflow:hidden; }
  .term-head{ display:flex; align-items:center; gap:10px; padding:13px 18px; border-bottom:1px solid var(--border-soft); }
  .term-dots{ display:flex; gap:6px; }
  .term-dots span{ width:9px; height:9px; border-radius:50%; }
  .term-dots span:nth-child(1){ background:#ef4444; }
  .term-dots span:nth-child(2){ background:#f5a623; }
  .term-dots span:nth-child(3){ background:#4ade80; }
  .term-title{ font-family:'IBM Plex Mono', monospace; font-size:12.5px; color:var(--text-dim); }
  .term-title .p{ color:var(--purple); font-weight:700; }
  .term-body{ padding:16px 18px 6px; }
  .term-body > .tsub{ font-size:13px; color:var(--text-dim); margin-bottom:14px; }
  .term-toggle{
    margin-left:auto; font-family:'IBM Plex Mono', monospace; font-size:11.5px;
    background:var(--bg-2); border:1px solid var(--border); color:var(--text-dim);
    padding:6px 12px; border-radius:7px; cursor:pointer;
  }
  .term-toggle:hover{ color:var(--text); }
  .task-item{
    display:flex; align-items:center; justify-content:space-between; gap:14px;
    padding:11px 0; border-bottom:1px dashed var(--border-soft); font-size:13.5px;
  }
  .task-item:last-child{ border-bottom:none; }
  .task-item .ttxt{ color:#d7d9e0; }
  .match-badge{ font-size:10.5px; font-weight:700; letter-spacing:0.03em; padding:4px 9px; border-radius:6px; flex:none; }
  .match-HIGH{ background:var(--pink-dim); color:var(--pink); }
  .match-MEDIUM{ background:var(--amber-dim); color:var(--amber); }
  .match-LOW{ background:var(--green-dim); color:var(--green); }
  .term-footer{ padding:14px 18px; font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--text-faint); border-top:1px solid var(--border-soft); }
  .term-footer .hl{ color:var(--green); }

  .back-link{ display:inline-flex; align-items:center; gap:7px; margin-top:26px; font-size:13px; color:var(--text-dim); cursor:pointer; }
  .back-link:hover{ color:var(--text); }
  .research-chip{ display:inline-flex; margin-top:10px; padding:6px 9px; border:1px solid var(--border); border-radius:7px; color:var(--text-faint); background:var(--bg-1); font:600 9px 'IBM Plex Mono',monospace; }
  .job-summary{ display:flex; justify-content:space-between; align-items:center; margin:0 2px 10px; color:var(--text-faint); font:600 10px 'IBM Plex Mono',monospace; }
  .load-more-jobs{ width:100%; margin-top:12px; padding:12px; border:1px solid var(--border); border-radius:10px; color:var(--text-dim); background:var(--bg-1); cursor:pointer; font-weight:700; }
  .load-more-jobs:hover{ border-color:var(--green); color:var(--green); }

  @media (max-width:1180px){
    .sponsor-page,.detail-wrap{ width:auto; }
  }
  @media (prefers-reduced-motion: reduce){ *{ animation-duration:.001ms !important; transition-duration:.001ms !important; } }

/* ===== DETAIL PAGE ===== */
  .detail-wrap{ max-width:1260px; margin:0 auto; padding:28px 24px 70px; }
  .breadcrumb{
    font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--text-faint);
    margin-bottom:22px;
  }
  .breadcrumb a:hover{ color:var(--text); }
  .breadcrumb .cur{ color:var(--purple); }

  /* --- hero --- */
  .dhero{
    position:relative; overflow:hidden;
    display:grid; grid-template-columns:1fr 300px; gap:28px; align-items:center;
    padding:6px 4px 30px;
  }
  .dhero::before{
    content:""; position:absolute; top:-40px; right:-60px; width:420px; height:320px;
    background-image:radial-gradient(rgba(139,124,246,0.35) 1px, transparent 1px);
    background-size:16px 16px;
    -webkit-mask-image:radial-gradient(ellipse 220px 180px at 70% 30%, #000 40%, transparent 75%);
    mask-image:radial-gradient(ellipse 220px 180px at 70% 30%, #000 40%, transparent 75%);
    pointer-events:none;
  }
  @media (max-width:900px){ .dhero{ grid-template-columns:1fr; } }
  .dhero-kicker{ color:var(--text); font-size:clamp(1.5rem,3vw,2.1rem); font-weight:800; letter-spacing:-0.02em; margin:0 0 2px; }
  .dhero h1{
    font-size:clamp(1.9rem,4.4vw,2.9rem); font-weight:800; letter-spacing:-0.025em;
    line-height:1.12; margin:0 0 14px;
    filter:drop-shadow(0 0 24px rgba(139,124,246,0.22));
  }
  .dhero-sub{ color:var(--text-dim); font-size:14.5px; line-height:1.7; max-width:620px; }

  .risk-hero-card{
    border-radius:16px; padding:22px 22px 20px; position:relative; z-index:2;
  }
  .risk-hero-tier-high{ background:linear-gradient(180deg, rgba(239,68,68,0.10), rgba(239,68,68,0.03)); border:1px solid rgba(239,68,68,0.4); box-shadow:0 0 0 1px rgba(239,68,68,0.08), 0 18px 40px -18px rgba(239,68,68,0.45); }
  .risk-hero-tier-med{ background:linear-gradient(180deg, rgba(251,146,60,0.10), rgba(251,146,60,0.03)); border:1px solid rgba(251,146,60,0.4); box-shadow:0 0 0 1px rgba(251,146,60,0.08), 0 18px 40px -18px rgba(251,146,60,0.45); }
  .risk-hero-tier-low{ background:linear-gradient(180deg, rgba(74,222,128,0.10), rgba(74,222,128,0.03)); border:1px solid rgba(74,222,128,0.4); box-shadow:0 0 0 1px rgba(74,222,128,0.08), 0 18px 40px -18px rgba(74,222,128,0.45); }
  .risk-hero-label{ display:flex; align-items:center; gap:7px; font-size:12px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; margin-bottom:14px; }
  .risk-hero-tier-high .risk-hero-label{ color:#ff9d9d; }
  .risk-hero-tier-med .risk-hero-label{ color:var(--orange); }
  .risk-hero-tier-low .risk-hero-label{ color:var(--green); }
  .risk-hero-num{ font-family:'IBM Plex Mono', monospace; font-weight:800; font-size:56px; line-height:1; margin-bottom:12px; }
  .risk-hero-tier-high .risk-hero-num{ color:#f75c5c; text-shadow:0 0 30px rgba(239,68,68,0.45); }
  .risk-hero-tier-med .risk-hero-num{ color:var(--orange); text-shadow:0 0 30px rgba(251,146,60,0.4); }
  .risk-hero-tier-low .risk-hero-num{ color:var(--green); text-shadow:0 0 30px rgba(74,222,128,0.4); }
  .risk-hero-note{ font-size:12.5px; color:var(--text-dim); line-height:1.6; }

  /* --- stat card row --- */
  .stat-cards{ display:grid; grid-template-columns:minmax(242px,1.66fr) repeat(3,minmax(0,1fr)); gap:14px; margin:26px 0; }
  @media (max-width:900px){ .stat-cards{ grid-template-columns:1fr 1fr; } }
  .scard{ min-width:0; border:1px solid var(--border); background:var(--bg-1); border-radius:14px; padding:18px 18px 16px; }
  .scard-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
  .scard .slbl{ font-size:10.5px; letter-spacing:0.07em; text-transform:uppercase; color:var(--text-faint); }
  .sicon-box{ width:30px; height:30px; border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:14px; flex:none; }
  .sicon-red{ background:var(--red-dim); color:#ff8f8f; }
  .sicon-purple{ background:rgba(139,124,246,0.14); color:var(--purple); }
  .sicon-green{ background:var(--green-dim); color:var(--green); }
  .sicon-blue{ background:var(--blue-dim); color:var(--blue); }
  .scard .sval{ font-family:'IBM Plex Mono', monospace; font-weight:800; font-size:28px; line-height:1; margin-bottom:6px; }
  .scard .ssub{ font-size:12px; color:var(--text-dim); }
  .scard .risk-track{ margin-top:12px; }
  .scard.exposure-card{ position:relative; overflow:hidden; }
  .scard.exposure-card::after{ content:""; position:absolute; inset:auto -18px -28px auto; width:82px; height:82px; border-radius:50%; background:var(--red); opacity:.035; filter:blur(2px); pointer-events:none; }
  .scard.exposure-card .risk-track{ height:8px; padding:2px; background:repeating-linear-gradient(90deg,var(--bg-3) 0,var(--bg-3) calc(25% - 2px),rgba(255,255,255,.055) calc(25% - 2px),rgba(255,255,255,.055) 25%); border:1px solid var(--border-soft); }
  .scard.exposure-card .risk-fill{ height:100%; box-shadow:0 0 12px currentColor; }
  .automation-share-card{ min-width:0; padding:15px 16px 13px; }
  .automation-share-card .scard-top{ margin-bottom:9px; }
  .automation-share-main{ display:grid; grid-template-columns:84px minmax(0,1fr); align-items:center; gap:8px; }
  .automation-donut{ position:relative; width:84px; height:84px; flex:none; }
  .automation-donut svg{ display:block; width:84px; height:84px; transform:rotate(-1deg); }
  .automation-donut-center{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
  .automation-donut-center strong{ color:var(--red); font:800 21px/1 'IBM Plex Mono',monospace; }
  .automation-donut-center span{ color:var(--text-dim); font-size:8px; margin-top:3px; }
  .automation-mini-legend{ display:flex; flex-direction:column; gap:8px; min-width:0; }
  .automation-mini-row{ display:grid; grid-template-columns:7px minmax(0,1fr) auto; align-items:center; gap:4px; font-size:9.7px; }
  .automation-mini-row i{ width:6px; height:6px; border-radius:50%; }
  .automation-mini-row span{ color:var(--text-dim); white-space:nowrap; overflow:visible; letter-spacing:-.02em; }
  .automation-mini-row b{ font:800 11px 'IBM Plex Mono',monospace; }
  .automation-share-note{ margin-top:9px; padding-top:8px; border-top:1px solid var(--border-soft); color:var(--text-faint); font-size:8.5px; line-height:1.4; }
  @media (max-width:900px){ .automation-share-card{ grid-column:span 2; } }

  /* --- 3-col analysis row --- */
  .row3{ display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:16px; margin-bottom:16px; align-items:stretch; }
  @media (max-width:760px){ .row3{ grid-template-columns:1fr; } }
  .panel{ min-width:0; overflow:hidden; border:1px solid var(--border); background:var(--bg-1); border-radius:14px; padding:18px 20px 20px; }
  .panel-title{
    display:flex; align-items:center; gap:7px;
    font-size:11px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-dim);
    margin-bottom:16px;
  }
  .panel-title .qi{ color:var(--text-faint); font-size:11px; cursor:default; }

  /* donut */
  .donut-wrap{ display:flex; align-items:center; gap:18px; margin-bottom:14px; }
  .donut-center-txt{ position:relative; width:132px; height:132px; flex:none; }
  .donut-center-txt svg{ width:132px; height:132px; }
  .donut-mid{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
  .donut-mid .dnum{ font-family:'IBM Plex Mono', monospace; font-weight:800; font-size:24px; color:var(--red); }
  .donut-mid .dlbl{ font-size:10px; color:var(--text-faint); text-align:center; line-height:1.3; }
  .donut-legend{ display:flex; flex-direction:column; gap:10px; }
  .dleg-item{ display:flex; align-items:center; gap:9px; font-size:12.5px; }
  .dleg-dot{ width:8px; height:8px; border-radius:50%; flex:none; }
  .dleg-name{ color:var(--text-dim); flex:1; }
  .dleg-val{ font-family:'IBM Plex Mono', monospace; font-weight:700; }
  .panel-caption{ font-size:11.5px; color:var(--text-faint); line-height:1.6; padding-top:12px; border-top:1px solid var(--border-soft); }

  /* task-level replaceability bars */
  .trow{ width:100%; min-width:0; display:grid; grid-template-columns:16px minmax(80px,1fr) minmax(64px,1.6fr) 36px; align-items:center; gap:10px; margin-bottom:12px; }
  .trow:last-child{ margin-bottom:0; }
  .trow .ticon{ font-size:12px; flex:none; width:16px; text-align:center; }
  .trow .tname{ font-size:12.5px; color:var(--text-dim); min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .trow .tbar-wrap{ width:100%; min-width:0; max-width:100%; height:6px; background:var(--bg-3); border-radius:4px; overflow:hidden; }
  .trow .tbar-fill{ display:block; max-width:100%; height:100%; border-radius:4px; background:linear-gradient(90deg, var(--orange), var(--red)); }
  .trow .tpct{ font-family:'IBM Plex Mono', monospace; font-size:12px; font-weight:700; width:36px; text-align:right; }
  .task-panel .panel-title,.timeline-panel .panel-title{ margin-bottom:5px; }
  .panel-subtitle{ color:var(--text-faint); font-size:10.5px; line-height:1.45; margin-bottom:16px; }
  .task-panel .trow{ margin-bottom:10px; }
  .task-panel .tbar-wrap{ height:7px; box-shadow:inset 0 1px 2px rgba(0,0,0,.22); }
  .task-panel .tbar-fill.task-high{ background:linear-gradient(90deg,#ef4444,#ff5f70); box-shadow:0 0 10px rgba(239,68,68,.2); }
  .task-panel .tbar-fill.task-med{ background:linear-gradient(90deg,#f59e0b,#fb923c); box-shadow:0 0 10px rgba(245,158,11,.16); }
  .task-panel .tbar-fill.task-low{ background:linear-gradient(90deg,#84cc16,#4ade80); box-shadow:0 0 10px rgba(74,222,128,.14); }
  @media (max-width:520px){
    .panel{ padding-left:14px; padding-right:14px; }
    .trow{ grid-template-columns:14px minmax(0,1fr) minmax(54px,.75fr) 32px; gap:6px; }
    .trow .tpct{ width:32px; font-size:11px; }
  }

  /* impact timeline */
  .tl-years{ display:flex; justify-content:space-between; font-family:'IBM Plex Mono', monospace; font-size:11px; color:var(--text-faint); margin-bottom:8px; }
  .tl-track{ position:relative; height:2px; background:var(--border); border-radius:2px; margin:0 4px 18px; }
  .tl-track .tl-fill{ position:absolute; top:0; left:0; height:100%; border-radius:2px; }
  .tl-fill-high{ background:var(--red); } .tl-fill-med{ background:var(--orange); } .tl-fill-low{ background:var(--green); }
  .tl-track .tl-dot{ position:absolute; top:50%; width:9px; height:9px; border-radius:50%; transform:translate(-50%,-50%); border:2px solid var(--bg-1); }
  .tl-stages{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:16px; }
  .tl-stage b{ display:block; font-size:12.5px; margin-bottom:4px; }
  .tl-stage span{ font-size:11.5px; color:var(--text-dim); line-height:1.55; display:block; }
  .tl-badge-row{ display:flex; align-items:center; gap:10px; padding-top:14px; border-top:1px solid var(--border-soft); }
  .timeline-panel{ display:flex; flex-direction:column; }
  .timeline-panel .tl-years{ margin-top:12px; }
  .timeline-panel .tl-years span:nth-child(2){ text-align:center; }
  .timeline-panel .tl-years span:last-child{ text-align:right; }
  .timeline-panel .tl-track{ height:3px; margin-bottom:22px; }
  .timeline-panel .tl-dot{ width:10px; height:10px; box-shadow:0 0 12px currentColor; }
  .timeline-panel .tl-stages{ flex:1; gap:14px; }
  .timeline-panel .tl-stage{ min-width:0; }
  .timeline-panel .tl-stage b{ font-size:11.5px; }
  .timeline-panel .tl-stage span{ font-size:10.5px; line-height:1.5; }
  .timeline-panel .tl-badge-row{ margin-top:auto; }
  .timeline-note{ color:var(--text-faint); font:600 9.5px 'IBM Plex Mono',monospace; letter-spacing:.02em; }
  .tl-badge{ font-family:'IBM Plex Mono', monospace; font-size:11px; font-weight:700; padding:5px 10px; border-radius:7px; }
  .tl-badge-high{ background:var(--red-dim); color:#ff8f8f; }
  .tl-badge-med{ background:var(--amber-dim); color:var(--orange); }
  .tl-badge-low{ background:var(--green-dim); color:var(--green); }
  .tl-conf{ font-size:11.5px; color:var(--text-faint); }

  /* robot wants / moat / compare row */
  .row3b{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:16px; align-items:stretch; }
  @media (max-width:1080px){ .row3b{ grid-template-columns:1fr; } }
  .rw-item{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
  .rw-item .rname{ font-size:12.5px; color:var(--text-dim); flex:1; min-width:0; }
  .rw-bar-wrap{ flex:1.2; height:6px; background:var(--bg-3); border-radius:4px; overflow:hidden; display:none; }
  .rw-match{ font-size:10px; font-weight:700; letter-spacing:0.02em; padding:4px 8px; border-radius:6px; flex:none; white-space:nowrap; }
  .rw-hi{ background:var(--pink-dim); color:var(--pink); }
  .rw-medhi{ background:var(--amber-dim); color:var(--orange); }
  .rw-med{ background:rgba(234,179,8,0.14); color:#eab308; }
  .rw-lo{ background:var(--green-dim); color:var(--green); }
  .panel-link{ display:inline-flex; align-items:center; gap:5px; font-size:12px; color:var(--purple); font-weight:600; margin-top:8px; }

  .moat-box{
    border:1px solid rgba(74,222,128,0.35); background:linear-gradient(180deg, rgba(74,222,128,0.08), rgba(74,222,128,0.02));
    border-radius:12px; padding:16px; margin-bottom:16px;
  }
  .moat-box-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:8px; }
  .moat-shield{ font-size:18px; color:var(--green); flex:none; }
  .moat-box h4{ font-size:14.5px; margin:0; line-height:1.35; flex:1; }
  .moat-badge{ font-size:9.5px; font-weight:700; letter-spacing:0.03em; color:var(--green); background:rgba(74,222,128,0.16); padding:4px 8px; border-radius:6px; flex:none; white-space:nowrap; }
  .moat-box p{ font-size:12px; color:var(--text-dim); line-height:1.6; margin:0; }
  .moat-strength-row{ display:flex; align-items:center; gap:10px; font-size:12px; color:var(--text-dim); margin-bottom:6px; }
  .moat-seg-row{ display:flex; gap:3px; flex:1; }
  .moat-seg{ flex:1; height:6px; border-radius:3px; background:var(--bg-3); }
  .moat-seg.on{ background:var(--green); }
  .moat-score{ font-family:'IBM Plex Mono', monospace; font-weight:700; color:var(--text); flex:none; }

  .cmp-row{ display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--border-soft); font-size:12.5px; }
  .cmp-row:last-of-type{ border-bottom:none; }
  .cmp-row.me{ background:rgba(139,124,246,0.06); margin:0 -8px; padding:9px 8px; border-radius:8px; border-bottom-color:transparent; }
  .cmp-name{ flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--text-dim); }
  .cmp-row.me .cmp-name{ color:var(--purple); font-weight:700; }
  .cmp-bar-wrap{ width:70px; height:6px; background:var(--bg-3); border-radius:4px; overflow:hidden; flex:none; }
  .cmp-bar-fill{ height:100%; border-radius:4px; }
  .cmp-pct{ font-family:'IBM Plex Mono', monospace; font-size:12px; font-weight:700; width:36px; text-align:right; flex:none; }
  .cmp-head{ display:flex; justify-content:space-between; font-size:10px; color:var(--text-faint); text-transform:uppercase; letter-spacing:0.05em; padding-bottom:10px; margin-bottom:2px; border-bottom:1px solid var(--border-soft); }

  /* why this score */
  .why-card{ border:1px solid var(--border); background:var(--bg-1); border-radius:14px; padding:22px; display:grid; grid-template-columns:1fr auto; gap:22px; align-items:center; }
  @media (max-width:900px){ .why-card{ grid-template-columns:1fr; } }
  .impact-code-panel{
    margin:0 0 16px; border:1px solid rgba(74,222,128,.24); border-radius:14px;
    overflow:hidden; background:linear-gradient(135deg,rgba(74,222,128,.045),transparent 42%),var(--bg-1);
  }
  .impact-code-head{
    min-height:43px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; gap:14px;
    border-bottom:1px solid var(--border); color:var(--text); font-size:11px; font-weight:800; letter-spacing:.11em;
  }
  .impact-code-head small{ color:var(--text-dim); font-size:10px; font-weight:600; letter-spacing:.04em; text-transform:none; }
  .impact-live{ display:inline-flex; align-items:center; gap:7px; color:var(--green); }
  .impact-live-dot{ width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 10px currentColor; animation:impactPulse 1.4s ease-in-out infinite; }
  .impact-code-body{ min-height:210px; padding:15px 16px 17px; display:flex; flex-direction:column; gap:4px; }
  .impact-code-line{
    display:grid; grid-template-columns:24px 13px minmax(0,1fr); align-items:start; gap:5px;
    min-height:26px; padding:3px 6px; border-radius:6px; color:var(--text-dim);
    font:500 12.5px/1.55 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  }
  .impact-code-line:last-child{ background:rgba(74,222,128,.055); color:var(--text); }
  .impact-line-no{ color:var(--text-faint); font-size:10px; padding-top:2px; user-select:none; }
  .impact-prompt{ color:var(--green); font-weight:900; }
  .impact-line-text{ min-width:0; overflow-wrap:anywhere; }
  .impact-cursor{ display:inline-block; width:7px; height:1.05em; margin-left:3px; vertical-align:-2px; background:var(--green); animation:impactBlink .75s steps(1) infinite; }
  @keyframes impactBlink{ 50%{ opacity:0; } }
  @keyframes impactPulse{ 50%{ opacity:.35; transform:scale(.78); } }
  @media (max-width:640px){ .impact-code-body{ min-height:260px; padding:12px 10px; } .impact-code-line{ font-size:11.5px; grid-template-columns:21px 11px minmax(0,1fr); } }
  .why-head{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
  .why-head .wicon{ width:34px; height:34px; border-radius:10px; background:rgba(139,124,246,0.14); color:var(--purple); display:flex; align-items:center; justify-content:center; font-size:16px; }
  .why-head h3{ font-size:15px; margin:0; }
  .why-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
  @media (max-width:760px){ .why-grid{ grid-template-columns:1fr 1fr; } }
  .why-pt{ display:flex; align-items:flex-start; gap:8px; font-size:12.5px; color:var(--text-dim); line-height:1.55; }
  .why-pt .ck{ color:var(--green); flex:none; margin-top:1px; }
  .why-next{ text-align:left; border-left:1px solid var(--border-soft); padding-left:22px; min-width:220px; }
  @media (max-width:900px){ .why-next{ border-left:none; padding-left:0; border-top:1px solid var(--border-soft); padding-top:18px; } }
  .why-next b{ display:block; font-size:12.5px; margin-bottom:4px; }
  .why-next p{ font-size:12px; color:var(--text-dim); line-height:1.6; margin:0 0 12px; }
  .why-btn{ display:inline-flex; align-items:center; gap:6px; background:#3b6df5; color:#fff; font-size:12.5px; font-weight:700; padding:10px 16px; border-radius:9px; }

  .detail-footer{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin-top:22px; padding-top:18px; border-top:1px solid var(--border-soft); font-family:'IBM Plex Mono', monospace; font-size:11px; color:var(--text-faint); }
  .detail-footer .df-right{ display:flex; align-items:center; gap:14px; }

  .back-link{ display:inline-flex; align-items:center; gap:7px; margin-top:26px; font-size:13px; color:var(--text-dim); cursor:pointer; }
  .back-link:hover{ color:var(--text); }

  /* Fit the rich report between the fixed sponsor rails. */
  .detail-wrap{ width:calc(100vw - (2 * var(--ad-rail-w)) - 68px); max-width:1080px; min-width:0; padding:28px 20px 70px; }
  @media (max-width:1600px){
    .row3b{ grid-template-columns:1fr; }
    .why-grid{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width:1180px){ .detail-wrap{ width:auto; } }

  @media (prefers-reduced-motion: reduce){ *{ animation-duration:.001ms !important; transition-duration:.001ms !important; } }
  /* ===== METHODOLOGY ===== */
  .method-wrap{ width:calc(100vw - (2 * var(--ad-rail-w)) - 68px); max-width:1080px; margin:0 auto; padding:46px 20px 80px; }
  .method-hero{ max-width:760px; margin-bottom:34px; }
  .method-kicker{ color:var(--green); font:700 10px 'IBM Plex Mono',monospace; letter-spacing:.14em; text-transform:uppercase; margin-bottom:12px; }
  .method-hero h1{ margin:0 0 14px; font-size:clamp(2rem,4vw,3.7rem); line-height:1.03; letter-spacing:-.045em; }
  .method-hero p{ margin:0; color:var(--text-dim); max-width:690px; font-size:14px; line-height:1.7; }
  .method-status{ display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
  .method-status span{ padding:6px 9px; border:1px solid var(--border); border-radius:7px; color:var(--text-faint); background:var(--bg-1); font:600 9px 'IBM Plex Mono',monospace; }
  .method-section{ margin-top:18px; padding:22px; border:1px solid var(--border); border-radius:14px; background:var(--bg-1); }
  .method-section h2{ margin:0 0 8px; font-size:18px; }
  .method-section > p{ margin:0 0 18px; color:var(--text-dim); font-size:12.5px; line-height:1.65; }
  .method-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
  .method-card{ padding:16px; border:1px solid var(--border-soft); border-radius:11px; background:var(--bg-2); }
  .method-card .step{ color:var(--green); font:700 9px 'IBM Plex Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
  .method-card h3{ margin:8px 0 6px; font-size:13px; }
  .method-card p{ margin:0; color:var(--text-dim); font-size:11.5px; line-height:1.55; }
  .formula-stack{ display:grid; gap:10px; }
  .formula-row{ display:grid; grid-template-columns:160px 1fr; gap:16px; align-items:center; padding:14px 16px; border:1px solid var(--border-soft); border-radius:10px; background:#0e1016; }
  .formula-name{ color:var(--text-dim); font-size:11px; }
  .formula{ color:var(--green); font:700 13px 'IBM Plex Mono',monospace; overflow-wrap:anywhere; }
  .formula-help{ display:block; margin-top:5px; color:var(--text-faint); font:500 9px 'IBM Plex Mono',monospace; }
  .band-table{ border:1px solid var(--border-soft); border-radius:10px; overflow:hidden; }
  .band-row{ display:grid; grid-template-columns:90px 115px 1fr; gap:12px; padding:12px 14px; border-bottom:1px solid var(--border-soft); align-items:center; font-size:11.5px; }
  .band-row:last-child{ border-bottom:0; }
  .band-range{ font:700 11px 'IBM Plex Mono',monospace; }
  .band-high{ color:var(--red); }.band-med{ color:var(--orange); }.band-low{ color:var(--green); }
  .band-desc{ color:var(--text-dim); }
  .limit-list{ display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; }
  .limit-item{ display:flex; gap:8px; color:var(--text-dim); font-size:11.5px; line-height:1.55; }
  .limit-item::before{ content:'!'; color:var(--orange); font:700 11px 'IBM Plex Mono',monospace; }
  .resource-list{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .resource-link{ display:flex; justify-content:space-between; gap:12px; padding:14px; border:1px solid var(--border-soft); border-radius:10px; background:var(--bg-2); }
  .resource-link:hover{ border-color:var(--purple); }
  .resource-link b{ display:block; margin-bottom:4px; font-size:12px; }
  .resource-link span{ color:var(--text-faint); font-size:10px; line-height:1.4; }
  .resource-link i{ color:var(--purple); font-style:normal; }
  .about-hero{ padding:42px 0 28px; border-bottom:1px solid var(--border-soft); }
  .about-kicker{ margin-bottom:12px; color:var(--green); font:700 10px 'IBM Plex Mono',monospace; letter-spacing:.14em; text-transform:uppercase; }
  .about-hero h1{ max-width:720px; margin:0 0 14px; font-size:clamp(34px,4vw,54px); line-height:1.04; letter-spacing:-.045em; }
  .about-hero>p{ max-width:760px; margin:0; color:var(--text-dim); font-size:14px; line-height:1.75; }
  .about-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:24px; }
  .about-stat{ padding:16px 18px; border:1px solid var(--border-soft); border-radius:12px; background:var(--bg-2); }
  .about-stat strong{ display:block; margin-bottom:4px; color:var(--green); font:700 22px 'IBM Plex Mono',monospace; }
  .about-stat span{ color:var(--text-faint); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
  .about-section{ padding:28px 0; border-bottom:1px solid var(--border-soft); }
  .about-section h2{ margin:0 0 8px; font-size:20px; }
  .about-section>.section-copy{ max-width:720px; margin:0 0 18px; color:var(--text-dim); font-size:12px; line-height:1.65; }
  .about-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
  .about-grid.three{ grid-template-columns:repeat(3,1fr); }
  .about-card{ padding:20px; border:1px solid var(--border-soft); border-radius:12px; background:linear-gradient(145deg,var(--bg-2),rgba(18,20,27,.62)); }
  .about-card .about-icon{ display:grid; place-items:center; width:30px; height:30px; margin-bottom:14px; border:1px solid rgba(74,222,128,.25); border-radius:8px; background:rgba(74,222,128,.08); }
  .about-card h3{ margin:0 0 8px; font-size:13px; }
  .about-card p{ margin:0; color:var(--text-dim); font-size:11px; line-height:1.65; }
  .about-steps{ counter-reset:about-step; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
  .about-step{ position:relative; padding:18px 18px 18px 48px; border:1px solid var(--border-soft); border-radius:12px; background:var(--bg-2); color:var(--text-dim); font-size:11px; line-height:1.55; }
  .about-step::before{ counter-increment:about-step; content:counter(about-step); position:absolute; left:16px; top:17px; display:grid; place-items:center; width:22px; height:22px; border-radius:7px; color:#08110c; background:var(--green); font:800 10px 'IBM Plex Mono',monospace; }
  .about-step b{ display:block; margin-bottom:5px; color:var(--text); font-size:12px; }
  .about-actions{ display:flex; gap:10px; padding:28px 0 8px; }
  .about-action{ display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 18px; border:1px solid var(--border); border-radius:10px; color:var(--text); background:var(--bg-2); font-size:11px; font-weight:700; }
  .about-action:hover{ border-color:var(--green); transform:translateY(-1px); }
  .about-action.primary{ border-color:rgba(74,222,128,.45); color:#08110c; background:var(--green); }
  @media(max-width:1180px){ .method-wrap{ width:auto; } }
  @media(max-width:760px){ .method-grid,.resource-list,.limit-list,.about-grid,.about-grid.three,.about-stats,.about-steps{ grid-template-columns:1fr; }.formula-row{ grid-template-columns:1fr; gap:6px; }.band-row{ grid-template-columns:70px 90px 1fr; } }

body{min-width:0}.detail-wrap{padding-top:18px}.topnav .theme-btn{margin-left:auto}
.seo-related{width:min(1040px,calc(100% - 40px));margin:0 auto 46px;padding:18px;border:1px solid var(--border);border-radius:13px;background:var(--bg-1)}
.seo-related h2{margin:0 0 10px;font-size:14px}.seo-related-links{display:flex;flex-wrap:wrap;gap:8px}.seo-related-links a{padding:9px 11px;border:1px solid var(--border);border-radius:8px;color:var(--text-dim);font-size:11px}.seo-related-links a:hover{border-color:var(--green);color:var(--text)}
@media(max-width:820px){.topnav .theme-btn span:last-child{display:none}.topnav{padding-inline:16px}.detail-wrap{width:calc(100% - 24px)}}
