/* ============================================================
   概念详情弹窗（共享）· 电影感玻璃卡片
   触发：任何带 data-concept="概念名" 的元素
   ============================================================ */
.concept-overlay{
  position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;
  padding:24px;background:rgba(3,6,12,.72);backdrop-filter:blur(8px);
  opacity:0;pointer-events:none;transition:opacity .28s;
}
.concept-overlay.show{opacity:1;pointer-events:auto}
.concept-modal{
  position:relative;width:min(680px,100%);max-height:88vh;overflow-y:auto;
  border-radius:20px;padding:0;border:1px solid rgba(130,160,220,.22);
  background:linear-gradient(180deg,#0d1526,#080d18);
  box-shadow:0 40px 90px rgba(0,0,0,.7),0 0 60px color-mix(in srgb,var(--ac,#2de2c4) 18%,transparent);
  transform:translateY(18px) scale(.98);transition:transform .32s cubic-bezier(.2,.7,.3,1);
}
.concept-overlay.show .concept-modal{transform:none}
.concept-head{
  position:relative;padding:30px 30px 22px;overflow:hidden;
  border-bottom:1px solid rgba(130,160,220,.16);
}
.concept-head::before{content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--ac,#2de2c4) 22%,transparent),transparent 62%)}
.concept-head .c-en{font-family:var(--mono,ui-monospace,Menlo,Consolas,monospace);font-size:11px;letter-spacing:2px;color:var(--ac,#2de2c4);margin-bottom:10px}
.concept-head h3{font-size:26px;font-weight:900;letter-spacing:1px;position:relative}
.concept-head .c-def{margin-top:12px;color:var(--ink-dim,#93a1b8);font-size:14px;position:relative}
.concept-close{position:absolute;top:18px;right:18px;width:34px;height:34px;border-radius:9px;
  border:1px solid rgba(130,160,220,.25);background:rgba(13,21,38,.6);color:var(--ink,#eaf0f9);
  font-size:16px;cursor:pointer;display:grid;place-items:center;transition:.25s;z-index:3}
.concept-close:hover{border-color:var(--ac,#2de2c4);color:var(--ac,#2de2c4);box-shadow:0 0 16px color-mix(in srgb,var(--ac,#2de2c4) 45%,transparent)}
.concept-body{padding:22px 30px 30px;display:grid;gap:20px}
.concept-body .row{display:grid;gap:8px}
.concept-body .row h4{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:1px;color:var(--ac,#2de2c4)}
.concept-body .row h4 .ic{font-size:15px}
.concept-body .row p{font-size:14px;color:var(--ink-dim,#93a1b8);line-height:1.85}
.concept-body .origin{padding:16px 18px;border-left:3px solid color-mix(in srgb,var(--ac,#2de2c4) 70%,transparent);background:rgba(13,21,38,.5);border-radius:0 12px 12px 0}
.concept-body .progress{padding:16px 18px;border-left:3px solid color-mix(in srgb,#ffb340 75%,transparent);background:rgba(13,21,38,.5);border-radius:0 12px 12px 0}
.concept-body .film{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono,ui-monospace,Menlo,monospace);font-size:12px;color:var(--ac,#2de2c4);border:1px solid color-mix(in srgb,var(--ac,#2de2c4) 45%,transparent);padding:6px 12px;border-radius:8px;width:fit-content}
[data-concept]{cursor:pointer}
[data-concept]:hover{transform:translateY(-2px)}
