/* ============================================================
 * LncACTdb 4.0 — ceRNA-pair result page (ForCe)
 * Layered on lncact-result.css. Self-contained (does NOT load gdata.css).
 * Colour convention: lncRNA = violet (--la-lnc), mRNA = green (--la-mrna).
 * ============================================================ */

/* ---------- title bar ---------- */
.la-rtitle__lnc{color:var(--la-lnc)!important;}
.la-rtitle__gene{color:#047857!important;}
.la-rtitle__rel{font-style:normal;color:var(--la-muted);margin:0 12px;font-size:.62em;
  display:inline-flex;align-items:center;vertical-align:middle;}
.la-rtitle__back{display:flex;gap:8px;flex-wrap:wrap;position:relative;z-index:2;}
.la-backchip{display:inline-flex;align-items:center;gap:8px;font:600 13px var(--la-font);
  background:rgba(255,255,255,.7);border:1px solid var(--la-line);border-radius:999px;
  padding:9px 15px;transition:.16s;white-space:nowrap;color:var(--la-ink);}
.la-backchip:hover{background:#fff;box-shadow:var(--la-shadow-sm);transform:translateX(-2px);}
.la-backchip--lnc b{color:var(--la-lnc);} .la-backchip--gene b{color:#047857;}

/* ---------- ceRNA-triad profile panel (LIGHT) ---------- */
.la-gp--ce{display:block;}
.la-gp.la-gp--ce{background:linear-gradient(180deg,#f6f3fe 0%,#eef5ff 26%,#fafbff 60%,#fff 100%);}

.la-gp__triad{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:0;
  padding:10px 32px;position:relative;overflow:hidden;background:transparent;}

.la-gp__triad::after{content:"";position:absolute;inset:0;opacity:.7;pointer-events:none;
  background:radial-gradient(560px 240px at 6% -10%,rgba(124,58,237,.12),transparent 55%),
             radial-gradient(560px 240px at 94% 120%,rgba(16,185,129,.12),transparent 55%);}
.la-triad__node{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;
  justify-content:center;gap:8px;padding:18px 22px;border-radius:16px;min-width:0;
  background:rgba(255,255,255,.82);border:1px solid var(--la-line);box-shadow:var(--la-shadow-sm);}
.la-triad__node--lnc{border-left:4px solid var(--la-lnc);}
.la-triad__node--gene{border-left:4px solid var(--la-mrna);align-items:flex-end;text-align:right;}
.la-triad__role{font:700 11px var(--la-mono);letter-spacing:.1em;text-transform:uppercase;}
.la-triad__node--lnc .la-triad__role{color:var(--la-lnc);}
.la-triad__node--gene .la-triad__role{color:#047857;}
.la-triad__name{font:800 26px var(--la-mono);letter-spacing:-.01em;text-decoration:none;
  word-break:break-word;line-height:1.1;color:var(--la-ink);}
.la-triad__node--lnc .la-triad__name{color:var(--la-lnc);}
.la-triad__node--gene .la-triad__name{color:#047857;}
.la-triad__name:hover{text-decoration:underline;}
.la-triad__ids{display:flex;flex-direction:column;gap:3px;}
.la-gp__triad .la-mono-cell{font:500 12px var(--la-mono);color:var(--la-muted);font-style:normal;}
.la-triad__links{display:flex;gap:7px;flex-wrap:wrap;margin-top:4px;}
.la-triad__node--gene .la-triad__links{justify-content:flex-end;}
.la-triad__links a{font:600 11.5px var(--la-font);color:var(--la-primary-d);background:var(--la-bg-tint);
  border:1px solid var(--la-line);padding:5px 11px;border-radius:8px;text-decoration:none;transition:.15s;}
.la-triad__links a:hover{background:var(--la-primary);color:#fff;border-color:var(--la-primary);}

/* central miRNA hub */
.la-triad__hub{position:relative;z-index:2;display:flex;align-items:center;gap:0;padding:0 6px;}
.la-triad__edge{width:38px;height:3px;border-radius:2px;flex:none;position:relative;opacity:.8;
  background:linear-gradient(90deg,var(--la-lnc),var(--la-mrna));}

.la-triad__edge::before{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);
  background-size:200% 100%;animation:laEdge 1.8s linear infinite;}
@keyframes laEdge{0%{background-position:200% 0;}100%{background-position:-100% 0;}}
.la-triad__mir{position:relative;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
  width:104px;height:104px;border-radius:50%;cursor:pointer;color:#fff;
  background:radial-gradient(circle at 50% 35%,var(--la-mir),var(--la-orange));
  border:3px solid #fff;box-shadow:0 8px 22px rgba(245,158,11,.38),0 0 0 1px rgba(245,158,11,.25);transition:.18s;}
.la-triad__mir::before{content:"";position:absolute;inset:-3px;border-radius:50%;pointer-events:none;
  box-shadow:0 0 0 0 rgba(245,158,11,.5);animation:laMirPulse 2.6s ease-in-out infinite;}
@keyframes laMirPulse{
  0%{box-shadow:0 0 0 0 rgba(245,158,11,.5);}
  70%{box-shadow:0 0 0 16px rgba(245,158,11,0);}
  100%{box-shadow:0 0 0 0 rgba(245,158,11,0);}
}
.la-triad__mir:hover::before{animation-play-state:paused;}


.la-triad__mir:hover{transform:scale(1.06);box-shadow:0 14px 38px rgba(245,158,11,.55);}
.la-triad__mir i{font-size:15px;opacity:.85;margin-bottom:2px;}
.la-triad__mirn{font:800 26px var(--la-mono);line-height:1;}
.la-triad__mirl{font:600 9.5px var(--la-font);opacity:.92;text-transform:uppercase;letter-spacing:.04em;}

/* stats row reuses .la-gp__stats / .la-gk / .la-modstrip / .la-gphl from result.css */
.la-gp--ce .la-gp__stats{padding:10px 28px 10px;display:flex;flex-direction:column;gap:5px;}
.la-gp--ce .la-gp__kpis{grid-template-columns:repeat(4,1fr);}

@media(max-width:900px){
  .la-gp__triad{grid-template-columns:1fr;gap:18px;}
  .la-triad__node--gene{align-items:flex-start;text-align:left;}
  .la-triad__node--gene .la-triad__links{justify-content:flex-start;}
  .la-triad__hub{transform:rotate(90deg);align-self:center;}
}

/* ---------- animated detection bar (same as gdata) ---------- */
.la-pbar{display:flex;align-items:center;gap:10px;min-width:190px;cursor:default;}
.la-pbar__track{flex:1;height:9px;border-radius:999px;background:var(--la-line-2);overflow:hidden;
  box-shadow:inset 0 1px 2px rgba(11,20,55,.08);}
.la-pbar__fill{height:100%;width:0;border-radius:999px;position:relative;overflow:hidden;
  background:linear-gradient(90deg,color-mix(in srgb,var(--c) 55%,#fff),var(--c));
  transition:width 1.1s cubic-bezier(.22,1,.36,1);box-shadow:0 0 8px color-mix(in srgb,var(--c) 50%,transparent);}
.la-pbar__fill.go{width:var(--w);}
.la-pbar__fill::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,transparent 18%,rgba(255,255,255,.55) 50%,transparent 82%);
  background-size:220% 100%;animation:laFlow 1.8s linear infinite;}
@keyframes laFlow{0%{background-position:200% 0;}100%{background-position:-120% 0;}}
.la-pbar__num{font:800 12.5px var(--la-mono);color:var(--la-ink);min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}

/* shared-miRNA modal */
.la-mirmodal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;}
.la-mirmodal.show{display:flex;}
.la-mirmodal__bg{position:absolute;inset:0;background:rgba(11,20,55,.55);backdrop-filter:blur(3px);animation:laFade .2s ease;}
.la-mirmodal__box{position:relative;z-index:2;width:min(720px,100%);max-height:82vh;display:flex;flex-direction:column;
  background:#fff;border-radius:18px;box-shadow:var(--la-shadow-pop);overflow:hidden;animation:laPop .22s cubic-bezier(.22,1,.36,1);}
@keyframes laPop{from{opacity:0;transform:translateY(14px) scale(.98);}to{opacity:1;transform:none;}}
.la-mirmodal__h{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
  padding:20px 24px;border-bottom:1px solid var(--la-line);
  background:linear-gradient(120deg,#eef1fb,#eafcff 55%,#f3eefe);}
.la-mirmodal__h h3{margin:0;font:800 18px var(--la-mono);color:var(--la-ink);}
.la-mirmodal__h p{margin:4px 0 0;font:600 12.5px var(--la-font);color:var(--la-muted);}
.la-mirmodal__x{border:0;background:rgba(255,255,255,.6);width:34px;height:34px;border-radius:9px;cursor:pointer;
  color:var(--la-ink);font-size:16px;transition:.15s;}
.la-mirmodal__x:hover{background:#fff;color:var(--la-primary);}
.la-mirmodal__body{padding:20px 24px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:7px;align-content:flex-start;}
.la-mirchip{font:600 11.5px var(--la-mono);color:var(--la-primary-d);background:var(--la-bg-tint);
  border:1px solid var(--la-line);border-radius:999px;padding:4px 11px;white-space:nowrap;}
.la-mirmodal__foot{padding:16px 24px;border-top:1px solid var(--la-line);display:flex;justify-content:flex-end;background:var(--la-bg-soft);}
