/* BizLinks 议题评估助理。沿用官网 style.css 的颜色变量，单独使用时有默认值。 */
.bla {
  --bla-ink: var(--ink, #101820);
  --bla-muted: var(--muted, #686764);
  --bla-paper: var(--paper, #f3f1ec);
  --bla-red: var(--red, #c9343a);
  --bla-red-text: var(--red-text, #ad2a30);
  --bla-line: var(--line, rgba(23, 23, 23, .18));
  max-width: 880px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--bla-line);
  color: var(--bla-ink);
  font-family: var(--font, 'Helvetica Neue', Arial, sans-serif);
  font-size: 15px;
  line-height: 1.6;
}
.bla * { box-sizing: border-box; }
.bla-head { padding: 1.5rem 1.5rem 1rem; border-bottom: 1px solid var(--bla-line); }
.bla-eyebrow { margin: 0 0 .35rem; color: var(--bla-red-text); font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.bla-title { margin: 0 0 .4rem; font-size: 1.5rem; font-weight: 300; line-height: 1.25; }
.bla-intro { margin: 0; color: var(--bla-muted); }
.bla-chips { display: flex; flex-wrap: wrap; gap: .5rem; padding: 1rem 1.5rem 0; }
.bla-chip { padding: .4rem .8rem; border: 1px solid var(--bla-line); background: var(--bla-paper); color: var(--bla-ink); font-size: .875rem; cursor: pointer; }
.bla-chip:hover { border-color: var(--bla-red); color: var(--bla-red-text); }
.bla-chip[aria-pressed="true"] { background: var(--bla-ink); border-color: var(--bla-ink); color: #fff; font-weight: 700;
  box-shadow: inset 0 -3px 0 var(--bla-red), 0 0 0 2px rgba(183, 34, 46, .18); }
.bla-context, .bla-cues { margin: .35rem 1.5rem 0; font-size: .81rem; color: var(--bla-muted); }
.bla-context .bla-example { display: block; color: var(--bla-red-text); min-height: 1.3em; }
.bla-cues { margin-top: .25rem; color: var(--bla-ink); }
.bla-brief { position: sticky; top: 0; z-index: 2; margin: .65rem 1.5rem 0; padding: .45rem .8rem;
  border-radius: .7rem; background: #f4f5f4; box-shadow: 0 3px 14px rgba(16,24,32,.09); font-size: .82rem; }
.bla-brief[hidden] { display: none; }
.bla-brief summary { cursor: pointer; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bla-brief p { margin: .5rem 0 0; overflow-wrap: anywhere; }
.bla-log { max-height: 560px; overflow-y: auto; padding: 1rem 1.5rem; display: flex; flex-direction: column; gap: .9rem; }
.bla-log:empty { display: none; }
.bla-msg { max-width: 88%; padding: .7rem .95rem; white-space: normal; overflow-wrap: anywhere; }
.bla-msg p { margin: 0 0 .5rem; }
.bla-msg p:last-child, .bla-msg ul:last-child { margin-bottom: 0; }
.bla-msg ul { margin: 0 0 .5rem; padding-left: 1.2rem; }
.bla-user { align-self: flex-end; background: var(--bla-ink); color: #fff; }
.bla-bot { align-self: flex-start; background: var(--bla-paper); }
.bla-status { align-self: flex-start; color: var(--bla-muted); font-size: .85rem; }
.bla-status::after { content: '…'; }
.bla-status.bla-searching::after { content: ''; }
.bla-status .bla-progress-dot { display: inline-block; width: .5rem; height: .5rem; margin-right: .55rem;
  border-radius: 50%; background: var(--bla-red); animation: bla-pulse 1.3s ease-in-out infinite; }
@keyframes bla-pulse { 0%, 100% { opacity: .35; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.15); } }
.bla-error { align-self: flex-start; color: var(--bla-red-text); font-size: .9rem; }
.bla-results { align-self: stretch; }
.bla-results-head { margin: 0 0 .5rem; font-size: .9rem; color: var(--bla-muted); }
.bla-results-head strong { color: var(--bla-ink); }
.bla-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: .6rem; }
.bla-card { padding: .75rem .85rem; border: 1px solid var(--bla-line); border-left: 3px solid var(--bla-red); background: #fff; }
.bla-card h4 { margin: 0 0 .15rem; font-size: .95rem; font-weight: 600; line-height: 1.35; }
.bla-card .bla-en { margin: 0 0 .35rem; color: var(--bla-muted); font-size: .8rem; }
.bla-card dl { display: grid; grid-template-columns: auto 1fr; gap: .1rem .6rem; margin: 0; font-size: .82rem; }
.bla-card dt { color: var(--bla-muted); }
.bla-card dd { margin: 0; }
.bla-summary { margin-bottom: .75rem; padding: .85rem 1rem; border-radius: .9rem; background: var(--bla-paper); }
.bla-summary h4 { margin: 0 0 .2rem; font-size: .9rem; }
.bla-summary p { margin: 0; font-size: .87rem; }
.bla-target-stack { display: flex; flex-direction: column; }
.bla-target-stack .bla-card { border: 0; border-radius: .9rem; background: #f8f8f6;
  box-shadow: 0 2px 10px rgba(16,24,32,.07); padding: 1rem; }
.bla-card-head { display: flex; align-items: center; gap: .75rem; }
.bla-company-mark { display: grid; place-items: center; flex: 0 0 2.4rem; height: 2.4rem; border-radius: .75rem;
  background: #e9e9e4; color: var(--bla-ink); font-weight: 700; }
.bla-card-identity { min-width: 0; }
.bla-card-details { margin-top: .65rem; padding-top: .5rem; border-top: 1px solid var(--bla-line); font-size: .84rem; }
.bla-card-details summary { color: var(--bla-red-text); cursor: pointer; }
.bla-card-details .bla-reason { margin-top: .55rem; }
.bla-note { margin: .5rem 0 0; color: var(--bla-muted); font-size: .78rem; }
.bla-form { align-self: stretch; position: relative; padding: 1rem; border: 1px solid var(--bla-ink); background: #fff; }
.bla-form h4 { margin: 0 0 .25rem; font-size: 1.05rem; font-weight: 600; }
.bla-form > p { margin: 0 0 .8rem; color: var(--bla-muted); font-size: .88rem; }
.bla-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem .8rem; }
.bla-field { display: flex; flex-direction: column; gap: .2rem; font-size: .82rem; color: var(--bla-muted); }
.bla-field.wide { grid-column: 1 / -1; }
.bla-field input, .bla-field textarea { padding: .5rem .6rem; border: 1px solid var(--bla-line); font-size: .92rem; color: var(--bla-ink); background: #fff; }
.bla-field textarea { min-height: 64px; resize: vertical; }
.bla-consent { display: flex; gap: .5rem; align-items: flex-start; margin: .8rem 0; font-size: .82rem; color: var(--bla-muted); }
.bla-consent input { margin-top: .25rem; }
.bla-hp { position: absolute; left: -9999px; }
.bla-btn { padding: .6rem 1.2rem; border: 0; background: var(--bla-red); color: #fff; font-family: var(--font-button, inherit); font-size: .92rem; cursor: pointer; }
.bla-btn:disabled { opacity: .5; cursor: default; }
.bla-done { margin: 0; color: var(--bla-ink); }
.bla-input { display: flex; gap: .6rem; padding: 1rem 1.5rem; border-top: 1px solid var(--bla-line); }
.bla-input textarea { flex: 1; min-height: 48px; max-height: 160px; padding: .6rem .7rem; border: 1px solid var(--bla-line); font-size: .95rem; font-family: inherit; resize: vertical; }
.bla-input { transition: padding .25s ease, background-color .25s ease; }
.bla-input.bla-followup { padding-top: .6rem; padding-bottom: .6rem; background: #fafaf9; }
.bla-input.bla-followup textarea { min-height: 40px; }
.bla-foot { margin: 0; padding: 0 1.5rem 1rem; color: var(--bla-muted); font-size: .75rem; }
@media (max-width: 640px) {
  .bla-head, .bla-log, .bla-input { padding-left: 1rem; padding-right: 1rem; }
  .bla-chips { padding: 1rem 1rem 0; }
  .bla-foot { padding: 0 1rem 1rem; }
  .bla-grid { grid-template-columns: 1fr; }
  .bla-msg { max-width: 100%; }
  .bla-context, .bla-cues { margin-left: 1rem; margin-right: 1rem; }
  .bla-brief { margin-left: 1rem; margin-right: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .bla-status .bla-progress-dot { animation: none; opacity: 1; }
  .bla-input { transition: none; }
}
/* 帐户、岗位概况、初步分析与登录 */
.bla-head { position: relative; }
.bla-account { display: flex; flex-wrap: wrap; gap: .3rem .8rem; justify-content: flex-end; align-items: center; margin-bottom: .4rem; font-size: .82rem; color: var(--bla-muted); }
.bla-link { padding: 0; border: 0; background: none; color: var(--bla-red-text); font: inherit; text-decoration: underline; cursor: pointer; }
.bla-roles { margin: .45rem 0 0; padding-top: .4rem; border-top: 1px dashed var(--bla-line); font-size: .8rem; }
.bla-conn { color: var(--bla-red); }
.bla-field.bla-missing input, .bla-field.bla-missing select { border-color: var(--bla-red); }
.bla-field.bla-missing { color: var(--bla-red); }
.bla-reason { margin: .2rem 0 .25rem; font-size: .84rem; line-height: 1.5; }
.bla-src { font-size: .78rem; color: var(--bla-muted); }
.bla-analysis { margin-top: .5rem; padding-top: .45rem; border-top: 1px solid var(--bla-line); font-size: .82rem; }
.bla-analysis dl { display: block; margin: 0; }
.bla-analysis dt { margin-top: .3rem; color: var(--bla-muted); font-size: .78rem; }
.bla-analysis dd { margin: 0; }
.bla-analysis ul { margin: 0; padding-left: 1.1rem; }
.bla-tag { display: inline-block; margin: 0; padding: 0 .45rem; border: 1px solid var(--bla-line); color: var(--bla-muted); font-size: .75rem; }
.bla-tag.done { border-color: #2d7a46; color: #2d7a46; }
.bla-ctabox { margin-top: .7rem; padding: .8rem 1rem; background: var(--bla-paper); }
.bla-ctabox p { margin: 0 0 .6rem; font-size: .88rem; }
.bla-cta { align-self: flex-start; }
.bla-field select { padding: .5rem .6rem; border: 1px solid var(--bla-line); font-size: .92rem; color: var(--bla-ink); background: #fff; }
.bla-actions { justify-content: flex-end; }
.bla-hint, .bla-sent { margin: .7rem 0 .4rem; color: var(--bla-muted); font-size: .85rem; }
.bla-mine .bla-results-head { display: flex; justify-content: space-between; }

/* 快捷入口的填写提示与转顾问入口 */
.bla > .bla-hint { margin: 0; padding: .5rem 1.5rem 0; color: var(--bla-red-text); }
.bla-alt { display: block; margin: 0; padding: .6rem 1.5rem .4rem; font-size: .8rem; text-align: left; }
.bla-alt[hidden] { display: none; }
.bla-back { margin-left: 1rem; }
@media (max-width: 640px) { .bla > .bla-hint, .bla-alt { padding-left: 1rem; padding-right: 1rem; } }

/* 互联网信息来源 */
.bla-sources { margin: 0; color: var(--bla-muted); font-size: .8rem; overflow-wrap: anywhere; }
.bla-sources a { color: var(--bla-red-text); }

/* 标准问题的选项 */
.bla-ask p { margin: 0 0 .5rem; }
.bla-options { padding: 0; }
.bla-chip-other { opacity: .75; }
.bla-left { align-self: flex-start; margin: -.25rem 0 0; color: var(--bla-muted); font-size: .76rem; }
.bla-draft-btn { margin-top: .6rem; padding: .35rem .8rem; font-size: .85rem; }
.bla-draft .bla-to { margin: 0 0 .8rem; color: var(--bla-ink); font-size: .9rem; }
.bla-tone { margin: .7rem 0; padding: .7rem; border-radius: .7rem; background: var(--bla-paper); }
.bla-tone-title { margin: 0 0 .45rem; font-size: .84rem; font-weight: 600; }
.bla-tone-button { margin: 0 .35rem .35rem 0; padding: .32rem .75rem; border: 1px solid var(--bla-line);
  border-radius: 999px; background: #fff; color: var(--bla-ink); font: inherit; font-size: .82rem; cursor: pointer; }
.bla-tone-button:hover { border-color: var(--bla-red); }
.bla-tone-button[hidden] { display: none; }
.bla-tone-button:disabled { opacity: .5; cursor: wait; }
.bla-mail { margin: .6rem 0; padding: .8rem; border-left: 3px solid var(--bla-line); background: var(--bla-paper); }
.bla-mail .bla-fixed { margin: 0 0 .7rem; color: var(--bla-ink); font-size: .9rem; line-height: 1.6; }
.bla-mail .bla-field { margin-bottom: .7rem; }
.bla-done { margin: .6rem 0 0; color: var(--bla-ink); font-weight: 600; }
.bla-prefix { display: block; margin: .2rem 0; color: var(--bla-muted); font-size: .8rem; }
.bla-thread-in { border-left-color: var(--bla-red); }
.bla-mine .bla-results-head .bla-link { margin-left: .6rem; }
.bla-pick { grid-column: 1 / -1; }
.bla-pick-opts { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .3rem; }
.bla-pick-opt { padding: .3rem .65rem; border: 1px solid var(--bla-line); background: #fff; color: var(--bla-ink); font: inherit; font-size: .85rem; cursor: pointer; }
.bla-pick-opt:hover { border-color: var(--bla-ink); }
.bla-pick-opt[aria-pressed="true"] { background: var(--bla-ink); border-color: var(--bla-ink); color: #fff; }
.bla-field.bla-missing .bla-pick-opts { outline: 1px solid var(--bla-red); outline-offset: 2px; }
