/* LỆNH 46 · card v2 — .nq-card, the deck's one card (a premium plate, one material for every card of the deck: scene 06's clusters, scene 10's price
   cards, the panels and the chips; it replaces LỆNH 13's HUD plate with corner ticks).
   Material: a #141C30 → #0C1222 ground at .96, NO backdrop-filter; a 1 px gradient edge (white .16 at the top to .04 at the foot) drawn by ::before; a 1 px
   light line inside the top edge; radius 16; a soft shadow 0 24px 48px -16px rgba(0,0,0,.65). State is told by the edge's tint and the 6 px dot before the label,
   never a bar on the left. Type: label 15 px uppercase .08em #8FA3C4 · title (.nq-ttl) 36–40 px 700 tracking -.02em · body (.nq-txt 28, .nq-sub 22) #E6ECF5 ·
   numbers tabular. Spacing on an 8 grid; padding 28 / 32 (a small card, .is-sm, 12 / 18). A divider (.nq-hr) is a gradient fading at both ends.
   A tick row (.nq-row with .nq-bd.ok / .nq-bd.tr): a round 22 px badge (✓ on translucent blue, ↔ on translucent grey), the text baseline-aligned.
     <div class="nq-card is-data"><p class="nq-lab">Nhãn</p><p class="nq-txt">Nội dung</p></div>
   Variants: .is-data (blue) · .is-issue (warm glass, amber edge) · .is-quiet (no tint: a side note) · .is-sm (a small card pinned to an object) ·
   .sp (the speaking card: a light-blue top edge; the others stay readable, never under .85). .nq-paper: paper cards keep their paper. */
:root{--nqc-bg:linear-gradient(180deg,rgba(20,28,48,.96),rgba(12,18,34,.96));--nqc-sh:inset 0 1px 0 rgba(255,255,255,.08),0 24px 48px -16px rgba(0,0,0,.65);
  --nqc-edge:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04));--nqc-lab:#8FA3C4;--nqc-body:#E6ECF5;--nqc-sp:#9CC2FF;--nqc-bdb:rgba(88,140,255,.24);--nqc-bdg:rgba(143,163,196,.22)}
.nq-card{--nq-c:#7FA6FF;position:relative;box-sizing:border-box;margin:0;padding:28px 32px;border-radius:16px;color:#fff;text-align:left;font-variant-numeric:tabular-nums;
  background:var(--nqc-bg);box-shadow:var(--nqc-sh)}
.nq-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;background:var(--nqc-edge);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.nq-card .nq-lab{display:flex;align-items:center;gap:9px;margin:0 0 8px;font-size:15px;font-weight:600;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--nqc-lab)}
.nq-card .nq-lab::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--nq-c)}
.nq-card .nq-ttl{margin:0;font-size:38px;font-weight:700;line-height:1.15;letter-spacing:-.02em;text-transform:none;color:#fff}
.nq-card .nq-txt{margin:0;font-size:28px;font-weight:700;line-height:1.25;letter-spacing:-.02em;text-transform:none;color:#fff}
.nq-card .nq-sub{margin:8px 0 0;font-size:22px;font-weight:500;line-height:1.3;color:var(--nqc-body)}
.nq-hr{height:1px;margin:16px 0;border:0;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.22) 20%,rgba(255,255,255,.22) 80%,rgba(255,255,255,0))}
.nq-row{display:flex;align-items:baseline;gap:12px}
.nq-bd{flex:none;display:inline-block;width:22px;height:22px;border-radius:50%;font-size:13px;font-weight:700;font-style:normal;line-height:22px;text-align:center;color:#B4CBFF;background:var(--nqc-bdb)}
.nq-bd.tr{color:#C5D0E2;background:var(--nqc-bdg)}
.nq-card.is-data{--nq-c:#7FA6FF}
.nq-card.is-issue{--nq-c:#F0A63A;--nqc-bg:linear-gradient(180deg,rgba(34,24,12,.96),rgba(22,15,8,.96));--nqc-edge:linear-gradient(180deg,rgba(240,166,58,.5),rgba(240,166,58,.12))}
.nq-card.is-quiet{--nq-c:#A9B6CC;--nqc-bg:linear-gradient(180deg,rgba(20,28,48,.9),rgba(12,18,34,.9))}
.nq-card.is-sm{padding:12px 18px 14px;border-radius:16px}   /* the compact v2 card: radius 16, title 28 px (diagram cards that cannot hold 36), the same material */
.nq-card.is-sm .nq-lab{font-size:15px;margin-bottom:4px}
.nq-card.is-sm .nq-txt{font-size:28px}
/* a system's production mark (OMEN, VANTIS, NEXQUOTE: true colours, dark) on a small dark-glass tile, like a mini roof sign: #0C1222, a 1 px light edge, a faint backlight behind the mark */
.nq-mk{position:relative;flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:#0C1222;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 6px 14px -6px rgba(0,0,0,.65)}
.nq-mk::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(closest-side,rgba(150,185,255,.36),rgba(150,185,255,.12) 62%,rgba(150,185,255,0))}
.nq-mk img{position:relative;display:block;width:40px;height:40px}
/* the speaking card: a light-blue top edge (the card's top line, fading at both ends) */
.nq-card.sp::after{content:"";position:absolute;left:16px;right:16px;top:-1px;height:2px;border-radius:2px;pointer-events:none;background:linear-gradient(90deg,rgba(156,194,255,0),var(--nqc-sp) 20%,var(--nqc-sp) 80%,rgba(156,194,255,0))}
/* paper cards: the paper kept, a soft paper shadow, no bar */
.nq-paper{position:relative;box-sizing:border-box;border-radius:4px;background:#F4F1EA;color:#1B2333;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 2px 4px rgba(0,0,0,.16),0 16px 30px -14px rgba(0,0,0,.55)}
