/* ============================================================
   One Zyme · Competitive Intelligence, page-specific dynamic
   styles. Layered on _solutions.css + se-page.css + china-map.css.
   Two marquee engines:
     1 · Inflection radar  (.mon-*) , global monitoring & alerts
     2 · FTO patent studio (.fto-*) , freedom-to-operate analysis
   All motion is reduced-motion aware (see ci-page.js).
   ============================================================ */

/* ════════════════════════════════════════════════════════
   1 · INFLECTION RADAR, global monitoring & alerts
   ════════════════════════════════════════════════════════ */
.mon{
  background:
    radial-gradient(900px 480px at 18% 0%,  rgba(6,182,212,0.10),  transparent 60%),
    radial-gradient(800px 440px at 92% 100%, rgba(42,74,107,0.40), transparent 62%),
    linear-gradient(180deg, #0A1628 0%, #0F1B30 100%);
  color:var(--oz-bone);
}
.mon .section-head h2{color:var(--oz-bone);}
.mon .section-head h2 em{color:var(--oz-cyan);font-style:italic;}
.mon .section-head p{color:var(--oz-on-dark-2);}
.mon .section-head .pill{color:var(--oz-cyan);border:1px solid var(--oz-cyan-ring);background:transparent;}
.mon .section-head .pill .dot{background:var(--oz-cyan);}

.mon-stage{
  position:relative;
  background:rgba(10,22,40,0.55);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border:1px solid var(--oz-on-dark-line-2);
  border-radius:24px;overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,0.4);
}
.mon-bar{
  display:flex;align-items:center;gap:14px;
  padding:16px 22px;border-bottom:1px solid var(--oz-on-dark-line);
  background:rgba(244,240,230,0.02);
  font-family:var(--oz-font-mono);font-size:11px;letter-spacing:0.10em;text-transform:uppercase;color:var(--oz-on-dark-3);font-weight:600;
}
.mon-bar .live{display:inline-flex;align-items:center;gap:8px;color:var(--oz-cyan);}
.mon-bar .live .d{width:8px;height:8px;border-radius:9999px;background:var(--oz-cyan);box-shadow:0 0 0 3px var(--oz-cyan-soft);animation:mon-pulse 2s ease-in-out infinite;}
@keyframes mon-pulse{0%,100%{box-shadow:0 0 0 3px var(--oz-cyan-soft);}50%{box-shadow:0 0 0 7px rgba(6,182,212,0.04);}}
.mon-bar .sep{width:1px;height:14px;background:var(--oz-on-dark-line);}
.mon-bar .scan{margin-left:auto;color:var(--oz-on-dark-2);}
.mon-bar .scan b{color:var(--oz-bone);font-weight:600;}

.mon-grid{display:grid;grid-template-columns:0.82fr 1.18fr;gap:0;}
@media (max-width:1000px){.mon-grid{grid-template-columns:1fr;}}

/* LEFT, watchlist */
.mon-watch{padding:22px;border-right:1px solid var(--oz-on-dark-line);display:flex;flex-direction:column;gap:14px;}
@media (max-width:1000px){.mon-watch{border-right:0;border-bottom:1px solid var(--oz-on-dark-line);}}
.mon-h{display:flex;align-items:center;justify-content:space-between;font-family:var(--oz-font-mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--oz-on-dark-3);font-weight:600;}
.mon-h .tag{color:var(--oz-cyan);}
.mon-watch-list{display:flex;flex-direction:column;gap:8px;}
.mon-wrow{
  display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;
  padding:12px 14px;border-radius:11px;
  background:rgba(244,240,230,0.025);border:1px solid var(--oz-on-dark-line);
  transition:border-color .35s var(--oz-ease), background .35s var(--oz-ease), box-shadow .35s var(--oz-ease);
}
.mon-wrow .nm{font-size:13px;color:var(--oz-bone);font-weight:600;letter-spacing:-0.01em;display:flex;align-items:center;gap:8px;}
.mon-wrow .nm .pin{width:6px;height:6px;border-radius:9999px;background:var(--oz-on-dark-line-2);flex-shrink:0;transition:all .35s var(--oz-ease);}
.mon-wrow .meta{font-family:var(--oz-font-mono);font-size:9.5px;color:var(--oz-on-dark-3);margin-top:3px;letter-spacing:0.02em;}
.mon-wrow .cnt{
  font-family:var(--oz-font-mono);font-size:13px;font-weight:600;color:var(--oz-cyan);
  font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:4px;
}
.mon-wrow .cnt small{font-size:8px;letter-spacing:0.10em;color:var(--oz-on-dark-3);text-transform:uppercase;}
.mon-wrow.hot{
  border-color:var(--oz-cyan-ring);
  background:linear-gradient(180deg, rgba(6,182,212,0.10), rgba(10,22,40,0.4));
  box-shadow:0 0 0 1px var(--oz-cyan-ring), 0 14px 30px rgba(0,0,0,0.3);
}
.mon-wrow.hot .nm .pin{background:var(--oz-cyan);box-shadow:0 0 0 3px var(--oz-cyan-soft);}

/* RIGHT, live signal stream + alert overlay */
.mon-feed-wrap{position:relative;padding:22px;min-height:430px;}
.mon-feed{display:flex;flex-direction:column;gap:8px;}
.mon-ev{
  display:grid;grid-template-columns:54px 78px 1fr auto;gap:12px;align-items:center;
  padding:11px 14px;border-radius:10px;
  background:rgba(244,240,230,0.02);border:1px solid var(--oz-on-dark-line);
}
.mon-ev.enter{animation:mon-enter .55s var(--oz-ease) both;}
@keyframes mon-enter{from{opacity:0;transform:translateY(-14px) scale(0.98);}to{opacity:1;transform:none;}}
.mon-ev .t{font-family:var(--oz-font-mono);font-size:10px;color:var(--oz-on-dark-3);letter-spacing:0.02em;}
.mon-ev .ty{
  font-family:var(--oz-font-mono);font-size:8.5px;letter-spacing:0.08em;text-transform:uppercase;font-weight:700;
  padding:4px 0;text-align:center;border-radius:6px;
  background:rgba(244,240,230,0.05);color:var(--oz-on-dark-2);
}
.mon-ev .ty.trial{background:rgba(6,182,212,0.14);color:var(--oz-cyan);}
.mon-ev .ty.deal{background:rgba(47,191,107,0.14);color:#3FD27F;}
.mon-ev .ty.patent{background:rgba(244,240,230,0.07);color:var(--oz-bone);}
.mon-ev .ty.reg{background:rgba(232,163,61,0.16);color:#E8A33D;}
.mon-ev .ty.conf{background:rgba(6,182,212,0.10);color:var(--oz-cyan);}
.mon-ev .desc{font-size:12px;color:var(--oz-on-dark-1);line-height:1.35;letter-spacing:-0.005em;}
.mon-ev .desc b{color:var(--oz-bone);font-weight:600;}
.mon-ev .wt{display:flex;align-items:center;gap:7px;}
.mon-ev .wt .bar{width:46px;height:5px;border-radius:3px;background:var(--oz-on-dark-line);overflow:hidden;}
.mon-ev .wt .bar > i{display:block;height:100%;background:var(--oz-cyan);border-radius:3px;}
.mon-ev .wt .lv{font-family:var(--oz-font-mono);font-size:8.5px;letter-spacing:0.08em;color:var(--oz-on-dark-3);text-transform:uppercase;font-weight:600;width:30px;text-align:right;}
.mon-ev.high{border-color:var(--oz-cyan-ring);background:rgba(6,182,212,0.05);}
.mon-ev.high .wt .lv{color:var(--oz-cyan);}

@media (max-width:560px){
  .mon-ev{grid-template-columns:1fr auto;}
  .mon-ev .t,.mon-ev .ty{display:none;}
}

/* alert card, fires over the feed */
.mon-alert{
  position:absolute;right:22px;top:64px;z-index:6;width:300px;max-width:calc(100% - 44px);
  background:linear-gradient(165deg, rgba(6,182,212,0.16), rgba(10,22,40,0.94));
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border:1px solid var(--oz-cyan-ring);border-radius:14px;padding:16px 18px;
  display:flex;flex-direction:column;gap:9px;
  box-shadow:0 24px 56px rgba(0,0,0,0.5), 0 0 0 1px rgba(6,182,212,0.10), 0 0 30px rgba(6,182,212,0.22);
  opacity:0;transform:translateY(-10px) scale(0.97);pointer-events:none;
  transition:opacity .45s var(--oz-ease), transform .45s var(--oz-ease);
}
.mon-alert.show{opacity:1;transform:none;}
.mon-alert .ah{display:flex;align-items:center;gap:8px;font-family:var(--oz-font-mono);font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--oz-cyan);font-weight:700;}
.mon-alert .ah .ring{width:9px;height:9px;border-radius:9999px;border:2px solid var(--oz-cyan);position:relative;}
.mon-alert .ah .ring::after{content:"";position:absolute;inset:-4px;border-radius:9999px;border:1px solid var(--oz-cyan);opacity:0;animation:mon-ring 2s ease-out infinite;}
@keyframes mon-ring{0%{transform:scale(1);opacity:0.7;}100%{transform:scale(2.2);opacity:0;}}
.mon-alert .who{font-family:var(--oz-font-display);font-size:17px;font-weight:500;color:var(--oz-bone);letter-spacing:-0.012em;line-height:1.15;}
.mon-alert .body{font-size:12.5px;color:var(--oz-on-dark-1);line-height:1.45;}
.mon-alert .body em{font-style:italic;color:var(--oz-cyan);}
.mon-alert .why{font-family:var(--oz-font-mono);font-size:10px;color:var(--oz-on-dark-2);line-height:1.5;letter-spacing:0.01em;padding-top:9px;border-top:1px solid var(--oz-on-dark-line);}
.mon-alert .why b{color:var(--oz-cyan);font-weight:600;}

/* footer stats */
.mon-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--oz-on-dark-line);background:rgba(10,22,40,0.4);}
.mon-stat{padding:18px 22px;border-right:1px solid var(--oz-on-dark-line);}
.mon-stat:last-child{border-right:0;}
.mon-stat .v{font-family:var(--oz-font-mono);font-size:23px;font-weight:500;color:var(--oz-bone);letter-spacing:-0.02em;line-height:1;font-variant-numeric:tabular-nums;display:block;}
.mon-stat .l{display:block;font-family:var(--oz-font-mono);font-size:10px;color:var(--oz-on-dark-3);letter-spacing:0.08em;text-transform:uppercase;margin-top:6px;font-weight:600;}
@media (max-width:720px){
  .mon-stats{grid-template-columns:repeat(2,1fr);}
  .mon-stat:nth-child(2){border-right:0;}
  .mon-stat:nth-child(1),.mon-stat:nth-child(2){border-bottom:1px solid var(--oz-on-dark-line);}
}

/* feature row below the radar */
.mon-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px;}
.mon-feat{background:rgba(244,240,230,0.025);border:1px solid var(--oz-on-dark-line);border-radius:16px;padding:22px;transition:border-color .25s var(--oz-ease);}
.mon-feat:hover{border-color:var(--oz-cyan-ring);}
.mon-feat h5{font-family:var(--oz-font-display);font-size:18px;font-weight:500;letter-spacing:-0.012em;color:var(--oz-bone);margin:0 0 8px;}
.mon-feat p{font-size:13px;color:var(--oz-on-dark-2);line-height:1.5;margin:0;}
@media (max-width:1000px){.mon-feats{grid-template-columns:1fr;}}

/* ════════════════════════════════════════════════════════
   2 · FTO PATENT STUDIO, freedom-to-operate analysis
   ════════════════════════════════════════════════════════ */
.fto{background:var(--oz-bone);}
.fto-stage{
  display:grid;grid-template-columns:0.8fr 1.35fr 0.85fr;gap:0;
  background:linear-gradient(180deg,#0F1E36 0%, var(--oz-midnight) 100%);
  border:1px solid var(--oz-on-dark-line);border-radius:24px;overflow:hidden;
  color:var(--oz-on-dark-1);position:relative;
}
.fto-stage::before{content:"";position:absolute;right:-160px;top:-160px;width:480px;height:480px;border-radius:9999px;border:1px solid var(--oz-on-dark-line);pointer-events:none;}
@media (max-width:1100px){.fto-stage{grid-template-columns:1fr;}}

/* LEFT, asset under review */
.fto-asset{position:relative;z-index:2;padding:28px 24px;border-right:1px solid var(--oz-on-dark-line);display:flex;flex-direction:column;gap:16px;}
@media (max-width:1100px){.fto-asset{border-right:0;border-bottom:1px solid var(--oz-on-dark-line);}}
.fto-asset-card{background:rgba(244,240,230,0.03);border:1px solid var(--oz-on-dark-line);border-radius:14px;padding:16px;}
.fto-asset-card .top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.fto-asset-card .ico{width:36px;height:36px;border-radius:9px;background:var(--oz-cyan-soft);color:var(--oz-cyan);display:flex;align-items:center;justify-content:center;font-family:var(--oz-font-mono);font-size:11px;font-weight:600;flex-shrink:0;}
.fto-asset-card .nm{font-size:14px;color:var(--oz-bone);font-weight:600;letter-spacing:-0.01em;}
.fto-asset-card .sub{font-family:var(--oz-font-mono);font-size:10px;color:var(--oz-on-dark-3);margin-top:3px;letter-spacing:0.04em;}
.fto-claims{display:flex;flex-direction:column;gap:7px;}
.fto-claim{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;font-size:11.5px;color:var(--oz-on-dark-2);background:rgba(244,240,230,0.02);border:1px solid var(--oz-on-dark-line);border-radius:8px;padding:8px 11px;}
.fto-claim .c{font-family:var(--oz-font-mono);font-size:9px;color:var(--oz-cyan);font-weight:700;letter-spacing:0.04em;}
.fto-scope{font-family:var(--oz-font-mono);font-size:10px;letter-spacing:0.10em;text-transform:uppercase;color:var(--oz-on-dark-3);font-weight:600;}
.fto-scope b{color:var(--oz-cyan);}

/* CENTER, patent landscape grid */
.fto-land{position:relative;z-index:2;padding:28px 26px;display:flex;flex-direction:column;gap:14px;}
.fto-land-head{display:flex;align-items:center;justify-content:space-between;}
.fto-land-head .status{display:flex;align-items:center;gap:7px;font-family:var(--oz-font-mono);font-size:10px;letter-spacing:0.10em;text-transform:uppercase;color:var(--oz-cyan);font-weight:600;}
.fto-land-head .status .d{width:6px;height:6px;border-radius:9999px;background:var(--oz-cyan);box-shadow:0 0 0 3px var(--oz-cyan-soft);animation:mon-pulse 2s ease-in-out infinite;}
.fto-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;}
.fto-fam{
  position:relative;background:rgba(244,240,230,0.025);border:1px solid var(--oz-on-dark-line);border-radius:10px;
  padding:11px 12px;min-height:84px;display:flex;flex-direction:column;gap:6px;
  transition:border-color .4s var(--oz-ease), background .4s var(--oz-ease), box-shadow .4s var(--oz-ease), opacity .4s var(--oz-ease);
  opacity:0.45;
}
.fto-fam.analyzed{opacity:1;}
.fto-fam .id{font-family:var(--oz-font-mono);font-size:9px;color:var(--oz-on-dark-3);letter-spacing:0.04em;}
.fto-fam .as{font-size:11px;color:var(--oz-bone);font-weight:600;letter-spacing:-0.005em;line-height:1.2;}
.fto-fam .st{margin-top:auto;font-family:var(--oz-font-mono);font-size:8px;letter-spacing:0.10em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:5px;color:var(--oz-on-dark-3);}
.fto-fam .st::before{content:"";width:6px;height:6px;border-radius:9999px;background:var(--oz-on-dark-line-2);}
/* classified states */
.fto-fam.block{border-color:rgba(233,107,89,0.45);background:rgba(233,107,89,0.10);box-shadow:0 0 0 1px rgba(233,107,89,0.18);}
.fto-fam.block .st{color:#F2A293;}
.fto-fam.block .st::before{background:#E96B59;box-shadow:0 0 0 3px rgba(233,107,89,0.18);}
.fto-fam.watch{border-color:rgba(232,163,61,0.45);background:rgba(232,163,61,0.10);}
.fto-fam.watch .st{color:#E8C58A;}
.fto-fam.watch .st::before{background:#E8A33D;box-shadow:0 0 0 3px rgba(232,163,61,0.16);}
.fto-fam.clear{border-color:var(--oz-cyan-ring);background:rgba(6,182,212,0.07);}
.fto-fam.clear .st{color:var(--oz-cyan);}
.fto-fam.clear .st::before{background:var(--oz-cyan);box-shadow:0 0 0 3px var(--oz-cyan-soft);}
.fto-fam.expired{opacity:0.7;}
.fto-fam.expired .st{color:var(--oz-on-dark-3);}
.fto-fam.expired .st::before{background:var(--oz-on-dark-line-2);}
.fto-fam .scan{position:absolute;inset:0;border-radius:10px;border:1px solid var(--oz-cyan);opacity:0;pointer-events:none;}
.fto-fam.scanning .scan{animation:fto-scan 0.7s ease-out;}
@keyframes fto-scan{0%{opacity:0.9;box-shadow:0 0 0 0 rgba(6,182,212,0.4);}100%{opacity:0;box-shadow:0 0 0 8px rgba(6,182,212,0);}}
.fto-legend{display:flex;flex-wrap:wrap;gap:14px;padding-top:6px;}
.fto-legend span{font-family:var(--oz-font-mono);font-size:9px;letter-spacing:0.06em;text-transform:uppercase;color:var(--oz-on-dark-3);font-weight:600;display:inline-flex;align-items:center;gap:6px;}
.fto-legend span::before{content:"";width:7px;height:7px;border-radius:9999px;}
.fto-legend .lg-block::before{background:#E96B59;}
.fto-legend .lg-watch::before{background:#E8A33D;}
.fto-legend .lg-clear::before{background:var(--oz-cyan);}
.fto-legend .lg-exp::before{background:var(--oz-on-dark-line-2);}
@media (max-width:560px){.fto-grid{grid-template-columns:repeat(2,1fr);}}

/* RIGHT, risk summary */
.fto-sum{position:relative;z-index:2;padding:28px 24px;border-left:1px solid var(--oz-on-dark-line);display:flex;flex-direction:column;gap:16px;}
@media (max-width:1100px){.fto-sum{border-left:0;border-top:1px solid var(--oz-on-dark-line);}}
.fto-gauge{background:rgba(244,240,230,0.03);border:1px solid var(--oz-on-dark-line);border-radius:14px;padding:18px;text-align:center;}
.fto-gauge .lbl{font-family:var(--oz-font-mono);font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--oz-on-dark-3);font-weight:600;}
.fto-gauge .level{font-family:var(--oz-font-display);font-size:30px;font-weight:500;letter-spacing:-0.015em;margin:8px 0 12px;color:#E8A33D;}
.fto-meter{height:8px;border-radius:9999px;background:var(--oz-on-dark-line);overflow:hidden;position:relative;}
.fto-meter > i{display:block;height:100%;width:0;border-radius:9999px;background:linear-gradient(90deg, var(--oz-cyan), #E8A33D 70%, #E96B59);transition:width 1.2s var(--oz-ease);}
.fto-meter-scale{display:flex;justify-content:space-between;font-family:var(--oz-font-mono);font-size:8px;letter-spacing:0.08em;text-transform:uppercase;color:var(--oz-on-dark-3);margin-top:6px;}
.fto-figs{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.fto-fig{background:rgba(244,240,230,0.025);border:1px solid var(--oz-on-dark-line);border-radius:10px;padding:12px;}
.fto-fig .v{font-family:var(--oz-font-mono);font-size:20px;font-weight:500;color:var(--oz-bone);letter-spacing:-0.01em;line-height:1;font-variant-numeric:tabular-nums;}
.fto-fig .v.danger{color:#F2A293;}
.fto-fig .l{font-family:var(--oz-font-mono);font-size:9px;letter-spacing:0.06em;text-transform:uppercase;color:var(--oz-on-dark-3);margin-top:6px;font-weight:600;line-height:1.3;}
.fto-finds{display:flex;flex-direction:column;gap:9px;}
.fto-find{display:grid;grid-template-columns:auto 1fr;gap:9px;font-size:11.5px;color:var(--oz-on-dark-1);line-height:1.4;opacity:0;transform:translateY(6px);transition:opacity .45s var(--oz-ease), transform .45s var(--oz-ease);}
.fto-find.show{opacity:1;transform:none;}
.fto-find .dot{width:6px;height:6px;border-radius:9999px;margin-top:5px;background:var(--oz-cyan);flex-shrink:0;}
.fto-find.block .dot{background:#E96B59;}
.fto-find.watch .dot{background:#E8A33D;}
.fto-find .cite{font-family:var(--oz-font-mono);font-size:9px;color:var(--oz-cyan);background:var(--oz-cyan-soft);padding:1px 6px;border-radius:9999px;letter-spacing:0.03em;margin-left:5px;white-space:nowrap;}

/* disclaimer footnote */
.fto-note{display:flex;align-items:flex-start;gap:10px;margin-top:22px;padding:16px 20px;background:#FBF9F3;border:1px solid var(--oz-bone-line);border-radius:14px;}
.fto-note .ast{font-family:var(--oz-font-mono);font-size:14px;color:var(--oz-steel);line-height:1;flex-shrink:0;font-weight:700;}
.fto-note p{font-size:12.5px;line-height:1.55;color:var(--oz-fg-2);margin:0;}
.fto-note p b{color:var(--oz-midnight);font-weight:600;}

@media (prefers-reduced-motion: reduce){
  .mon-bar .live .d,.fto-land-head .status .d,.mon-alert .ah .ring::after{animation:none;}
  .mon-ev.enter{animation:none;}
  .fto-fam.scanning .scan{animation:none;}
  .fto-find{opacity:1;transform:none;}
}
