
/* CAIN-42 Top 100 — October 2026. Self-contained, external, CSP-safe. */
.c100{position:relative;margin:38px 0 46px;padding:0;}
.c100-wrap{max-width:1220px;margin:0 auto;padding:0 20px;}
.c100-head{text-align:center;margin:0 0 26px;}
.c100-kicker{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:#38e8ff;margin:0 0 10px;font-weight:800}
.c100-title{font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.1;margin:.1em 0 .35em;font-weight:900;letter-spacing:-.01em}
.c100-title em{font-style:normal;background:linear-gradient(90deg,#38e8ff,#a855f7,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}
.c100-sub{max-width:760px;margin:0 auto;opacity:.82;font-size:.98rem;line-height:1.6}
.c100-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:16px;margin:8px 0 18px}
.c100-card{position:relative;display:block;padding:16px 15px 15px;border-radius:16px;text-decoration:none;
  background:radial-gradient(120% 120% at 0% 0%,rgba(56,232,255,.10),rgba(10,12,18,.92) 55%),#0a0c12;
  color:#e8ecf4;overflow:hidden;isolation:isolate;transition:transform .18s ease,box-shadow .25s ease}
.c100-card::before{content:"";position:absolute;inset:-2px;z-index:-2;border-radius:18px;
  background:conic-gradient(from 0deg,#38e8ff,#a855f7,#22d3ee,#38e8ff);
  filter:blur(9px);opacity:.55;animation:c100spin 8s linear infinite}
.c100-card::after{content:"";position:absolute;inset:0;border-radius:16px;z-index:-1;
  background:linear-gradient(#0a0c12,#0a0c12) padding-box,
             linear-gradient(120deg,rgba(56,232,255,.85),rgba(168,85,247,.85),rgba(34,211,238,.85)) border-box;
  border:1.6px solid transparent}
@keyframes c100spin{to{transform:rotate(360deg)}}
.c100-card:hover{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(56,232,255,.35),0 14px 44px rgba(56,232,255,.22)}
.c100-rank{font-size:.68rem;font-weight:900;letter-spacing:.14em;color:#38e8ff;opacity:.95}
.c100-name{font-size:.95rem;font-weight:800;line-height:1.25;margin:7px 0 7px;min-height:2.4em}
.c100-meta{font-size:.74rem;opacity:.78;line-height:1.4}
.c100-price{display:inline-block;margin-top:9px;font-size:.72rem;font-weight:700;color:#0a0c12;background:linear-gradient(90deg,#38e8ff,#22d3ee);padding:3px 9px;border-radius:999px}
.c100-tag{position:absolute;top:12px;right:12px;font-size:.6rem;letter-spacing:.1em;font-weight:800;color:#22d3ee;opacity:.9}
.c100-more{text-align:center;margin:18px 0 0}
.c100-more a{color:#38e8ff;font-weight:700;text-decoration:none}
@media (prefers-reduced-motion:reduce){.c100-card::before{animation:none}}

/* detail page */
.c100d-head{padding:34px 0 8px}
.c100d-item{position:relative;margin:18px 0;padding:20px 20px 18px;border-radius:16px;background:#0b0e15;color:#e8ecf4;overflow:hidden;isolation:isolate}
.c100d-item::after{content:"";position:absolute;inset:0;border-radius:16px;z-index:-1;border:1.4px solid transparent;
  background:linear-gradient(120deg,rgba(56,232,255,.7),rgba(168,85,247,.7),rgba(34,211,238,.7)) border-box}
.c100d-item h3{margin:.2em 0 .35em;font-size:1.12rem}
.c100d-badge{font-size:.68rem;font-weight:900;letter-spacing:.14em;color:#38e8ff}
.c100d-p{line-height:1.65;margin:.5em 0;font-size:.95rem;opacity:.92}
.c100d-kv{font-size:.83rem;opacity:.82;margin:.25em 0}
.c100d-demo{margin-top:12px;padding:12px;border-radius:12px;background:rgba(56,232,255,.06);border:1px solid rgba(56,232,255,.22)}
.c100d-demo button{cursor:pointer;background:linear-gradient(90deg,#38e8ff,#22d3ee);color:#08111a;font-weight:800;border:0;border-radius:10px;padding:8px 14px;font-size:.82rem}
.c100d-out{margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto;opacity:.9}

/* Slower ticker: crawl speed (override shared stylesheet). */
.c42-ticker-track{animation-duration:1200s !important;}

/* Big centered hero logo (override shared stylesheet, cache-safe). */
.c42-mark{width:clamp(200px,26vw,340px) !important;height:auto !important;}

/* CTA under the Top 100 intro. */
.c100-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:20px 0 6px;}

/* ---- Interactive live decision console (Top 100) ---- */
.c100-live{max-width:1120px;margin:6px auto 26px;padding:18px 18px 16px;border-radius:18px;
  background:radial-gradient(120% 140% at 0% 0%,rgba(56,232,255,.10),rgba(8,10,16,.96) 60%),#080a10;
  border:1.4px solid rgba(56,232,255,.35);box-shadow:0 0 0 1px rgba(168,85,247,.18),0 18px 60px rgba(56,232,255,.12);position:relative;overflow:hidden}
.c100-live-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.c100-live-h b{font-size:1rem;letter-spacing:.02em}
.c100-live-sub{font-size:.78rem;opacity:.72}
.c100-dot{width:9px;height:9px;border-radius:50%;background:#22d3ee;box-shadow:0 0 12px #22d3ee;animation:c100pulse 1.6s ease-in-out infinite}
@keyframes c100pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}
.c100-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.c100-chip{cursor:pointer;font-size:.74rem;font-weight:700;letter-spacing:.01em;color:#dbe6f5;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 12px;transition:.15s}
.c100-chip:hover{border-color:#38e8ff;color:#fff;box-shadow:0 0 14px rgba(56,232,255,.35)}
.c100-chip.allow:hover{border-color:#22c55e;box-shadow:0 0 14px rgba(34,197,94,.35)}
.c100-chip.block:hover{border-color:#e11d2e;box-shadow:0 0 14px rgba(225,29,46,.35)}
.c100-out{min-height:64px;border-radius:12px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.08);padding:14px}
.c100-idle{opacity:.65;font-size:.85rem}
.c100-loading{display:flex;align-items:center;gap:10px;font-size:.85rem;opacity:.9}
.c100-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(56,232,255,.3);border-top-color:#38e8ff;display:inline-block;animation:c100spin .8s linear infinite}
@keyframes c100spin{to{transform:rotate(360deg)}}
.c100-verdict{display:inline-block;font-weight:900;letter-spacing:.12em;font-size:.82rem;padding:5px 12px;border-radius:8px}
.c100-verdict.block{color:#fff;background:linear-gradient(90deg,#b91c1c,#e11d2e)}
.c100-verdict.hold{color:#0a0c12;background:linear-gradient(90deg,#f59e0b,#fbbf24)}
.c100-verdict.allow{color:#04120a;background:linear-gradient(90deg,#22c55e,#4ade80)}
.c100-res-t{font-weight:800;margin:10px 0 2px}
.c100-res-p{margin:.2em 0 .6em;font-size:.87rem;opacity:.9;line-height:1.55}
.c100-pipe-label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#38e8ff;opacity:.85;margin:8px 0 6px}
.c100-stages{display:flex;flex-wrap:wrap;gap:6px}
.c100-stage{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;padding:4px 9px;border-radius:999px;
  border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);opacity:0;transform:translateY(4px)}
.c100-stage{animation:c100pop .35s ease forwards}
@keyframes c100pop{to{opacity:1;transform:none}}
.c100-stage i{font-style:normal;font-size:.62rem;opacity:.6}
.c100-stage em{font-style:normal;font-size:.6rem;letter-spacing:.08em;color:#38e8ff;opacity:.9}
.c100-stage.allow{border-color:rgba(34,197,94,.7);color:#bbf7d0}
.c100-stage.deny{border-color:rgba(225,29,46,.75);color:#fecaca}
.c100-stage.hold{border-color:rgba(245,158,11,.75);color:#fde68a}
.c100-stage.skip{opacity:.5}
.c100-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:.74rem;opacity:.85}
.c100-meta b{color:#38e8ff}
.c100-honest{margin-top:10px;font-size:.74rem;opacity:.6;font-style:italic}
.c100-err{color:#fecaca;font-size:.85rem}
.c100d-run{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.c100-sel{background:#0d1420;color:#e8ecf4;border:1px solid rgba(56,232,255,.4);border-radius:9px;padding:7px 10px;font-size:.8rem}
.c100-run{cursor:pointer;background:linear-gradient(90deg,#38e8ff,#22d3ee);color:#08111a;font-weight:800;border:0;border-radius:10px;padding:8px 14px;font-size:.82rem}
.c100d-hint{font-size:.72rem;opacity:.6}
