/* Interview bank, "Khối màu" — the 'new' arm of the bank experiment.
 * Loaded instead of page-interview-bank.css. Prefixed .ib2- so it cannot
 * collide with the old page's .ib- classes.
 * House rules: radius 0, no shadow, no gradient, no translucency.
 */

body,.ib2-hero,.ib2-sec,.ib2-cats,.ib2-strip{
  --b2-ink:#0a0a0a; --b2-paper:#fff; --b2-dim:#6b7280; --b2-lab:#9aa1ab; --b2-hair:#e6e6e6;
  --b2-blue:#1a3aff; --b2-orange:#e8501e; --b2-green:#0f7a4a;
  --b2-font:'Be Vietnam Pro',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --b2-pad:clamp(20px,5vw,72px);
}
.ib2-hero,.ib2-sec,.ib2-cats,.ib2-strip{font-family:var(--b2-font)}
.ib2-hero *,.ib2-sec *,.ib2-cats *,.ib2-strip *{box-sizing:border-box}
.ib2-in{max-width:1240px;margin:0 auto;padding-left:var(--b2-pad);padding-right:var(--b2-pad)}

/* ── hero ── */
.ib2-hero{background:var(--b2-ink);color:#fff;padding:clamp(38px,5.5vw,72px) 0}
.ib2-k{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;
  color:rgba(255,255,255,.6)}
.ib2-h1{font-size:clamp(30px,5.4vw,64px);line-height:1.02;letter-spacing:-.05em;font-weight:800;
  margin:14px 0 0;color:#fff;max-width:16ch}
.ib2-lead{font-size:clamp(14.5px,1.6vw,18px);line-height:1.5;margin:16px 0 0;max-width:54ch;
  color:rgba(255,255,255,.78)}
.ib2-search{display:flex;margin-top:24px;max-width:520px;position:relative}
.ib2-search input{flex:1;min-width:0;border:2px solid #fff;border-right:0;background:transparent;
  color:#fff;font-family:inherit;font-size:16px;font-weight:500;padding:13px 15px;height:50px;
  border-radius:0;-webkit-appearance:none;appearance:none}
.ib2-search input::placeholder{color:rgba(255,255,255,.55)}
.ib2-search input:focus{outline:3px solid #fff;outline-offset:2px}
.ib2-search button{border:2px solid #fff;background:#fff;color:var(--b2-ink);font-family:inherit;
  font-size:15px;font-weight:800;padding:0 24px;height:50px;cursor:pointer;border-radius:0}
.ib2-facts{display:flex;gap:0;flex-wrap:wrap;margin-top:26px;
  border-top:1px solid rgba(255,255,255,.28)}
.ib2-facts > div{padding:14px 24px 14px 0;margin-right:24px;
  border-right:1px solid rgba(255,255,255,.2)}
.ib2-facts > div:last-child{border-right:0;margin-right:0}
.ib2-facts b{display:block;font-size:clamp(20px,2.6vw,30px);font-weight:800;letter-spacing:-.04em;
  line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.ib2-facts span{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;color:rgba(255,255,255,.6);margin-top:6px}

/* ── category row ── */
.ib2-cats{border-bottom:2px solid var(--b2-ink);background:var(--b2-paper);position:sticky;top:0;
  z-index:30}
.ib2-cats-in{display:flex;overflow-x:auto;scrollbar-width:none}
.ib2-cats-in::-webkit-scrollbar{display:none}
.ib2-cat{flex:0 0 auto;font-size:12px;letter-spacing:.05em;font-weight:700;padding:14px 16px;
  text-decoration:none;color:var(--b2-ink);white-space:nowrap;
  border-bottom:3px solid transparent;margin-bottom:-2px}
.ib2-cat:hover{background:#f4f4f4}
.ib2-cat.is-on{border-bottom-color:var(--b2-ink)}

/* ── layout ── */
.ib2-sec{padding:clamp(28px,4vw,48px) 0 clamp(44px,6vw,80px);background:var(--b2-paper)}
.ib2-cols{display:grid;grid-template-columns:1fr;gap:clamp(30px,4vw,52px)}
@media (min-width:1080px){ .ib2-cols{grid-template-columns:minmax(0,1fr) 300px} }
.ib2-main{min-width:0}

.ib2-roles{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:18px}
.ib2-roles-l{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--b2-lab);margin-right:6px}
.ib2-chip{font-size:12.5px;font-weight:700;text-decoration:none;color:var(--b2-ink);
  border:1px solid var(--b2-hair);padding:7px 12px;white-space:nowrap}
.ib2-chip b{font-weight:700;color:var(--b2-lab);margin-left:4px;font-variant-numeric:tabular-nums}
.ib2-chip:hover{border-color:var(--b2-ink)}
.ib2-chip.is-on{background:var(--b2-ink);color:#fff;border-color:var(--b2-ink)}
.ib2-chip.is-on b{color:rgba(255,255,255,.6)}

.ib2-count{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--b2-lab);margin-bottom:16px}

/* ── question list ── */
.ib2-list{border-top:2px solid var(--b2-ink)}
.ib2-q{display:grid;grid-template-columns:1fr;gap:9px;padding:18px 0;
  border-bottom:1px solid var(--b2-hair);text-decoration:none;color:var(--b2-ink)}
@media (min-width:860px){ .ib2-q{grid-template-columns:220px 1fr;gap:28px;align-items:baseline} }
.ib2-q:hover{background:#fafafa}
.ib2-q-tags{display:flex;gap:6px;flex-wrap:wrap;align-content:flex-start}
.ib2-tag{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  border:1px solid var(--b2-hair);padding:4px 8px;white-space:nowrap;color:var(--b2-dim)}
.ib2-tag-fill{background:var(--b2-ink);color:#fff;border-color:var(--b2-ink)}
.ib2-q-body{display:block;min-width:0}
.ib2-q-text{display:block;font-size:clamp(15.5px,1.8vw,19px);line-height:1.35;font-weight:700;
  letter-spacing:-.022em;color:var(--b2-ink)}
.ib2-q:hover .ib2-q-text{text-decoration:underline;text-underline-offset:4px}
.ib2-q-meta{display:block;font-size:11.5px;font-weight:600;color:var(--b2-lab);margin-top:7px}

.ib2-empty{border:2px solid var(--b2-ink);padding:clamp(26px,4vw,44px)}
.ib2-empty-h{font-size:clamp(19px,2.4vw,26px);font-weight:800;letter-spacing:-.035em;margin:0;
  color:var(--b2-ink)}
.ib2-empty-p{font-size:14px;color:var(--b2-dim);margin:9px 0 20px}

.ib2-pages{display:flex;flex-wrap:wrap;margin-top:30px;border:2px solid var(--b2-ink);
  width:fit-content}
.ib2-page{font-size:13px;font-weight:700;padding:11px 16px;text-decoration:none;color:var(--b2-ink);
  border-right:2px solid var(--b2-ink);white-space:nowrap}
.ib2-page:last-child{border-right:0}
.ib2-page:hover{background:#f2f2f2}
.ib2-page.is-on{background:var(--b2-ink);color:#fff}

/* ── sidebar ── */
.ib2-side{min-width:0;display:grid;gap:20px;align-content:start}
@media (min-width:1080px){ .ib2-side{position:sticky;top:64px} }
.ib2-panel{border:2px solid var(--b2-ink);padding:16px}
.ib2-panel-h{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;
  color:var(--b2-lab);margin-bottom:11px}
.ib2-panel-p{font-size:13px;line-height:1.55;color:var(--b2-dim);margin:0 0 13px}
.ib2-panel-p b{color:var(--b2-ink);font-weight:800}
.ib2-mini{display:block;font-size:13px;font-weight:600;line-height:1.4;padding:9px 0;
  border-top:1px solid var(--b2-hair);text-decoration:none;color:var(--b2-ink)}
.ib2-mini:first-of-type{border-top:0;padding-top:0}
.ib2-mini span{display:block;font-size:11px;font-weight:600;color:var(--b2-lab);margin-top:2px}
.ib2-mini:hover{text-decoration:underline;text-underline-offset:3px}
.ib2-panel-cta{background:var(--b2-ink);border-color:var(--b2-ink)}
.ib2-panel-cta .ib2-panel-h{color:rgba(255,255,255,.5)}
.ib2-panel-cta .ib2-panel-p{color:rgba(255,255,255,.78)}
.ib2-panel-cta .ib2-btn{background:#fff;color:var(--b2-ink);border-color:#fff}

/* ── buttons + strip ── */
.ib2-btn{display:inline-block;padding:12px 20px;font-weight:800;font-size:13.5px;
  text-decoration:none;border:2px solid var(--b2-ink);background:var(--b2-ink);color:#fff;
  border-radius:0;font-family:inherit;cursor:pointer;line-height:1.2}
.ib2-btn:hover{background:#252525;border-color:#252525}
.ib2-strip{background:var(--b2-orange);color:#fff;padding:clamp(28px,4vw,50px) 0}
.ib2-strip-in{display:flex;gap:22px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.ib2-strip-t{font-size:clamp(19px,2.6vw,32px);font-weight:800;letter-spacing:-.032em;
  line-height:1.15;margin:0;color:#fff;max-width:26ch}
.ib2-strip-s{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.86);margin:8px 0 0;
  max-width:54ch}
.ib2-strip .ib2-btn-on{background:#fff;color:var(--b2-ink);border-color:#fff;padding:14px 24px;
  font-size:14.5px}

/* ── defensive: design-system.css owns bare a / a:hover ── */
.ib2-shell a.ib2-q,.ib2-shell a.ib2-q:link,.ib2-shell a.ib2-q:visited,
.ib2-shell a.ib2-q:hover,.ib2-shell a.ib2-q:hover .ib2-q-text{color:var(--b2-ink);
  text-decoration:none}
.ib2-shell a.ib2-q:hover .ib2-q-text{text-decoration:underline}
.ib2-shell a.ib2-q .ib2-q-meta,.ib2-shell a.ib2-q:hover .ib2-q-meta{color:var(--b2-lab)}
.ib2-shell a.ib2-q .ib2-tag-fill,.ib2-shell a.ib2-q:hover .ib2-tag-fill{color:#fff}
.ib2-shell a.ib2-cat,.ib2-shell a.ib2-cat:hover{color:var(--b2-ink);text-decoration:none}
.ib2-shell a.ib2-chip,.ib2-shell a.ib2-chip:hover{color:var(--b2-ink);text-decoration:none}
.ib2-shell a.ib2-chip.is-on,.ib2-shell a.ib2-chip.is-on:hover{color:#fff}
.ib2-shell a.ib2-mini,.ib2-shell a.ib2-mini:hover{color:var(--b2-ink)}
.ib2-shell .ib2-panel-cta a.ib2-mini{color:#fff}
.ib2-shell a.ib2-page,.ib2-shell a.ib2-page:hover{color:var(--b2-ink);text-decoration:none}
.ib2-shell a.ib2-page.is-on{color:#fff}
.ib2-shell a.ib2-btn,.ib2-shell a.ib2-btn:hover{color:#fff;text-decoration:none}
.ib2-shell .ib2-panel-cta a.ib2-btn,.ib2-shell .ib2-strip a.ib2-btn-on,
.ib2-shell .ib2-panel-cta a.ib2-btn:hover,.ib2-shell .ib2-strip a.ib2-btn-on:hover{
  color:var(--b2-ink)}
.ib2-shell .ib2-hero .ib2-h1,.ib2-shell .ib2-strip-t{color:#fff}
.ib2-shell .ib2-lead{color:rgba(255,255,255,.78)}
.ib2-shell .ib2-strip-s{color:rgba(255,255,255,.86)}
.ib2-shell .ib2-count,.ib2-shell .ib2-roles-l,.ib2-shell .ib2-panel-h{color:var(--b2-lab)}
.ib2-shell .ib2-panel-p{color:var(--b2-dim)}
.ib2-shell .ib2-panel-cta .ib2-panel-p{color:rgba(255,255,255,.78)}
