/* ============================================================
   AI 问答 · Claude-Chat 式布局（我们的象牙/酒红/古金色调）
   载入顺序在 site.css 之后，覆盖旧的 .ask-* 布局；消息子样式里
   真正继续沿用 site.css 的只有 .ask-thinking / .ask-schools /
   .ask-cta-row（本文件从未重定义这三个）。.ask-sources 不在其列——
   本文件在下方独立重定义了它，旧注释这条是错的（fix-audit 0709
   F-site4952 顺手修正：site.css 里已冲突/被覆盖的 .ask-sources 基础
   规则已删，避免下一个人改 .ask-bubble/.ask-form/.ask-thread 时
   误以为该去 site.css 找）。
   ============================================================ */

[data-brand="juris-ivy"] .ask-app-main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

/* 本页隐藏全局浮动"预约咨询"（与侧栏 CTA 重复且压住输入框） */
[data-brand="juris-ivy"] .book-fab { display: none !important; }

[data-brand="juris-ivy"] .ask-app {
  display: grid;
  grid-template-columns: 264px minmax(0, 1fr);
  width: min(1360px, 100%);
  margin: 0 auto;
  height: clamp(560px, calc(100dvh - 7.5rem), 900px);
  border: 1px solid var(--line);
  border-top: 2px solid var(--oxblood);
  background: var(--paper);
  box-shadow: 0 26px 60px rgba(27, 23, 20, 0.1);
  overflow: hidden;
}

/* ---------- 左侧栏 ---------- */
[data-brand="juris-ivy"] .ask-side {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  min-height: 0;
  padding: 1.1rem 0.85rem 0.9rem;
  background: linear-gradient(180deg, #f3ecdd 0%, #eee4d0 100%);
  border-right: 1px solid var(--line);
}

[data-brand="juris-ivy"] .ask-side-head {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.1rem 0.35rem 0.6rem;
}

[data-brand="juris-ivy"] .ask-side-seal {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid var(--brass);
  background: radial-gradient(circle at 50% 40%, rgba(168, 136, 78, 0.18), rgba(110, 29, 36, 0.06));
}
[data-brand="juris-ivy"] .ask-side-seal img { height: 0.85rem; width: auto; opacity: 0.92; }

[data-brand="juris-ivy"] .ask-side-title {
  font-family: var(--ji-display);
  font-size: 1.02rem;
  color: var(--oxblood);
  letter-spacing: 0.01em;
}

[data-brand="juris-ivy"] .ask-side-new {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  width: 100%;
  border: 1px solid var(--brass);
  border-radius: 11px;
  background: rgba(168, 136, 78, 0.1);
  color: var(--oxblood);
  padding: 0.62rem 0.8rem;
  font: 600 0.9rem var(--ji-body);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}
[data-brand="juris-ivy"] .ask-side-new:hover { background: rgba(168, 136, 78, 0.18); transform: translateY(-1px); }

[data-brand="juris-ivy"] .ask-side-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  margin-top: 0.4rem;
  padding-right: 0.15rem;
}

[data-brand="juris-ivy"] .ask-side-h {
  margin: 0.9rem 0.35rem 0.35rem;
  color: var(--brass);
  font: 600 0.66rem var(--ji-body);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
[data-brand="juris-ivy"] .ask-side-scroll .ask-side-h:first-child { margin-top: 0.2rem; }

[data-brand="juris-ivy"] .ask-side-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  text-align: left;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--ink);
  padding: 0.5rem 0.55rem;
  font: 500 0.855rem/1.4 var(--ji-body);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.14s ease, color 0.14s ease;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
[data-brand="juris-ivy"] .ask-side-item:hover { background: rgba(110, 29, 36, 0.07); color: var(--oxblood); }
[data-brand="juris-ivy"] .ask-side-item::before {
  content: "";
  flex: 0 0 auto;
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--brass); opacity: 0.55;
}
[data-brand="juris-ivy"] .ask-side-link::before { display: none; }
[data-brand="juris-ivy"] .ask-side-link { color: var(--stone); font-weight: 600; }
[data-brand="juris-ivy"] .ask-side-link::after { content: "→"; margin-left: auto; color: var(--brass); }
[data-brand="juris-ivy"] .ask-side-map::before {
  content: "";
  display: block;
  width: 0.78rem;
  height: 0.78rem;
  border: 1px solid currentColor;
  border-radius: 50%;
  background:
    radial-gradient(circle at 72% 28%, var(--brass) 0 1.5px, transparent 1.7px),
    linear-gradient(90deg, transparent 43%, currentColor 44% 54%, transparent 55%);
  opacity: 0.72;
  animation: ask-map-glint 7.5s ease-in-out infinite;
}
@keyframes ask-map-glint {
  0%, 72%, 100% { transform: rotate(0deg); opacity: 0.62; }
  78% { transform: rotate(10deg); opacity: 1; }
  84% { transform: rotate(-4deg); opacity: 0.76; }
}

/* 最近对话行 */
[data-brand="juris-ivy"] .ask-convo {
  display: flex;
  align-items: center;
  border-radius: 9px;
  transition: background 0.14s ease;
}
[data-brand="juris-ivy"] .ask-convo:hover { background: rgba(110, 29, 36, 0.06); }
[data-brand="juris-ivy"] .ask-convo.is-active { background: rgba(110, 29, 36, 0.1); }
[data-brand="juris-ivy"] .ask-convo-open {
  flex: 1;
  min-width: 0;
  text-align: left;
  border: 0;
  background: transparent;
  color: var(--ink);
  padding: 0.5rem 0.15rem 0.5rem 0.55rem;
  font: 500 0.855rem/1.4 var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .ask-convo-open span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
[data-brand="juris-ivy"] .ask-convo.is-active .ask-convo-open { color: var(--oxblood); font-weight: 600; }
[data-brand="juris-ivy"] .ask-convo-del {
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  color: var(--stone);
  font-size: 1.05rem;
  line-height: 1;
  padding: 0.35rem 0.5rem;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.14s ease, color 0.14s ease;
}
[data-brand="juris-ivy"] .ask-convo:hover .ask-convo-del,
[data-brand="juris-ivy"] .ask-convo.is-active .ask-convo-del { opacity: 1; }
[data-brand="juris-ivy"] .ask-convo-del:hover { color: var(--oxblood); }
[data-brand="juris-ivy"] .ask-fit-convo {
  border: 1px solid rgba(168, 136, 78, 0.34);
  background: rgba(255, 253, 248, 0.52);
}
[data-brand="juris-ivy"] .ask-fit-convo[data-fit-status="generating"] { border-color: rgba(110, 29, 36, 0.48); }
/* fix13b:侧边栏择校报告入口的金色身份——古金左边线 + ✦ 标记(金色只留给择校专属线程) */
[data-brand="juris-ivy"] .ask-fit-convo { border-left: 2px solid var(--brass, #c9ae6b); }
[data-brand="juris-ivy"] .ask-fit-convo .ask-convo-open span::before {
  content: "✦ ";
  color: var(--brass, #c9ae6b);
  font-weight: 400;
}
[data-brand="juris-ivy"] .ask-fit-convo .ask-convo-open span { color: var(--oxblood); font-weight: 650; }
[data-brand="juris-ivy"] .ask-fit-convo .ask-convo-open small { display: block; margin-top: 0.12rem; color: var(--stone); font: 500 0.67rem/1.3 var(--ji-body); }
[data-brand="juris-ivy"] .ask-convo-reset {
  flex: none;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--stone);
  padding: 0.4rem 0.5rem;
  cursor: pointer;
}
[data-brand="juris-ivy"] .ask-convo-reset:hover { color: var(--oxblood); background: rgba(110, 29, 36, 0.07); }

[data-brand="juris-ivy"] .ask-side-foot {
  border-top: 1px solid rgba(168, 136, 78, 0.28);
  padding-top: 0.8rem;
  margin-top: 0.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
[data-brand="juris-ivy"] .ask-side-meter {
  display: flex; align-items: baseline; justify-content: space-between;
  padding: 0 0.35rem;
  color: var(--stone); font-size: 0.8rem;
}
[data-brand="juris-ivy"] .ask-side-meter strong { color: var(--oxblood); font-family: var(--ji-display); font-size: 1.35rem; line-height: 1; }
[data-brand="juris-ivy"] .ask-side-cta {
  display: block; text-align: center; text-decoration: none;
  border-radius: 10px; background: var(--oxblood); color: #fdf6ee;
  padding: 0.6rem 0.8rem; font: 600 0.86rem var(--ji-body);
  transition: background 0.15s ease;
}
[data-brand="juris-ivy"] .ask-side-cta:hover { background: #571119; }

/* ---------- 主列 ---------- */
[data-brand="juris-ivy"] .ask-col {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  background:
    radial-gradient(120% 60% at 50% -10%, rgba(168, 136, 78, 0.05), transparent 60%),
    var(--paper);
}

/* 可切换的法学院场景只使用站内已登记授权的响应式 WebP；文字层始终落在雾面纸上。 */
[data-brand="juris-ivy"] .ask-scene {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  background: #f8f3e8;
}
[data-brand="juris-ivy"] .ask-scene::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(249, 246, 238, 0.74), rgba(246, 240, 229, 0.88)),
    linear-gradient(120deg, rgba(13, 43, 66, 0.24), rgba(244, 232, 207, 0.16));
}
[data-brand="juris-ivy"] .ask-scene-layer {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.34s ease;
}
[data-brand="juris-ivy"] .ask-scene-layer img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(0.66) contrast(0.92) sepia(0.1);
}
[data-brand="juris-ivy"] .ask-col[data-scene="oxford"] [data-scene-layer="oxford"],
[data-brand="juris-ivy"] .ask-col[data-scene="michigan"] [data-scene-layer="michigan"],
[data-brand="juris-ivy"] .ask-col[data-scene="yale"] [data-scene-layer="yale"] { opacity: 1; }
[data-brand="juris-ivy"] .ask-col[data-scene]:not([data-scene="plain"]) {
  background: rgba(248, 244, 235, 0.28);
}
[data-brand="juris-ivy"] .ask-col > :not(.ask-scene) { position: relative; z-index: 1; }

[data-brand="juris-ivy"] .ask-colbar {
  display: flex;
  align-items: baseline;
  gap: 0.7rem;
  padding: 0.9rem clamp(1rem, 5vw, 3rem);
  border-bottom: 1px solid var(--line);
  flex: 0 0 auto;
}
[data-brand="juris-ivy"] .ask-colbar h1 {
  margin: 0; font-family: var(--ji-display); font-weight: 500;
  font-size: 1.1rem; color: var(--ink);
}
[data-brand="juris-ivy"] .ask-colbar-sub { color: var(--stone); font-size: 0.8rem; }

/* 对话流：居中阅读列，助手平铺、用户右侧气泡 */
[data-brand="juris-ivy"] .ask-thread {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  overflow-y: auto;
  padding: 1.6rem clamp(1rem, 6vw, 3.5rem);
  scroll-behavior: smooth;
}
[data-brand="juris-ivy"] .ask-thread.is-chatting { justify-content: flex-start; }
[data-brand="juris-ivy"] .ask-thread.is-chatting .ask-welcome { display: none; }

/* ── fix13a:择校专属线程 · 黄金身份框(克制的出版级质感,1px 古金细框 + 顶部金线 + 微弱光晕;
   仅 .is-fit-thread 出现,普通会话/智能带/报告卡内部版式一概不动) ── */
[data-brand="juris-ivy"] .ask-thread.is-fit-thread {
  border: 1px solid color-mix(in srgb, var(--brass, #c9ae6b) 55%, transparent);
  border-radius: 14px;
  /* 顶部金线走容器背景(不随 overflow 内容滚走),不占布局、不动内部版式 */
  background: linear-gradient(90deg, transparent 4%, var(--brass, #c9ae6b) 50%, transparent 96%) top / 100% 2px no-repeat;
  box-shadow:
    0 0 0 1px rgba(201, 174, 107, 0.10),
    0 12px 34px rgba(201, 174, 107, 0.10);
}

[data-brand="juris-ivy"] .ask-bubble {
  width: min(46rem, 100%);
  margin: 0 auto;
  border: 0;
  background: transparent;
  padding: 0;
  color: var(--ink);
  line-height: 1.78;
}
/* 2026-07-17 Jayson：对话消息进场动效——与欢迎屏/首页同款「上浮渐显」，
   新气泡（提问、回答、报告卡）出现时轻微上浮 10px 渐显，赋予点击后的动态反馈；
   0.42s 单次播放，历史重渲染时也只闪一次，不干扰阅读；reduced-motion 全豁免。 */
[data-brand="juris-ivy"] .ask-thread .ask-bubble { animation: askBubbleRise 0.42s cubic-bezier(0.22, 0.8, 0.28, 1) both; }
@keyframes askBubbleRise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
/* 用户：右侧酒红气泡 */
[data-brand="juris-ivy"] .ask-bubble-user {
  width: fit-content;
  max-width: min(34rem, 82%);
  margin: 0 0 0 auto;
  border-radius: 14px 14px 4px 14px;
  background: var(--oxblood);
  color: #fdf6ee;
  padding: 0.7rem 1rem;
}
/* 助手：平铺全宽、无框 */
[data-brand="juris-ivy"] .ask-bubble-assistant {
  width: min(46rem, 100%);
  margin: 0 auto;
  font-family: var(--ji-display), "Zodiak", "朱雀仿宋", "FangSong", serif;
  line-height: 1.75;
}

[data-brand="juris-ivy"] .ask-answer > * { margin: 0; }
[data-brand="juris-ivy"] .ask-answer > * + * { margin-top: 1rem; }
[data-brand="juris-ivy"] .ask-answer p { text-wrap: pretty; }
[data-brand="juris-ivy"] .ask-answer h3 {
  margin-top: 1.55rem;
  padding-bottom: 0.35rem;
  border-bottom: 1px solid rgba(168, 136, 78, 0.58);
  color: var(--oxblood);
  font-family: var(--ji-display), "Zodiak", "朱雀仿宋", "FangSong", serif;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.45;
}
[data-brand="juris-ivy"] .ask-answer strong { color: #4f171c; font-weight: 700; }
/* 2026-07-12 ask-qa-fix-0712（bug1）：斜体/行内代码/代码块/删除线补齐样式，配合 ask.js 新增的 md 渲染 */
[data-brand="juris-ivy"] .ask-answer em { font-style: italic; }
[data-brand="juris-ivy"] .ask-answer del { color: rgba(58, 46, 38, 0.55); }
[data-brand="juris-ivy"] .ask-answer code {
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
  font-size: 0.9em;
  padding: 0.08em 0.36em;
  border-radius: 4px;
  background: rgba(168, 136, 78, 0.14);
  color: var(--oxblood);
}
[data-brand="juris-ivy"] .ask-answer pre {
  overflow-x: auto;
  padding: 0.85rem 1rem;
  border-radius: 8px;
  background: rgba(58, 46, 38, 0.06);
  border: 1px solid rgba(168, 136, 78, 0.28);
}
[data-brand="juris-ivy"] .ask-answer pre code { background: none; padding: 0; color: inherit; }
[data-brand="juris-ivy"] .ask-answer ul,
[data-brand="juris-ivy"] .ask-answer ol {
  padding-left: 1.45rem;
}
[data-brand="juris-ivy"] .ask-answer li { padding-left: 0.2rem; }
[data-brand="juris-ivy"] .ask-answer li + li { margin-top: 0.38rem; }
[data-brand="juris-ivy"] .ask-answer li::marker { color: var(--brass); font-weight: 700; }
[data-brand="juris-ivy"] .ask-answer hr {
  border: 0;
  border-top: 1px solid rgba(168, 136, 78, 0.38);
}
[data-brand="juris-ivy"] .ask-answer-link {
  color: var(--oxblood);
  text-decoration-color: rgba(110, 29, 36, 0.48);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}
[data-brand="juris-ivy"] .ask-answer-link:hover { text-decoration-color: var(--oxblood); }
[data-brand="juris-ivy"] .ask-answer-table-wrap {
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(168, 136, 78, 0.32);
  border-radius: 8px;
}
[data-brand="juris-ivy"] .ask-answer table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(255, 253, 248, 0.62);
  font-size: 0.9rem;
  line-height: 1.55;
}
[data-brand="juris-ivy"] .ask-answer th,
[data-brand="juris-ivy"] .ask-answer td {
  min-width: 8.5rem;
  padding: 0.58rem 0.68rem;
  border-bottom: 1px solid rgba(168, 136, 78, 0.24);
  text-align: left;
  vertical-align: top;
}
[data-brand="juris-ivy"] .ask-answer th { color: var(--oxblood); background: rgba(168, 136, 78, 0.1); font-weight: 700; }
[data-brand="juris-ivy"] .ask-answer tbody tr:last-child td { border-bottom: 0; }
[data-brand="juris-ivy"] .ask-resume-notice {
  margin: 0 0 0.7rem;
  color: var(--stone);
  font: 500 0.76rem/1.5 var(--ji-body);
}
[data-brand="juris-ivy"] .ask-resume-notice::before { content: "↻ "; color: var(--brass); }
[data-brand="juris-ivy"] .ask-answer-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.7rem;
  margin-top: 1.05rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(168, 136, 78, 0.28);
  color: var(--brass);
  font: 500 0.75rem/1.5 var(--ji-body);
}
/* 0717 Jayson:预约 1v1 要显眼、一看就能点——从裸文字链升级为品牌色胶囊按钮 */
[data-brand="juris-ivy"] .ask-answer-footer a {
  display: inline-flex;
  align-items: center;
  padding: 0.42rem 0.95rem;
  border-radius: 999px;
  background: var(--oxblood, #5c1f1f);
  color: #f7f1e5;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 0.02em;
  box-shadow: 0 1px 4px rgba(92, 31, 31, 0.25);
  transition: background 0.15s ease, transform 0.15s ease;
}
[data-brand="juris-ivy"] .ask-answer-footer a:hover {
  background: #7a2a2a;
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
}
[data-brand="juris-ivy"] .ask-footer-action {
  border: 0;
  background: transparent;
  color: #8a6a32;
  padding: 0;
  font: inherit;
  cursor: pointer;
}
[data-brand="juris-ivy"] .ask-footer-action:hover { color: var(--oxblood); text-decoration: underline; text-underline-offset: 0.18em; }
[data-brand="juris-ivy"] .ask-school-meta > span {
  margin-top: 0.08rem;
  color: var(--stone);
  font-size: 0.76rem;
  line-height: 1.25;
}

/* 外部参考作为答案后的第三层信息，默认折叠；域名单独弱化以便快速判断出处。 */
[data-brand="juris-ivy"] .ask-sources-wrap {
  margin-top: 0.9rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(168, 136, 78, 0.28);
  font-family: var(--ji-body);
}
[data-brand="juris-ivy"] .ask-sources-wrap summary {
  width: fit-content;
  color: var(--stone);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}
[data-brand="juris-ivy"] .ask-sources {
  display: grid;
  gap: 0.5rem;
  margin: 0.55rem 0 0;
  padding: 0.65rem 0 0 1.45rem;
  border-top: 1px dashed rgba(168, 136, 78, 0.3);
}
[data-brand="juris-ivy"] .ask-sources li {
  padding-left: 0.15rem;
  color: var(--brass);
}
[data-brand="juris-ivy"] .ask-sources a {
  display: grid;
  gap: 0.08rem;
  width: fit-content;
  max-width: 100%;
  text-decoration: none;
}
[data-brand="juris-ivy"] .ask-sources a > span {
  color: var(--oxblood);
  font: 600 0.84rem/1.4 var(--ji-body);
  text-decoration: underline;
  text-decoration-color: rgba(110, 29, 36, 0.28);
  text-underline-offset: 0.18em;
}
[data-brand="juris-ivy"] .ask-sources a:hover > span { text-decoration-color: var(--oxblood); }
[data-brand="juris-ivy"] .ask-sources small {
  color: var(--stone);
  font: 500 0.68rem/1.35 var(--ji-body);
  overflow-wrap: anywhere;
}
[data-brand="juris-ivy"] .ask-sources-more {
  margin: 0.7rem 0 0 1.45rem;
  padding: 0.48rem 0.78rem;
  border: 1px solid rgba(110, 29, 36, 0.24);
  border-radius: 999px;
  background: rgba(255, 252, 246, 0.7);
  color: var(--oxblood);
  font: 600 0.75rem/1.2 var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .ask-sources-more:hover { background: rgba(168, 136, 78, 0.12); }
[data-brand="juris-ivy"] .ask-sources-more:focus-visible {
  outline: 2px solid var(--oxblood);
  outline-offset: 3px;
}

/* ---------- 空态欢迎区（居中） ---------- */
[data-brand="juris-ivy"] .ask-welcome {
  width: min(34rem, 100%);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.8rem;
}
/* 2026-07-17 Jayson:AI 问答欢迎屏与首页同款「文字渐次浮现」动效——
   印章→主标→副标→建议 chips 依次上浮,只在首次进场播一次,不打扰后续操作。 */
[data-brand="juris-ivy"] .ask-welcome > * { animation: askWelcomeRise 0.72s cubic-bezier(0.22, 0.8, 0.28, 1) both; }
[data-brand="juris-ivy"] .ask-welcome > :nth-child(2) { animation-delay: 0.12s; }
[data-brand="juris-ivy"] .ask-welcome > :nth-child(3) { animation-delay: 0.26s; }
[data-brand="juris-ivy"] .ask-welcome > :nth-child(4) { animation-delay: 0.4s; }
@keyframes askWelcomeRise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
[data-brand="juris-ivy"] .ask-welcome-seal {
  display: grid; place-items: center;
  width: 3.6rem; height: 3.6rem; border-radius: 50%;
  border: 1px solid var(--brass);
  background: radial-gradient(circle at 50% 38%, rgba(168, 136, 78, 0.16), rgba(110, 29, 36, 0.05));
  box-shadow: 0 0 0 6px rgba(168, 136, 78, 0.07);
}
[data-brand="juris-ivy"] .ask-welcome-seal img { height: 1.55rem; width: auto; opacity: 0.92; }
[data-brand="juris-ivy"] .ask-welcome-seal object {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
[data-brand="juris-ivy"] .ask-welcome-lead {
  margin: 0.2rem 0 0; color: var(--oxblood); font-family: var(--ji-display);
  font-weight: 500; font-size: clamp(1.35rem, 2.4vw, 1.8rem); line-height: 1.22;
}
[data-brand="juris-ivy"] .ask-welcome-sub {
  margin: 0; max-width: 27rem; color: var(--stone); font-size: 0.95rem; line-height: 1.72;
}
[data-brand="juris-ivy"] .ask-welcome-chips {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem; margin-top: 0.7rem;
}
[data-brand="juris-ivy"] .ask-chip {
  border: 1px solid var(--line); border-radius: 999px;
  background: rgba(168, 136, 78, 0.06); color: var(--ink);
  padding: 0.45rem 0.9rem; font: 500 0.85rem var(--ji-body); cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
[data-brand="juris-ivy"] .ask-chip:hover { border-color: var(--oxblood); color: var(--oxblood); background: rgba(110, 29, 36, 0.05); }
[data-brand="juris-ivy"] .ask-chip-fit {
  flex-basis: 100%;
  border-color: var(--oxblood);
  border-radius: 10px;
  background: var(--oxblood);
  color: #fffaf1;
  padding: 0.72rem 1.2rem;
  box-shadow: 0 8px 20px rgba(110, 29, 36, 0.15);
}
[data-brand="juris-ivy"] .ask-chip-fit:hover { background: #571119; color: #fffaf1; transform: translateY(-1px); }
[data-brand="juris-ivy"] .ask-pet-dock{
  position:fixed;
  z-index:170;
  right:max(1rem,calc((100vw - min(1360px,100vw)) / 2 + 1rem));
  bottom:calc(7.2rem + env(safe-area-inset-bottom,0px));
  display:grid;
  justify-items:end;
  gap:.26rem;
}
[data-brand="juris-ivy"] .ask-pet-assistant{
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
  gap:.55rem;
  border:0;
  background:transparent;
  padding:0;
  color:var(--oxblood);
  cursor:pointer;
  filter:drop-shadow(0 10px 20px rgba(43,29,20,.16));
}
[data-brand="juris-ivy"] .ask-pet-portrait{
  --pet-eye-left:49%;
  --pet-eye-top:35%;
  --pet-eye-width:29%;
  width:4.5rem;
  height:4.5rem;
  isolation:isolate;
  background-color:#f7efdf;
  transform-origin:50% 82%;
  animation:ask-pet-idle-wander 7.6s cubic-bezier(.45,.05,.38,.96) infinite;
  transition:border-color .2s ease,box-shadow .2s ease;
  will-change:transform;
}
[data-brand="juris-ivy"] [data-pet="brother"] .ask-pet-portrait{--pet-eye-left:57%;--pet-eye-top:35%;--pet-eye-width:27%}
[data-brand="juris-ivy"] [data-pet="sister"] .ask-pet-portrait{--pet-eye-left:39%;--pet-eye-top:35%;--pet-eye-width:31%}
[data-brand="juris-ivy"] [data-pet="younger"] .ask-pet-portrait{--pet-eye-left:49%;--pet-eye-top:34%;--pet-eye-width:29%}
[data-brand="juris-ivy"] .ask-pet-portrait object{
  position:relative;
  z-index:1;
  transform-origin:56% 62%;
  animation:ask-pet-idle-wiggle 7.6s ease-in-out infinite;
}
[data-brand="juris-ivy"] .ask-pet-portrait::after{
  content:"";
  position:absolute;
  z-index:2;
  left:var(--pet-eye-left);
  top:var(--pet-eye-top);
  width:var(--pet-eye-width);
  height:14%;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(ellipse at 25% 62%,transparent 0 43%,rgba(43,29,20,.92) 48% 56%,transparent 61%),
    radial-gradient(ellipse at 75% 62%,transparent 0 43%,rgba(43,29,20,.92) 48% 56%,transparent 61%);
  animation:ask-pet-eye-blink 9.8s linear infinite;
}
[data-brand="juris-ivy"] .ask-pet-tooltip{
  max-width:14rem;
  opacity:1;
  white-space:normal;
  border:1px solid rgba(168,136,78,.55);
  border-radius:999px;
  background:rgba(255,253,248,.96);
  padding:.5rem .78rem;
  color:var(--oxblood);
  font:600 .76rem/1.25 var(--ji-body);
  text-align:left;
  box-shadow:0 10px 30px rgba(43,29,20,.1);
  transform:translateY(0);
  transition:border-color .2s ease,background .2s ease,transform .2s ease,opacity .2s ease;
}
[data-brand="juris-ivy"] .ask-pet-assistant:hover .ask-pet-tooltip,
[data-brand="juris-ivy"] .ask-pet-assistant:focus-visible .ask-pet-tooltip{border-color:var(--oxblood);background:#fffdf8;transform:translateY(-1px)}
[data-brand="juris-ivy"] .ask-pet-assistant:hover .ask-pet-portrait,
[data-brand="juris-ivy"] .ask-pet-assistant:focus-visible .ask-pet-portrait{border-color:var(--oxblood);box-shadow:0 12px 32px rgba(110,29,36,.18),inset 0 0 0 5px rgba(255,253,248,.58)}
[data-brand="juris-ivy"] .ask-pet-assistant:focus-visible{outline:2px solid var(--brass);outline-offset:4px;border-radius:999px}
[data-brand="juris-ivy"] body.is-fit-flow-active .ask-pet-dock{display:none}
[data-brand="juris-ivy"] body.is-fit-report-visible .ask-pet-dock{display:none}
[data-brand="juris-ivy"] :is(.ask-pet-switch,.ask-scene-switch){border:0;background:rgba(255,253,248,.88);color:var(--stone);padding:.24rem .5rem;border-radius:999px;font:600 .65rem/1 var(--ji-body);cursor:pointer;box-shadow:0 5px 14px rgba(43,29,20,.08)}
[data-brand="juris-ivy"] :is(.ask-pet-switch,.ask-scene-switch):is(:hover,:focus-visible){color:var(--oxblood);outline:1px solid rgba(168,136,78,.55)}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu){position:absolute;right:0;bottom:calc(100% + .55rem);width:13rem;padding:.42rem;border:1px solid rgba(168,136,78,.5);border-radius:14px;background:rgba(255,253,248,.98);box-shadow:0 18px 46px rgba(43,29,20,.16)}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu)[hidden]{display:none}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu) button{display:grid;grid-template-columns:4.25rem minmax(0,1fr);width:100%;border:0;border-radius:9px;background:transparent;padding:.55rem .62rem;text-align:left;cursor:pointer}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu) button:hover,
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu) button[aria-selected="true"]{background:rgba(168,136,78,.1)}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu) strong{color:var(--oxblood);font:600 .78rem/1.4 var(--ji-display)}
[data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu) span{color:var(--stone);font:500 .7rem/1.4 var(--ji-body)}
[data-brand="juris-ivy"] [data-pet="brother"] .ai-companion-fallback{border-radius:48% 52% 46% 54%;background:#651a22}
[data-brand="juris-ivy"] [data-pet="sister"] .ai-companion-fallback{border-radius:52% 48% 54% 46%;background:#7a2730}
[data-brand="juris-ivy"] [data-pet="younger"] .ai-companion-fallback{border-radius:55% 45% 50% 50%;background:#842d35}
[data-brand="juris-ivy"] :is([data-pet="brother"],[data-pet="sister"],[data-pet="younger"]) .ai-companion-fallback::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:13px;transform:translate(-50%,-50%);border:1px solid rgba(244,238,223,.86)}
[data-brand="juris-ivy"] [data-pet="brother"] .ai-companion-fallback::after{border-radius:2px;background:linear-gradient(90deg,transparent 46%,rgba(244,238,223,.75) 47% 53%,transparent 54%)}
[data-brand="juris-ivy"] [data-pet="sister"] .ai-companion-fallback::after{width:4px;height:15px;border-radius:999px;transform:translate(-50%,-50%) rotate(28deg)}
[data-brand="juris-ivy"] [data-pet="younger"] .ai-companion-fallback::after{border-radius:50%;box-shadow:inset 0 0 0 3px rgba(168,136,78,.52)}
[data-brand="juris-ivy"] .ask-pet-dock.is-popping .ask-pet-portrait{animation:ask-pet-pop .15s ease-out 1}
[data-brand="juris-ivy"] .ask-pet-dock.is-switching .ask-pet-portrait{animation:ask-pet-peek .46s ease 1}
@keyframes ask-pet-idle-wander{
  0%,12%,38%,64%,100%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}
  18%{transform:translate3d(-3px,-9px,0) rotate(-4deg) scale(1.035)}
  24%{transform:translate3d(2px,1px,0) rotate(2.5deg) scale(.985,1.015)}
  45%{transform:translate3d(5px,-3px,0) rotate(5deg) scale(1.015)}
  52%{transform:translate3d(-2px,-7px,0) rotate(-3deg) scale(1.025)}
  58%{transform:translate3d(0,1px,0) rotate(0deg) scale(.99,1.01)}
  78%{transform:translate3d(-4px,-5px,0) rotate(-5deg) scale(1.02)}
  85%{transform:translate3d(3px,-1px,0) rotate(3deg) scale(1.01)}
}
@keyframes ask-pet-idle-wiggle{
  0%,12%,38%,64%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  18%{transform:translate3d(2px,-1px,0) rotate(4deg)}
  24%{transform:translate3d(-1px,1px,0) rotate(-3deg)}
  45%{transform:translate3d(-3px,0,0) rotate(-5deg)}
  52%{transform:translate3d(2px,-1px,0) rotate(4deg)}
  78%{transform:translate3d(3px,0,0) rotate(5deg)}
  85%{transform:translate3d(-2px,1px,0) rotate(-3deg)}
}
@keyframes ask-pet-eye-blink{
  0%,41%,43.2%,45.4%,100%{opacity:0}
  42%,44.2%{opacity:1}
}
@keyframes ask-pet-pop{50%{transform:translateY(-7px) scale(1.03)}}
@keyframes ask-pet-peek{0%{transform:translateY(6px) scale(.92);opacity:.55}60%{transform:translateY(-2px) scale(1.02);opacity:1}100%{transform:none;opacity:1}}

/* ---------- 专属择校报告 · 对话式 intake ---------- */
[data-brand="juris-ivy"] .ask-thread.is-fit-flow { gap: 1rem; }
[data-brand="juris-ivy"] .fit-flow-bubble { animation: fit-rise 0.32s ease both; }
@keyframes fit-rise { from { opacity: 0; transform: translateY(8px); } }

[data-brand="juris-ivy"] .fit-intro {
  display:grid;
  grid-template-columns:5.4rem minmax(0,1fr);
  align-items:center;
  gap:1.15rem;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(168, 136, 78, 0.46);
  border-radius: 2px 18px 2px 18px;
  padding: 1.45rem 1.55rem;
  background:
    linear-gradient(135deg, rgba(168, 136, 78, 0.1), transparent 48%),
    repeating-linear-gradient(0deg, transparent, transparent 27px, rgba(168, 136, 78, 0.06) 28px),
    #fffdf8;
}
[data-brand="juris-ivy"] .fit-intro-companion{z-index:1;width:5.4rem;height:5.4rem}
[data-brand="juris-ivy"] .fit-intro-copy{position:relative;z-index:1;min-width:0}
[data-brand="juris-ivy"] .fit-intro::after {
  content: "JI";
  position: absolute;
  right: 1rem;
  top: -0.25rem;
  color: rgba(110, 29, 36, 0.055);
  font: 700 6rem/1 var(--ji-display);
}
[data-brand="juris-ivy"] .fit-intro-kicker,
[data-brand="juris-ivy"] .fit-report-header > span {
  color: var(--brass);
  font: 700 0.66rem/1.3 var(--ji-body);
  letter-spacing: 0.2em;
}
[data-brand="juris-ivy"] .fit-intro h2 { margin: 0.55rem 0 0.45rem; color: var(--oxblood); font: 500 1.55rem/1.25 var(--ji-display); }
[data-brand="juris-ivy"] .fit-intro p { max-width: 34rem; margin: 0; color: var(--stone); font-size: 0.9rem; }

@media(max-width:520px){
  [data-brand="juris-ivy"] .fit-intro{grid-template-columns:3.8rem minmax(0,1fr);gap:.85rem;padding:1.15rem}
  [data-brand="juris-ivy"] .fit-intro-companion{width:3.8rem;height:3.8rem}
  [data-brand="juris-ivy"] .fit-intro h2{font-size:1.28rem}
  [data-brand="juris-ivy"] .ask-pet-dock{right:.85rem;bottom:calc(2.8rem + env(safe-area-inset-bottom,0px))}
  [data-brand="juris-ivy"] .ask-pet-portrait{width:3.5rem;height:3.5rem}
  [data-brand="juris-ivy"] .ask-pet-tooltip{display:block;max-width:8.8rem;padding:.42rem .62rem;font-size:.67rem;line-height:1.28}
  [data-brand="juris-ivy"] :is(.ask-pet-menu,.ask-scene-menu){width:11.25rem}
  /* 手机端保留品牌入口，但抬到输入区上方；择校流程打开时仍沿用上方规则隐藏。 */
  [data-brand="juris-ivy"] body.is-composer-visible:not(.is-fit-flow-active) .ask-pet-dock{
    bottom:calc(8.25rem + env(safe-area-inset-bottom,0px));
  }
}
[data-brand="juris-ivy"].is-user-scrolling .ask-pet-tooltip,
[data-brand="juris-ivy"].is-ai-input-active .ask-pet-tooltip{opacity:.72;transition:none}
@media(prefers-reduced-motion:reduce){
  [data-brand="juris-ivy"] .ask-scene-layer{transition:none}
  [data-brand="juris-ivy"] .ask-welcome > *{animation:none}
  [data-brand="juris-ivy"] .ask-thread .ask-bubble{animation:none}
  [data-brand="juris-ivy"] .ask-pet-tooltip{animation:none;transition:none}
  [data-brand="juris-ivy"] .ask-pet-portrait,
  [data-brand="juris-ivy"] .ask-pet-portrait object,
  [data-brand="juris-ivy"] .ask-pet-portrait::after,
  [data-brand="juris-ivy"] .ask-pet-dock.is-popping .ask-pet-portrait,
  [data-brand="juris-ivy"] .ask-pet-dock.is-switching .ask-pet-portrait,
  [data-brand="juris-ivy"] .ask-side-map::before{animation:none}
}
[data-brand="juris-ivy"].is-user-scrolling .ask-pet-portrait,
[data-brand="juris-ivy"].is-ai-input-active .ask-pet-portrait,
[data-brand="juris-ivy"].is-user-scrolling .ask-pet-portrait object,
[data-brand="juris-ivy"].is-ai-input-active .ask-pet-portrait object,
[data-brand="juris-ivy"].is-user-scrolling .ask-pet-portrait::after,
[data-brand="juris-ivy"].is-ai-input-active .ask-pet-portrait::after{animation-play-state:paused}

[data-brand="juris-ivy"] .fit-question {
  border-left: 2px solid var(--brass);
  padding-left: 1.25rem;
}
[data-brand="juris-ivy"] .fit-question-head { display: flex; align-items: baseline; gap: 0.45rem; }
[data-brand="juris-ivy"] .fit-question-head span { color: var(--oxblood); font: 600 1.2rem/1 var(--ji-display); }
[data-brand="juris-ivy"] .fit-question-head small { color: var(--stone); font: 500 0.7rem var(--ji-body); letter-spacing: 0.08em; }
[data-brand="juris-ivy"] .fit-question-title { margin: 0.58rem 0 0.35rem; color: var(--ink); font: 600 1.15rem/1.45 var(--ji-display); }
[data-brand="juris-ivy"] .fit-question-hint { margin: 0; color: var(--stone); font: 400 0.84rem/1.65 var(--ji-body); }
[data-brand="juris-ivy"] .fit-validation {
  margin: 0 0 0.7rem;
  border-radius: 8px;
  background: rgba(110, 29, 36, 0.08);
  color: var(--oxblood);
  padding: 0.55rem 0.7rem;
  font: 600 0.82rem/1.5 var(--ji-body);
}
[data-brand="juris-ivy"] .fit-choice-row { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.85rem; }
[data-brand="juris-ivy"] .fit-choice-row button,
[data-brand="juris-ivy"] .fit-skip,
[data-brand="juris-ivy"] .fit-cancel {
  border: 1px solid rgba(168, 136, 78, 0.55);
  border-radius: 999px;
  background: #fffdf9;
  color: var(--oxblood);
  padding: 0.47rem 0.82rem;
  font: 600 0.8rem var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-choice-row button:hover { border-color: var(--oxblood); background: rgba(110, 29, 36, 0.06); }
[data-brand="juris-ivy"] .fit-question-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.65rem 0.8rem; margin-top: 0.8rem; }
[data-brand="juris-ivy"] .fit-skip { border-style: dashed; }
[data-brand="juris-ivy"] .fit-cancel { border: 0; background: transparent; color: var(--stone); padding-inline: 0; font-weight: 500; }
[data-brand="juris-ivy"] .fit-cancel:hover { color: var(--oxblood); text-decoration: underline; }
[data-brand="juris-ivy"] .fit-upload { display: inline-flex; margin-top: 0.9rem; cursor: pointer; }
[data-brand="juris-ivy"] .fit-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
[data-brand="juris-ivy"] .fit-upload span {
  border: 1px dashed var(--brass);
  border-radius: 10px;
  background: rgba(168, 136, 78, 0.08);
  color: var(--oxblood);
  padding: 0.7rem 1rem;
  font: 600 0.84rem var(--ji-body);
}

/* 简历上传字段(fit 问卷流「目标与经验」屏内的选填项，2026-07-12 resume-match-0712)。
   此前是 composer 里的常驻按钮(.ask-fit-upload-row / .fit-upload-persistent)——已随
   Jayson 原话①("简历属于择校报告问卷,不属于问答页")删除,对应样式一并撤下。 */
[data-brand="juris-ivy"] .fit-upload-field { display: flex; flex-direction: column; align-items: flex-start; gap: 0.5rem; }
[data-brand="juris-ivy"] .fit-upload-field .fit-upload { margin-top: 0.2rem; }
[data-brand="juris-ivy"] .fit-upload-skip { margin: 0; color: var(--stone); font: 500 0.78rem/1.5 var(--ji-body); }
[data-brand="juris-ivy"] .fit-upload-status { color: var(--stone); font: 500 0.76rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-upload-status.is-error { color: var(--oxblood); }
[data-brand="juris-ivy"] .fit-resume-delete {
  border: 0;
  border-bottom: 1px solid rgba(110, 29, 36, 0.42);
  background: transparent;
  color: var(--oxblood);
  padding: 0.15rem 0;
  font: 600 0.74rem/1.35 var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-resume-delete:disabled { color: var(--stone); cursor: wait; }
[data-brand="juris-ivy"] .fit-upload-ack { margin: 0; color: var(--oxblood); font: 500 0.85rem/1.5 var(--ji-body); }
[data-brand="juris-ivy"] .fit-field-privacy {
  max-width: 42rem;
  margin: 0.15rem 0 0;
  color: var(--stone);
  font: 400 0.74rem/1.62 var(--ji-body);
}
[data-brand="juris-ivy"] .fit-field-privacy a {
  margin-left: 0.25em;
  color: var(--oxblood);
  text-underline-offset: 0.16em;
}
[data-brand="juris-ivy"] .fit-final-optional {
  display: grid;
  gap: 0.9rem;
  margin: 1rem 0;
  border: 1px solid rgba(168, 136, 78, 0.34);
  border-radius: 13px;
  background: rgba(255, 253, 249, 0.72);
  padding: 1rem;
}
[data-brand="juris-ivy"] .fit-final-optional-head span { color: var(--brass); font: 700 0.64rem/1 var(--ji-body); letter-spacing: 0.16em; }
[data-brand="juris-ivy"] .fit-final-optional-head h3 { margin: 0.35rem 0 0.2rem; color: var(--ink); font: 650 1rem/1.4 var(--ji-display); }
[data-brand="juris-ivy"] .fit-final-optional-head p { margin: 0; color: var(--stone); font: 450 0.76rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-resume-dropzone {
  display: grid;
  place-items: center;
  gap: 0.22rem;
  width: min(30rem, 100%);
  min-height: 6.5rem;
  border: 1px dashed rgba(168, 136, 78, 0.72);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(168, 136, 78, 0.09), rgba(19, 54, 77, 0.045));
  padding: 0.9rem;
  text-align: center;
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-resume-dropzone:is(:hover,.is-dragging,:focus-within) { border-color: var(--oxblood); background: rgba(110, 29, 36, 0.055); }
[data-brand="juris-ivy"] .fit-resume-dropzone input { position: absolute; width: 1px; height: 1px; opacity: 0; }
[data-brand="juris-ivy"] .fit-resume-dropzone strong { color: var(--oxblood); font: 650 0.83rem/1.4 var(--ji-body); }
[data-brand="juris-ivy"] .fit-resume-dropzone span,
[data-brand="juris-ivy"] .fit-upload-file { color: var(--stone); font: 500 0.72rem/1.4 var(--ji-body); }
[data-brand="juris-ivy"] .fit-additional-field { display: grid; gap: 0.38rem; color: var(--ink); font: 600 0.86rem/1.4 var(--ji-display); }
[data-brand="juris-ivy"] .fit-additional-field textarea {
  width: 100%;
  resize: vertical;
  border: 1px solid rgba(168, 136, 78, 0.48);
  border-radius: 10px;
  background: #fffdf9;
  color: var(--ink);
  padding: 0.7rem 0.78rem;
  font: 500 0.82rem/1.55 var(--ji-body);
}
[data-brand="juris-ivy"] .fit-additional-field textarea:focus { outline: 2px solid rgba(110, 29, 36, 0.16); border-color: var(--oxblood); }
[data-brand="juris-ivy"] .fit-additional-field small { color: var(--stone); font: 450 0.7rem/1.45 var(--ji-body); }

[data-brand="juris-ivy"] .fit-reset-dialog { width: min(30rem, calc(100% - 2rem)); border: 0; border-radius: 16px; background: transparent; padding: 0; }
[data-brand="juris-ivy"] .fit-reset-dialog::backdrop { background: rgba(19, 30, 38, 0.48); backdrop-filter: blur(3px); }
[data-brand="juris-ivy"] .fit-reset-card { border: 1px solid rgba(168, 136, 78, 0.52); border-radius: 16px; background: #fffaf0; padding: 1.35rem; box-shadow: 0 24px 70px rgba(20, 18, 16, 0.25); }
[data-brand="juris-ivy"] .fit-reset-kicker { color: var(--brass); font: 700 0.66rem/1 var(--ji-body); letter-spacing: 0.15em; }
[data-brand="juris-ivy"] .fit-reset-card h2 { margin: 0.55rem 0 0.45rem; color: var(--oxblood); font: 650 1.25rem/1.35 var(--ji-display); }
[data-brand="juris-ivy"] .fit-reset-card p { color: var(--stone); font: 450 0.83rem/1.6 var(--ji-body); }
[data-brand="juris-ivy"] .fit-reset-actions { display: flex; justify-content: flex-end; gap: 0.7rem; margin-top: 1rem; }

/* 预算用“币种 + 金额 + 周期”明确建模；总预算必须显式填学制，不做静默猜测。 */
[data-brand="juris-ivy"] .fit-budget-entry {
  display: grid;
  grid-template-columns: minmax(9.5rem, 0.7fr) minmax(12rem, 1.3fr);
  gap: 0.65rem;
  max-width: 31rem;
  margin-top: 0.7rem;
}
[data-brand="juris-ivy"] .fit-budget-entry label,
[data-brand="juris-ivy"] .fit-budget-duration { display: grid; gap: 0.3rem; color: var(--stone); font: 600 0.72rem/1.4 var(--ji-body); }
[data-brand="juris-ivy"] .fit-budget-entry select,
[data-brand="juris-ivy"] .fit-budget-entry input,
[data-brand="juris-ivy"] .fit-budget-duration input {
  width: 100%;
  border: 1px solid rgba(168, 136, 78, 0.55);
  border-radius: 8px;
  background: #fffdf9;
  color: var(--ink);
  padding: 0.58rem 0.68rem;
  font: 500 0.84rem var(--ji-body);
}
[data-brand="juris-ivy"] .fit-budget-entry :is(select,input):focus,
[data-brand="juris-ivy"] .fit-budget-duration input:focus { outline: none; border-color: var(--oxblood); box-shadow: 0 0 0 2px rgba(110, 29, 36, 0.12); }
[data-brand="juris-ivy"] .fit-budget-duration { display: flex; align-items: center; gap: 0.45rem; max-width: 23rem; margin-top: 0.7rem; }
[data-brand="juris-ivy"] .fit-budget-duration input { width: 7rem; }
[data-brand="juris-ivy"] .fit-budget-estimate { margin: 0.65rem 0 0; color: var(--oxblood); font: 600 0.76rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-precision {
  border: 1px solid rgba(168, 136, 78, 0.72);
  border-radius: 999px;
  background: rgba(168, 136, 78, 0.09);
  color: var(--oxblood);
  padding: 0.52rem 0.9rem;
  font: 650 0.79rem var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-precision small { margin-left: 0.25rem; color: var(--stone); font: 500 0.67rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-precision:hover { border-color: var(--oxblood); background: rgba(110, 29, 36, 0.06); }

/* 提交前隐私确认：报告处理为必选，顾问联系独立且默认关闭。 */
[data-brand="juris-ivy"] .fit-consent {
  width: min(43rem, 100%);
  border-left: 3px solid var(--brass);
  padding-left: clamp(1rem, 3vw, 1.45rem);
}
[data-brand="juris-ivy"] .fit-consent-head { display: flex; align-items: baseline; gap: 0.48rem; }
[data-brand="juris-ivy"] .fit-consent-head span { color: var(--oxblood); font: 600 1.2rem/1 var(--ji-display); }
[data-brand="juris-ivy"] .fit-consent-head small { color: var(--stone); font: 500 0.7rem var(--ji-body); letter-spacing: 0.08em; }
[data-brand="juris-ivy"] .fit-consent-title { margin: 0.6rem 0 0.35rem; color: var(--ink); font: 600 1.28rem/1.4 var(--ji-display); }
[data-brand="juris-ivy"] .fit-consent-lede { margin: 0 0 1rem; color: var(--stone); font: 400 0.86rem/1.65 var(--ji-body); }
[data-brand="juris-ivy"] .fit-review-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0 0 0.75rem; overflow: hidden; border: 1px solid rgba(168, 136, 78, 0.32); border-radius: 10px; background: rgba(168, 136, 78, 0.25); }
[data-brand="juris-ivy"] .fit-review-grid > div { min-width: 0; padding: 0.72rem 0.8rem; background: #fffdf9; }
[data-brand="juris-ivy"] .fit-review-grid dt { color: var(--stone); font: 650 0.68rem/1.35 var(--ji-body); letter-spacing: 0.06em; }
[data-brand="juris-ivy"] .fit-review-grid dd { margin: 0.24rem 0 0; overflow-wrap: anywhere; color: var(--ink); font: 550 0.82rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-review-completeness { margin: 0 0 0.85rem; border-left: 3px solid var(--brass); border-radius: 0 7px 7px 0; background: rgba(168, 136, 78, 0.09); color: var(--stone); padding: 0.62rem 0.72rem; font: 550 0.76rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-review-completeness.is-complete { border-left-color: var(--oxblood); color: var(--ink); }
[data-brand="juris-ivy"] .fit-consent-options { display: grid; gap: 0.7rem; }
[data-brand="juris-ivy"] .fit-consent-option {
  border: 1px solid rgba(168, 136, 78, 0.36);
  border-radius: 10px;
  background: rgba(255, 253, 249, 0.84);
  padding: 0.85rem 0.9rem;
}
[data-brand="juris-ivy"] .fit-consent-option.fit-consent-required { border-color: rgba(110, 29, 36, 0.35); }
[data-brand="juris-ivy"] .fit-consent-option label { display: flex; align-items: flex-start; gap: 0.72rem; cursor: pointer; }
[data-brand="juris-ivy"] .fit-consent-option input {
  flex: none;
  width: 1.05rem;
  height: 1.05rem;
  margin-top: 0.15rem;
  accent-color: var(--oxblood);
}
[data-brand="juris-ivy"] .fit-consent-option label span { display: grid; gap: 0.2rem; }
[data-brand="juris-ivy"] .fit-consent-option strong { color: var(--ink); font: 650 0.86rem/1.5 var(--ji-body); }
[data-brand="juris-ivy"] .fit-consent-option small { color: var(--stone); font: 400 0.76rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-consent-option p { margin: 0.5rem 0 0 1.77rem; color: var(--stone); font: 400 0.73rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-consent-option p a { color: var(--oxblood); text-underline-offset: 0.16em; }
[data-brand="juris-ivy"] .fit-consent-option.is-disabled { opacity: 0.63; background: rgba(111, 104, 99, 0.055); }
[data-brand="juris-ivy"] .fit-consent-option.is-disabled label { cursor: default; }
[data-brand="juris-ivy"] .fit-consent-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.7rem; margin-top: 0.95rem; }
[data-brand="juris-ivy"] .fit-next:disabled { cursor: not-allowed; filter: none; opacity: 0.42; }
[data-brand="juris-ivy"] .fit-consent.is-submitted { pointer-events: none; opacity: 0.72; }
[data-brand="juris-ivy"] .fit-consent.is-submitted .fit-consent-actions { display: none; }

[data-brand="juris-ivy"] .fit-typing { display: flex; align-items: center; gap: 0.32rem; color: var(--stone); font: 500 0.85rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-typing i { width: 6px; height: 6px; border-radius: 50%; background: var(--brass); animation: fit-dot 1.1s infinite ease-in-out; }
[data-brand="juris-ivy"] .fit-typing i:nth-child(2) { animation-delay: 0.14s; }
[data-brand="juris-ivy"] .fit-typing i:nth-child(3) { animation-delay: 0.28s; margin-right: 0.4rem; }
@keyframes fit-dot { 0%, 70%, 100% { opacity: 0.25; transform: translateY(0); } 35% { opacity: 1; transform: translateY(-4px); } }

/* ---------- 简版报告：法学院档案册 ---------- */
[data-brand="juris-ivy"] .fit-report-host,
[data-brand="juris-ivy"] .fit-refinement-host,
[data-brand="juris-ivy"] .ask-bubble:has(> .fit-report-card) { width: min(52rem, 100%); }
[data-brand="juris-ivy"] .fit-report-card {
  overflow: hidden;
  border: 1px solid rgba(168, 136, 78, 0.55);
  border-top: 4px solid var(--oxblood);
  border-radius: 3px 3px 16px 16px;
  background: #fffdf8;
  box-shadow: 0 18px 50px rgba(43, 29, 20, 0.12);
  animation: fit-report-reveal 0.42s cubic-bezier(.2,.72,.24,1) both;
}
@keyframes fit-report-reveal { from { opacity: 0; transform: translateY(10px); } }
[data-brand="juris-ivy"] .fit-report-header {
  position: relative;
  padding: 1.8rem clamp(1.1rem, 4vw, 2.2rem) 1.55rem;
  background:
    radial-gradient(circle at 90% 5%, rgba(168, 136, 78, 0.17), transparent 30%),
    linear-gradient(145deg, #f7efdf, #fffdf8 64%);
  border-bottom: 1px solid rgba(168, 136, 78, 0.35);
}
[data-brand="juris-ivy"] .fit-report-header h2 { margin: 0.52rem 0 0.6rem; color: var(--oxblood); font: 600 clamp(1.45rem, 4vw, 2rem)/1.2 var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-header p { max-width: 38rem; margin: 0; color: var(--ink); font: 500 0.95rem/1.7 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-header .fit-report-version-note { margin-top: 0.7rem; color: var(--stone); font: 500 0.74rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-completeness { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.25rem 0.8rem; padding: 0.72rem clamp(1.1rem, 4vw, 2.2rem); border-bottom: 1px solid rgba(168, 136, 78, 0.25); background: rgba(168, 136, 78, 0.07); }
[data-brand="juris-ivy"] .fit-report-completeness strong { color: var(--oxblood); font: 700 0.75rem/1.45 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-completeness span { color: var(--stone); font: 500 0.73rem/1.45 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-label { margin: 0 0 0.9rem; color: var(--oxblood); font: 700 0.72rem var(--ji-body); letter-spacing: 0.15em; }
[data-brand="juris-ivy"] .fit-report-positive { padding: 1.35rem clamp(1.1rem, 4vw, 2.2rem); }
[data-brand="juris-ivy"] .fit-report-positive ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.65rem; margin: 0; padding: 0; list-style: none; }
[data-brand="juris-ivy"] .fit-report-positive li { position: relative; border-left: 2px solid var(--brass); padding: 0.2rem 0.5rem 0.2rem 0.75rem; color: var(--ink); font-size: 0.84rem; line-height: 1.55; }
[data-brand="juris-ivy"] .fit-report-tiers { display: grid; gap: 1.15rem; padding: 0 clamp(1.1rem, 4vw, 2.2rem) 1.35rem; }
[data-brand="juris-ivy"] .fit-report-tier { border: 0; border-top: 1px solid rgba(168, 136, 78, 0.34); border-radius: 0; background: transparent; padding: 1rem 0 0; }
[data-brand="juris-ivy"] .fit-report-tier h3 { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 0.65rem; color: var(--oxblood); font: 650 1rem var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-tier h3 > span { display: inline-flex; align-items: center; gap: 0.48rem; }
[data-brand="juris-ivy"] .fit-report-tier h3 > span::before { content: ""; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--brass); box-shadow: 0 0 0 3px rgba(168, 136, 78, 0.12); }
[data-brand="juris-ivy"] .fit-report-tier[data-tier="reach"] h3 > span::before { background: var(--oxblood); box-shadow: 0 0 0 3px rgba(110, 29, 36, 0.1); }
[data-brand="juris-ivy"] .fit-report-tier[data-tier="safety"] h3 > span::before { background: #68745d; box-shadow: 0 0 0 3px rgba(104, 116, 93, 0.12); }
[data-brand="juris-ivy"] .fit-report-tier h3 small { color: var(--stone); font: 500 0.68rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-school-grid { display: grid; grid-template-columns: 1fr; gap: 0.65rem; }
[data-brand="juris-ivy"] .fit-report-school { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); min-height: 7.25rem; overflow: hidden; border-radius: 7px; background: #fff; box-shadow: 0 3px 12px rgba(43, 29, 20, 0.07); }
[data-brand="juris-ivy"] .fit-report-school-media { display: block; min-height: 7.25rem; overflow: hidden; background: linear-gradient(135deg, rgba(168, 136, 78, 0.16), rgba(110, 29, 36, 0.08)); }
[data-brand="juris-ivy"] .fit-report-school img { width: 100%; height: 100%; min-height: 7.25rem; object-fit: cover; filter: sepia(0.1) saturate(0.82); }
[data-brand="juris-ivy"] .fit-report-school-copy { min-width: 0; padding: 0.72rem 0.82rem; }
[data-brand="juris-ivy"] .fit-report-school.is-image-missing { grid-template-columns: minmax(0, 1fr); }
[data-brand="juris-ivy"] .fit-report-school.is-image-missing .fit-report-school-media { display: none; }
[data-brand="juris-ivy"] .fit-report-school h4 { margin: 0 0 0.28rem; color: var(--oxblood); font: 650 0.88rem/1.35 var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-school-analysis { display: grid; gap: 0.46rem; color: var(--stone); font: 400 0.73rem/1.5 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-school-summary { margin: 0; color: var(--ink); font-weight: 600; }
[data-brand="juris-ivy"] .fit-report-school-reasons { display: grid; gap: 0.22rem; margin: 0; padding-left: 1.05rem; }
[data-brand="juris-ivy"] .fit-report-school-reasons li::marker { color: var(--brass); }
[data-brand="juris-ivy"] .fit-report-school-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.36rem 0.7rem; margin: 0.08rem 0 0; border-top: 1px solid rgba(168, 136, 78, 0.2); padding-top: 0.5rem; }
[data-brand="juris-ivy"] .fit-report-school-facts > div { min-width: 0; }
[data-brand="juris-ivy"] .fit-report-school-facts dt { color: var(--oxblood); font-weight: 700; }
[data-brand="juris-ivy"] .fit-report-school-facts dd { margin: 0.08rem 0 0; overflow-wrap: anywhere; }
[data-brand="juris-ivy"] .fit-report-tier-empty { display: grid; gap: 0.25rem; margin: 0; border-left: 2px solid rgba(168, 136, 78, 0.58); background: rgba(168, 136, 78, 0.055); padding: 0.72rem 0.85rem; color: var(--stone); font: 450 0.75rem/1.52 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-tier-empty strong { color: var(--ink); font-weight: 650; }
[data-brand="juris-ivy"] .fit-report-tier-empty span { display: block; }
[data-brand="juris-ivy"] .fit-report-timeline { padding: 1.25rem clamp(1.1rem, 4vw, 2.2rem); border-top: 1px solid rgba(168, 136, 78, 0.28); }
[data-brand="juris-ivy"] .fit-report-timeline ol { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: fit-time; }
[data-brand="juris-ivy"] .fit-report-timeline li { counter-increment: fit-time; position: relative; border-top: 1px solid var(--brass); padding: 0.8rem 0.65rem 0 1.4rem; }
[data-brand="juris-ivy"] .fit-report-timeline li::before { content: counter(fit-time); position: absolute; top: -0.7rem; left: 0; display: grid; place-items: center; width: 1.35rem; height: 1.35rem; border-radius: 50%; background: var(--oxblood); color: #fff; font: 600 0.64rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-timeline b,
[data-brand="juris-ivy"] .fit-report-timeline span { display: block; }
[data-brand="juris-ivy"] .fit-report-timeline b { color: var(--oxblood); font-size: 0.75rem; }
[data-brand="juris-ivy"] .fit-report-timeline span { margin-top: 0.2rem; color: var(--stone); font-size: 0.76rem; }
[data-brand="juris-ivy"] .fit-report-provenance {
  margin: 0 clamp(1.1rem, 4vw, 2.2rem) 1rem;
  border-block: 1px solid rgba(168, 136, 78, 0.28);
  padding: 0.82rem 0;
  color: var(--stone);
  font: 500 0.72rem/1.55 var(--ji-body);
}
[data-brand="juris-ivy"] details.fit-report-provenance summary { color: var(--oxblood); font-weight: 700; cursor: pointer; }
[data-brand="juris-ivy"] .fit-report-provenance > p { margin: 0.65rem 0; }
[data-brand="juris-ivy"] .fit-report-provenance ol { display: grid; gap: 0.45rem; margin: 0; padding: 0; list-style: none; }
[data-brand="juris-ivy"] .fit-report-provenance li { min-width: 0; }
[data-brand="juris-ivy"] .fit-report-provenance a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.75rem; color: var(--ink); text-decoration: none; }
[data-brand="juris-ivy"] .fit-report-provenance a:hover span { color: var(--oxblood); text-decoration: underline; text-underline-offset: 0.16em; }
[data-brand="juris-ivy"] .fit-report-provenance small { color: var(--stone); text-align: right; }
[data-brand="juris-ivy"] section.fit-report-provenance { display: grid; gap: 0.22rem; border-left: 2px solid var(--brass); padding-left: 0.75rem; }
[data-brand="juris-ivy"] section.fit-report-provenance strong { color: var(--oxblood); }
[data-brand="juris-ivy"] .fit-report-lock {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  margin: 0 clamp(0.7rem, 3vw, 1.35rem) 1rem;
  border-radius: 12px;
  padding: 1.2rem;
  color: #fff8eb;
  background: linear-gradient(125deg, rgba(72, 12, 20, 0.97), rgba(110, 29, 36, 0.9)), repeating-linear-gradient(45deg, transparent, transparent 8px, rgba(255,255,255,.03) 9px);
  box-shadow: inset 0 0 0 1px rgba(255, 244, 219, 0.16);
}
[data-brand="juris-ivy"] .fit-report-lock::after { content: "LOCKED"; position: absolute; right: 0.7rem; bottom: 0.2rem; color: rgba(255,255,255,0.07); font: 700 2.6rem var(--ji-display); letter-spacing: 0.08em; pointer-events: none; }
[data-brand="juris-ivy"] .fit-report-lock-copy { display: flex; gap: 0.8rem; align-items: flex-start; }
[data-brand="juris-ivy"] .fit-report-lock-copy > span { color: #d8b870; font-size: 1.4rem; }
[data-brand="juris-ivy"] .fit-report-lock h3 { margin: 0; font: 600 1.08rem var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-lock p { margin: 0.28rem 0 0; color: rgba(255,248,235,0.76); font: 400 0.78rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-contact { position: relative; z-index: 1; display: flex; align-items: center; gap: 0.7rem; }
[data-brand="juris-ivy"] .fit-report-contact img { width: 4.25rem; height: 4.25rem; border-radius: 5px; background: #fff; object-fit: cover; }
[data-brand="juris-ivy"] .fit-report-contact .fit-report-wecom-qr {
  display: block;
  flex: 0 0 7.25rem;
  width: 7.25rem;
  height: 7.25rem;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(110, 29, 36, 0.18);
  border-radius: 8px;
  background: #fff;
}
[data-brand="juris-ivy"] .fit-report-contact .fit-report-wecom-qr img {
  width: 14.65rem;
  max-width: none;
  height: auto;
  border: 0;
  border-radius: 0;
  image-rendering: auto;
  transform: translate(-3.55rem, -6.9rem);
}
[data-brand="juris-ivy"] .fit-report-contact .fit-report-wecom-open { font-weight: 700; }
[data-brand="juris-ivy"] .fit-report-contact small { display: block; margin-bottom: 0.2rem; color: var(--stone); font: 600 0.67rem/1.35 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-contact button,
[data-brand="juris-ivy"] .fit-report-contact a { display: inline-block; margin-top: 0.38rem; border: 0; background: transparent; color: #dfc17e; padding: 0; font: 600 0.7rem var(--ji-body); text-decoration: none; cursor: pointer; }
[data-brand="juris-ivy"] .fit-report-contact a { display: block; }
[data-brand="juris-ivy"] .fit-report-consult {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.8fr);
  align-items: center;
  gap: 1rem;
  margin: 0 clamp(0.7rem, 3vw, 1.35rem) 1rem;
  border: 1px solid rgba(168, 136, 78, 0.42);
  border-radius: 12px;
  padding: 1.15rem;
  background: linear-gradient(130deg, rgba(168, 136, 78, 0.12), rgba(255, 253, 248, 0.92));
}
[data-brand="juris-ivy"] .fit-report-consult-copy { display: flex; align-items: flex-start; gap: 0.72rem; }
[data-brand="juris-ivy"] .fit-report-consult-copy > span { color: var(--brass); font-size: 1.35rem; }
[data-brand="juris-ivy"] .fit-report-consult h3 { margin: 0; color: var(--oxblood); font: 650 1.05rem var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-consult p { margin: 0.28rem 0 0; color: var(--stone); font: 450 0.78rem/1.58 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-consult .fit-report-contact :is(button,a) { color: var(--oxblood); }
[data-brand="juris-ivy"] .fit-report-claim { min-width: 0; }
[data-brand="juris-ivy"] .fit-report-claim > small { margin: 0; color: var(--stone); letter-spacing: 0.04em; }
[data-brand="juris-ivy"] .fit-report-claim > div { display: flex; flex-wrap: wrap; align-items: center; gap: 0.38rem 0.55rem; margin-top: 0.18rem; }
[data-brand="juris-ivy"] .fit-report-claim strong { white-space: nowrap; color: var(--oxblood); font: 750 0.88rem/1.25 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: 0.055em; }
[data-brand="juris-ivy"] .fit-report-claim button { margin: 0; border-bottom: 1px solid currentColor; font-size: 0.68rem; }
[data-brand="juris-ivy"] .fit-report-claim > span { display: block; max-width: 15rem; margin-top: 0.3rem; color: var(--stone); font: 450 0.66rem/1.45 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-followup {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(16rem, 1.1fr);
  gap: 1rem;
  margin: 0 clamp(1.1rem, 4vw, 2.2rem) 1rem;
  border-block: 1px solid rgba(168, 136, 78, 0.3);
  padding: 1rem 0;
}
[data-brand="juris-ivy"] .fit-report-followup > div:first-child > span { color: var(--brass); font: 700 0.61rem/1.4 var(--ji-body); letter-spacing: 0.13em; }
[data-brand="juris-ivy"] .fit-report-followup h3 { margin: 0.25rem 0 0; color: var(--ink); font: 620 1.02rem/1.35 var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-followup p { margin: 0.32rem 0 0; color: var(--stone); font: 450 0.75rem/1.58 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-followup-chips { display: flex; flex-wrap: wrap; align-content: center; gap: 0.45rem; }
[data-brand="juris-ivy"] .fit-report-followup-chips button { border: 1px solid rgba(168, 136, 78, 0.48); border-radius: 999px; background: rgba(255, 253, 249, 0.88); color: var(--oxblood); padding: 0.48rem 0.72rem; font: 600 0.72rem/1.35 var(--ji-body); cursor: pointer; }
[data-brand="juris-ivy"] .fit-report-followup-chips button:hover,
[data-brand="juris-ivy"] .fit-report-followup-chips button:focus-visible { border-color: var(--oxblood); background: rgba(110, 29, 36, 0.06); outline: none; }
[data-brand="juris-ivy"] .fit-report-utility { margin: 0 clamp(1.1rem, 4vw, 2.2rem) 0.9rem; border-top: 1px solid rgba(168, 136, 78, 0.25); padding-top: 0.7rem; color: var(--stone); font: 500 0.7rem/1.5 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-utility summary { width: fit-content; color: var(--stone); cursor: pointer; }
[data-brand="juris-ivy"] .fit-report-utility > div { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.7rem; padding-top: 0.65rem; }
[data-brand="juris-ivy"] .fit-report-utility p { flex: 1 1 18rem; margin: 0; }
[data-brand="juris-ivy"] .fit-report-pdf-btn {
  border: 1px solid var(--brass);
  border-radius: 999px;
  background: #fff;
  color: var(--oxblood);
  padding: 0.6rem 1.3rem;
  font: 650 0.82rem var(--ji-body);
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}
[data-brand="juris-ivy"] .fit-report-pdf-btn:hover { background: var(--oxblood); color: #fff8eb; }
[data-brand="juris-ivy"] .fit-report-resume-delete {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.35rem 0.75rem;
  margin: 0 clamp(1.1rem, 4vw, 2.2rem) 1rem;
  color: var(--stone);
  font: 500 0.72rem/1.5 var(--ji-body);
}
[data-brand="juris-ivy"] .fit-report-resume-delete p { margin: 0; }
[data-brand="juris-ivy"] .fit-report-resume-delete span { flex-basis: 100%; min-height: 1em; text-align: center; color: var(--oxblood); }
[data-brand="juris-ivy"] .fit-report-refinement {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  margin: 0 clamp(0.7rem, 3vw, 1.35rem) 1rem;
  border-block: 1px solid rgba(168, 136, 78, 0.34);
  padding: 1.05rem 0.4rem;
}
[data-brand="juris-ivy"] .fit-report-refinement span,
[data-brand="juris-ivy"] .fit-refinement-kicker { color: var(--brass); font: 700 0.64rem/1.4 var(--ji-body); letter-spacing: 0.15em; }
[data-brand="juris-ivy"] .fit-report-refinement h3 { margin: 0.24rem 0 0; color: var(--ink); font: 620 1.05rem/1.35 var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-refinement p { max-width: 36rem; margin: 0.28rem 0 0; color: var(--stone); font: 450 0.77rem/1.58 var(--ji-body); }
[data-brand="juris-ivy"] .fit-report-refinement > button,
[data-brand="juris-ivy"] .fit-refinement-actions > button:first-child {
  border: 1px solid var(--oxblood);
  border-radius: 999px;
  background: var(--oxblood);
  color: #fffdf9;
  padding: 0.58rem 0.95rem;
  font: 650 0.78rem/1.25 var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-refinement-card {
  width: min(46rem, 100%);
  border: 1px solid rgba(168, 136, 78, 0.42);
  border-left: 3px solid var(--brass);
  border-radius: 4px 14px 14px 4px;
  background: linear-gradient(145deg, rgba(247, 239, 223, 0.8), rgba(255, 253, 248, 0.96) 62%);
  padding: clamp(1rem, 3vw, 1.45rem);
  box-shadow: 0 10px 28px rgba(43, 29, 20, 0.07);
}
[data-brand="juris-ivy"] .fit-refinement-card h2 { margin: 0.35rem 0 0; color: var(--oxblood); font: 620 clamp(1.2rem, 3.5vw, 1.55rem)/1.35 var(--ji-display); }
[data-brand="juris-ivy"] .fit-refinement-card > p { margin: 0.48rem 0 0; color: var(--stone); font: 450 0.82rem/1.65 var(--ji-body); }
[data-brand="juris-ivy"] .fit-refinement-inline-error { border-left: 2px solid var(--oxblood); padding: 0.5rem 0.65rem; background: rgba(110, 29, 36, 0.06); color: var(--oxblood) !important; }
[data-brand="juris-ivy"] .fit-refinement-questions { display: grid; gap: 0; margin-top: 1rem; border-block: 1px solid rgba(168, 136, 78, 0.28); }
[data-brand="juris-ivy"] .fit-refinement-question { min-width: 0; margin: 0; border: 0; border-bottom: 1px solid rgba(168, 136, 78, 0.22); padding: 1rem 0; }
[data-brand="juris-ivy"] .fit-refinement-question:last-child { border-bottom: 0; }
[data-brand="juris-ivy"] .fit-refinement-question legend { display: flex; align-items: flex-start; gap: 0.55rem; color: var(--ink); font: 620 0.96rem/1.5 var(--ji-display); }
[data-brand="juris-ivy"] .fit-refinement-question legend small { display: grid; flex: none; place-items: center; width: 1.25rem; height: 1.25rem; margin-top: 0.08rem; border-radius: 50%; background: rgba(168, 136, 78, 0.14); color: var(--oxblood); font: 650 0.65rem var(--ji-body); }
[data-brand="juris-ivy"] .fit-refinement-question > p { margin: 0.25rem 0 0 1.8rem; color: var(--stone); font: 450 0.75rem/1.55 var(--ji-body); }
[data-brand="juris-ivy"] .fit-refinement-question textarea {
  width: calc(100% - 1.8rem);
  margin: 0.65rem 0 0 1.8rem;
  resize: vertical;
  border: 1px solid rgba(168, 136, 78, 0.45);
  border-radius: 9px;
  background: rgba(255, 253, 249, 0.9);
  color: var(--ink);
  padding: 0.65rem 0.72rem;
  font: 500 0.84rem/1.55 var(--ji-body);
}
[data-brand="juris-ivy"] .fit-refinement-question textarea:focus { outline: none; border-color: var(--oxblood); box-shadow: 0 0 0 2px rgba(110, 29, 36, 0.1); }
[data-brand="juris-ivy"] .fit-refinement-options { display: flex; flex-wrap: wrap; gap: 0.48rem; margin: 0.65rem 0 0 1.8rem; }
[data-brand="juris-ivy"] .fit-refinement-options button {
  border: 1px solid rgba(168, 136, 78, 0.52);
  border-radius: 999px;
  background: #fffdf9;
  color: var(--oxblood);
  padding: 0.46rem 0.75rem;
  font: 600 0.76rem var(--ji-body);
  cursor: pointer;
}
[data-brand="juris-ivy"] .fit-refinement-options button.is-selected { border-color: var(--oxblood); background: var(--oxblood); color: #fffdf9; }
[data-brand="juris-ivy"] .fit-refinement-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.65rem; margin-top: 1rem; }
[data-brand="juris-ivy"] .fit-refinement-privacy { font-size: 0.69rem !important; }
[data-brand="juris-ivy"] .fit-report-disclaimer { margin: 0; padding: 0 1.35rem 1rem; color: var(--stone); font: 400 0.66rem var(--ji-body); text-align: center; }
[data-brand="juris-ivy"] .fit-report-failure { border: 1px solid rgba(110,29,36,.2); border-radius: 12px; background: rgba(110,29,36,.05); padding: 1.2rem; }
[data-brand="juris-ivy"] .fit-report-failure h2 { margin: 0 0 0.4rem; color: var(--oxblood); font: 600 1.1rem var(--ji-display); }
[data-brand="juris-ivy"] .fit-report-failure p { margin: 0 0 0.8rem; color: var(--stone); font-size: 0.85rem; }
/* fix-audit(0709 F-ask2510):localStorage 配额打满时挂在气泡上的小字提示——不用 status
   条(会被 setLoading 立刻覆盖),挂在气泡本身,视觉上不抢戏但持续可见。 */
[data-brand="juris-ivy"] .ask-storage-notice { margin: 0.4rem 0 0; color: var(--oxblood); font-size: 0.72rem; opacity: 0.85; }

/* ---------- 底部输入区（大圆角） ---------- */
[data-brand="juris-ivy"] .ask-composer {
  flex: 0 0 auto;
  padding: 0.75rem clamp(1rem, 6vw, 3.5rem) 1rem;
  border-top: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(251, 246, 236, 0), #fbf6ec 40%);
}
[data-brand="juris-ivy"] .ask-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 0.5rem;
  width: min(46rem, 100%);
  margin: 0 auto;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fffdf9;
  padding: 0.45rem 0.5rem 0.45rem 1rem;
  box-shadow: 0 6px 20px rgba(27, 23, 20, 0.06);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
[data-brand="juris-ivy"] .ask-form:focus-within {
  border-color: var(--brass);
  box-shadow: 0 6px 22px rgba(110, 29, 36, 0.1);
}
[data-brand="juris-ivy"] .ask-form textarea {
  border: 0; background: transparent; resize: none;
  min-height: 2.6rem; max-height: 9rem;
  padding: 0.55rem 0; color: var(--ink);
  font: 1rem/1.5 var(--ji-body);
}
[data-brand="juris-ivy"] .ask-form textarea:focus { outline: none; }
[data-brand="juris-ivy"] .ask-send {
  align-self: end;
  display: grid; place-items: center;
  width: 2.6rem; height: 2.6rem; border: 0; border-radius: 50%;
  background: var(--oxblood); color: #fdf6ee;
  font-size: 1.15rem; line-height: 1; cursor: pointer;
  transition: background 0.15s ease, transform 0.12s ease;
}
[data-brand="juris-ivy"] .ask-send:hover { background: #571119; }
[data-brand="juris-ivy"] .ask-send:disabled { background: var(--stone); opacity: 0.5; cursor: default; }
[data-brand="juris-ivy"] .ask-send:active { transform: scale(0.94); }

[data-brand="juris-ivy"] .ask-status {
  width: min(46rem, 100%);
  margin: 0.45rem auto 0;
  min-height: 1.1rem;
  color: var(--stone);
  font-size: 0.82rem;
}
[data-brand="juris-ivy"] .ask-composer-hint {
  width: min(46rem, 100%);
  margin: 0.25rem auto 0;
  text-align: center;
  color: var(--stone);
  font-size: 0.72rem;
  opacity: 0.8;
}
[data-brand="juris-ivy"] .ask-privacy-notice {
  width: min(46rem, 100%);
  margin: 0.18rem auto 0;
  text-align: center;
  color: var(--stone);
  font: 400 0.68rem/1.5 var(--ji-body);
  opacity: 0.82;
}
[data-brand="juris-ivy"] .ask-privacy-notice a,
[data-brand="juris-ivy"] .ask-credit-privacy a {
  color: var(--oxblood);
  text-underline-offset: 0.14em;
}
[data-brand="juris-ivy"] .ask-credit-card .ask-credit-privacy {
  margin: 0.65rem auto 0;
  color: var(--stone);
  font: 400 0.72rem/1.55 var(--ji-body);
}

/* Ask 页四个关注渠道固定为清楚的 2×2 名片阵列；窄屏仍保留两列，不挤压二维码。 */
[data-brand="juris-ivy"] body.ask-page .footer-qrs {
  display: grid;
  grid-template-columns: repeat(2, 104px);
  gap: 1rem;
  justify-content: start;
}
[data-brand="juris-ivy"] body.ask-page .footer-qrs figure { min-width: 0; }

/* ---------- 移动端抽屉：话题栏「☰ 对话」开关 + 遮罩（由 ask.js 注入/驱动） ---------- */
/* 汉堡按钮：桌面默认隐藏，只在 ≤860px 抽屉模式下出现 */
[data-brand="juris-ivy"] .ask-drawer-toggle {
  display: none;
  align-items: center;
  gap: 0.35rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fffdf9;
  color: var(--oxblood);
  padding: 0.4rem 0.7rem;
  font: 600 0.82rem var(--ji-body);
  cursor: pointer;
  flex: 0 0 auto;
}
/* 抽屉遮罩：点击关闭，未打开时不可见也不可点 */
[data-brand="juris-ivy"] .ask-drawer-scrim {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 190;
  background: rgba(20, 14, 8, 0.42);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.22s ease;
}
[data-brand="juris-ivy"] .ask-drawer-scrim.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* ---------- 响应式：窄屏侧栏改为左滑抽屉（内容不变：＋新对话/最近对话/剩余次数/
   预约1v1 CTA/浏览选校库——只是从常驻列改成默认收起，点话题栏「☰ 对话」滑出） ---------- */
@media (max-width: 860px) {
  [data-brand="juris-ivy"] .ask-app {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  [data-brand="juris-ivy"] .ask-drawer-toggle { display: inline-flex; }
  [data-brand="juris-ivy"] .ask-drawer-scrim { display: block; }

  /* P0-1(2026-07-12 手机破相):顶栏标题「AI 申请顾问」在 390px 被从词中间断成「AI 申/请顾问」,
     副标题同样词内折行。改为标题/副标题纵向堆叠,各自 keep-all 禁止 CJK 词内断行(两者都够窄,单行可容)。 */
  [data-brand="juris-ivy"] .ask-colbar {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.12rem;
  }
  [data-brand="juris-ivy"] .ask-colbar h1,
  [data-brand="juris-ivy"] .ask-colbar-sub {
    word-break: keep-all;
    overflow-wrap: normal;
  }

  [data-brand="juris-ivy"] .ask-side {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 200;
    width: min(82vw, 300px);
    height: 100dvh;
    border-right: 0;
    box-shadow: 10px 0 34px rgba(20, 14, 8, 0.28);
    transform: translateX(-100%);
    transition: transform 0.26s ease;
  }
  [data-brand="juris-ivy"] .ask-side.is-open {
    transform: translateX(0);
  }

  [data-brand="juris-ivy"] .ask-thread {
    justify-content: flex-start;
    min-height: 62vh;
    padding: 1.4rem 1rem;
  }
  [data-brand="juris-ivy"] .ask-composer { padding: 0.7rem 1rem 1rem; }
  [data-brand="juris-ivy"] .fit-report-positive ul,
  [data-brand="juris-ivy"] .fit-report-timeline ol { grid-template-columns: 1fr; gap: 0.65rem; }
  [data-brand="juris-ivy"] .fit-report-school-grid { grid-template-columns: 1fr; }
  [data-brand="juris-ivy"] .fit-report-provenance a { grid-template-columns: 1fr; gap: 0.08rem; }
  [data-brand="juris-ivy"] .fit-report-provenance small { text-align: left; }
  [data-brand="juris-ivy"] .fit-report-lock,
  [data-brand="juris-ivy"] .fit-report-consult,
  [data-brand="juris-ivy"] .fit-report-refinement,
  [data-brand="juris-ivy"] .fit-report-followup { grid-template-columns: 1fr; }
  [data-brand="juris-ivy"] .fit-report-refinement > button { justify-self: start; }
  [data-brand="juris-ivy"] .fit-refinement-question > p,
  [data-brand="juris-ivy"] .fit-refinement-question textarea,
  [data-brand="juris-ivy"] .fit-refinement-options { margin-left: 0; }
  [data-brand="juris-ivy"] .fit-refinement-question textarea { width: 100%; }
  [data-brand="juris-ivy"] .fit-budget-entry,
  [data-brand="juris-ivy"] .fit-review-grid { grid-template-columns: 1fr; }
  [data-brand="juris-ivy"] .fit-budget-duration { align-items: flex-start; flex-wrap: wrap; }
}

@media (max-width: 520px) {
  [data-brand="juris-ivy"] body:has(.fit-progress) .ask-pet-dock { display: none; }
  [data-brand="juris-ivy"] body.ask-page .footer-qrs { justify-content: center; }
  [data-brand="juris-ivy"] .fit-report-school { grid-template-columns: 1fr; grid-template-rows: 6.5rem auto; }
  [data-brand="juris-ivy"] .fit-report-school-media,
  [data-brand="juris-ivy"] .fit-report-school img { min-height: 6.5rem; height: 6.5rem; }
  [data-brand="juris-ivy"] .fit-report-school-facts { grid-template-columns: 1fr; }
  [data-brand="juris-ivy"] .fit-report-contact { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  [data-brand="juris-ivy"] .ask-side,
  [data-brand="juris-ivy"] .ask-drawer-scrim { transition: none; }
}

/* 「下载 PDF 报告」= 浏览器原生打印/另存PDF，只留报告卡片本体(2026-07-11 fit-funnel-0711)。
   零新后端依赖：点击 data-fit-download-pdf 时 ask.js 给触发的卡片打 .is-print-target，
   afterprint 后自动摘掉，不影响下一次普通打印(Cmd+P)。 */
@media print {
  body * { visibility: hidden !important; }
  .fit-report-card.is-print-target,
  .fit-report-card.is-print-target * { visibility: visible !important; }
  .fit-report-card.is-print-target {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    margin: 0;
    box-shadow: none;
    border: 0;
  }
  .fit-report-card.is-print-target .fit-report-actions,
  .fit-report-card.is-print-target .fit-report-utility,
  .fit-report-card.is-print-target .fit-report-followup,
  .fit-report-card.is-print-target .fit-report-refinement,
  .fit-report-card.is-print-target .fit-report-resume-delete { display: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  [data-brand="juris-ivy"] .fit-report-card { animation: none; }
  [data-brand="juris-ivy"] a.fit-report-school { transition: none; }
  [data-brand="juris-ivy"] a.fit-report-school:hover { transform: none; }
}

/* ── academic-input-0711:择校定位分步表单(多字段一屏/chip 选中态/三态填空)与报告卡链接化 ── */
[data-brand="juris-ivy"] .fit-field { margin-top: 1.05rem; }
[data-brand="juris-ivy"] .fit-field-label { margin: 0 0 0.15rem; color: var(--ink); font: 600 0.92rem/1.5 var(--ji-display); }
[data-brand="juris-ivy"] .fit-field-optional { margin-left: 0.45rem; color: var(--stone); font: 500 0.68rem var(--ji-body); border: 1px solid rgba(168, 136, 78, 0.4); border-radius: 999px; padding: 0.08rem 0.45rem; vertical-align: 0.1rem; }
[data-brand="juris-ivy"] .fit-choice-row button.is-selected { border-color: var(--oxblood); background: var(--oxblood); color: #fffdf9; }
[data-brand="juris-ivy"] .fit-inline-input {
  display: block; width: min(24rem, 100%); margin-top: 0.6rem;
  border: 1px solid rgba(168, 136, 78, 0.55); border-radius: 8px; background: #fffdf9;
  color: var(--ink); padding: 0.52rem 0.7rem; font: 500 0.88rem var(--ji-body);
}
[data-brand="juris-ivy"] .fit-inline-input:focus { outline: none; border-color: var(--oxblood); box-shadow: 0 0 0 2px rgba(110, 29, 36, 0.12); }
[data-brand="juris-ivy"] .fit-template-row { margin-top: 0.55rem; }
[data-brand="juris-ivy"] .fit-template-chip { font-weight: 500 !important; }
[data-brand="juris-ivy"] .fit-unsure-note { margin: 0.6rem 0 0; padding: 0.6rem 0.75rem; border-left: 3px solid var(--brass); background: rgba(168, 136, 78, 0.08); color: var(--stone); font: 400 0.8rem/1.7 var(--ji-body); }
[data-brand="juris-ivy"] .fit-next {
  border: 0; border-radius: 999px; background: var(--oxblood); color: #fffdf9;
  padding: 0.55rem 1.15rem; font: 650 0.84rem var(--ji-body); cursor: pointer;
}
[data-brand="juris-ivy"] .fit-next:hover { filter: brightness(1.12); }
[data-brand="juris-ivy"] .fit-question.is-done {
  pointer-events: none;
  opacity: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  column-gap: 0.7rem;
  border: 1px solid rgba(168, 136, 78, 0.28);
  border-left: 3px solid var(--brass);
  border-radius: 10px;
  background: rgba(255, 253, 249, 0.72);
  padding: 0.65rem 0.85rem;
}
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-head { gap: 0.25rem; }
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-head span { font-size: 0.95rem; }
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-head small { font-size: 0.64rem; }
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-title {
  margin: 0;
  font-size: 0.94rem;
  line-height: 1.35;
}
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-hint,
[data-brand="juris-ivy"] .fit-question.is-done .fit-field,
[data-brand="juris-ivy"] .fit-question.is-done .fit-validation,
[data-brand="juris-ivy"] .fit-question.is-done .fit-question-actions,
[data-brand="juris-ivy"] .fit-question.is-done .fit-pre-submit-notice { display: none; }
/* 报告卡校卡从 <article> 改为 <a>(每校链到站内院校页):保持原卡片观感,去链接默认样式 */
[data-brand="juris-ivy"] a.fit-report-school { text-decoration: none; color: inherit; transition: box-shadow 0.15s ease, transform 0.15s ease; }
[data-brand="juris-ivy"] a.fit-report-school:hover { box-shadow: 0 6px 18px rgba(43, 29, 20, 0.14); transform: translateY(-1px); }
[data-brand="juris-ivy"] .fit-report-school-link { display: inline-block; margin-top: 0.3rem; color: var(--oxblood); font: 600 0.7rem var(--ji-body); }

/* ── deep-engine-0712:深度报告进度态 ─────────────────────────────────────────
   报告要跑 3-5 分钟。等待期间必须让用户看见"我们在干什么"(分阶段文案 + 进度条 + 计时),
   而不是一个转圈的菊花——把"慢"读成"认真",而不是"卡死"(Jayson 2026-07-12 P0)。
   同一时间输入框**不锁**:用户可以继续问别的问题,所以这张卡是普通气泡,不是全屏遮罩。 */
[data-brand="juris-ivy"] .fit-pre-submit-notice { margin: 0.9rem 0 0; padding: 0.7rem 0.85rem; border-left: 2px solid var(--brass); background: rgba(168,130,60,.07); border-radius: 0 8px 8px 0; color: var(--stone); font-size: 0.82rem; line-height: 1.6; }

[data-brand="juris-ivy"] .fit-progress { border: 1px solid var(--rule); border-radius: 12px; background: var(--paper); padding: 1.2rem 1.25rem; }
[data-brand="juris-ivy"] .fit-progress-head h3 { margin: 0 0 0.35rem; color: var(--ink); font: 600 1.02rem var(--ji-display); }
[data-brand="juris-ivy"] .fit-progress-head p { margin: 0 0 0.9rem; color: var(--stone); font-size: 0.82rem; line-height: 1.6; }
[data-brand="juris-ivy"] .fit-progress-bar { height: 3px; border-radius: 3px; background: rgba(0,0,0,.07); overflow: hidden; }
[data-brand="juris-ivy"] .fit-progress-bar i { display: block; height: 100%; border-radius: 3px; background: var(--brass); transition: width .6s ease; }
[data-brand="juris-ivy"] .fit-progress-steps { list-style: none; margin: 0.9rem 0 0; padding: 0; display: grid; gap: 0.5rem; }
[data-brand="juris-ivy"] .fit-progress-steps li { display: flex; align-items: center; gap: 0.55rem; color: var(--stone); font-size: 0.84rem; opacity: .45; transition: opacity .3s ease; }
[data-brand="juris-ivy"] .fit-progress-steps li.is-done { opacity: .8; }
[data-brand="juris-ivy"] .fit-progress-steps li.is-active { opacity: 1; color: var(--ink); font-weight: 600; }
[data-brand="juris-ivy"] .fit-progress-dot { flex: none; width: 7px; height: 7px; border-radius: 50%; border: 1px solid var(--brass); background: transparent; }
[data-brand="juris-ivy"] .fit-progress-steps li.is-done .fit-progress-dot { background: var(--brass); }
[data-brand="juris-ivy"] .fit-progress-steps li.is-active .fit-progress-dot { background: var(--brass); box-shadow: 0 0 0 3px rgba(168,130,60,.18); animation: fit-pulse 1.5s infinite ease-in-out; }
[data-brand="juris-ivy"] .fit-progress-meta { margin: 1rem 0 0; padding-top: 0.75rem; border-top: 1px solid var(--rule); color: var(--stone); font-size: 0.76rem; line-height: 1.5; }
@keyframes fit-pulse { 0%,100% { box-shadow: 0 0 0 3px rgba(168,130,60,.18); } 50% { box-shadow: 0 0 0 5px rgba(168,130,60,.06); } }
@media (prefers-reduced-motion: reduce) {
  [data-brand="juris-ivy"] .fit-progress-steps li.is-active .fit-progress-dot { animation: none; }
  [data-brand="juris-ivy"] .fit-progress-bar i { transition: none; }
}
