/* 小蓝书 V5.0：湖北专升本思维导图移动端阅读模式
   只覆盖 /zsb/hubei/mindmaps 与详情页的移动端表现；PC 端保持 v4103 原效果。 */

@media (max-width: 760px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background: #f5f9ff !important;
  }

  body.mindmap-fullscreen-open {
    overflow: hidden !important;
    height: 100dvh !important;
  }

  .mindmaps-app {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 10px 10px calc(96px + env(safe-area-inset-bottom)) !important;
  }

  .topbar {
    height: auto !important;
    min-height: 54px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    align-items: center !important;
    padding: 2px 0 8px !important;
  }

  .brand {
    min-width: 0 !important;
    gap: 9px !important;
  }

  .logo {
    width: 36px !important;
    height: 36px !important;
    border-radius: 13px !important;
  }

  .brand-title {
    display: block !important;
    max-width: 66vw !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
  }

  .brand-sub {
    max-width: 66vw !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    font-size: 11px !important;
  }

  .top-actions {
    display: flex !important;
    gap: 6px !important;
    justify-content: flex-end !important;
    min-width: 0 !important;
  }

  .top-actions .pill {
    height: 32px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }

  /* 手机端顶部只保留一个轻量返回入口，避免一排按钮挤占导图。 */
  .top-actions .pill:nth-child(n+2) {
    display: none !important;
  }

  /* 目录页移动端：卡片密度更高，筛选改成横向 chip。 */
  .hero {
    display: block !important;
    margin: 4px 0 10px !important;
    padding: 14px !important;
    border-radius: 22px !important;
  }

  .hero h1 {
    margin: 10px 0 7px !important;
    font-size: 25px !important;
    line-height: 1.16 !important;
  }

  .hero p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .hero-tags {
    gap: 6px !important;
    margin-top: 10px !important;
  }

  .hero-tags span {
    padding: 5px 8px !important;
    font-size: 11px !important;
  }

  .member-panel {
    display: none !important;
  }

  .catalog-shell {
    display: block !important;
  }

  .side {
    position: static !important;
    padding: 10px !important;
    margin-bottom: 10px !important;
    border-radius: 20px !important;
  }

  .side h3 {
    display: none !important;
  }

  #catList {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding: 1px 2px 3px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  #catList::-webkit-scrollbar {
    display: none !important;
  }

  .cat-btn {
    width: auto !important;
    flex: 0 0 auto !important;
    height: 34px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #f5f9ff !important;
    border: 1px solid #dceaff !important;
    font-size: 12px !important;
    text-align: center !important;
  }

  .cat-btn.active {
    background: #2f80ff !important;
    border-color: #2f80ff !important;
    color: #fff !important;
  }

  .content-panel {
    padding: 12px !important;
    border-radius: 22px !important;
  }

  .section-title {
    align-items: flex-start !important;
    margin-bottom: 10px !important;
  }

  .section-title h2 {
    font-size: 19px !important;
  }

  .section-title p {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  .section-title b {
    font-size: 11px !important;
    padding: 6px 8px !important;
  }

  .search-row {
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
  }

  .search-row input {
    height: 40px !important;
    border-radius: 14px !important;
    font-size: 13px !important;
    padding: 0 12px !important;
  }

  .search-row button {
    height: 40px !important;
    border-radius: 14px !important;
    padding: 0 13px !important;
    font-size: 13px !important;
  }

  .grouped-catalog,
  .map-module {
    gap: 10px !important;
  }

  .map-module {
    padding: 11px !important;
    border-radius: 20px !important;
  }

  .module-head {
    margin-bottom: 8px !important;
  }

  .module-head h3 {
    font-size: 16px !important;
  }

  .module-head p,
  .module-head span {
    font-size: 11px !important;
  }

  .module-grid {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .map-card {
    min-height: 112px !important;
    padding: 12px !important;
    border-radius: 18px !important;
  }

  .map-card h3 {
    font-size: 16px !important;
    line-height: 1.25 !important;
    margin-bottom: 5px !important;
  }

  .map-card p {
    font-size: 12px !important;
    line-height: 1.45 !important;
    -webkit-line-clamp: 2 !important;
  }

  .card-top,
  .card-foot {
    gap: 6px !important;
  }

  .tag,
  .card-foot span,
  .view-map-btn {
    height: 24px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }

  .show-more {
    height: 34px !important;
    border-radius: 13px !important;
    font-size: 12px !important;
  }

  /* 详情页移动端：隐藏侧栏，大画布优先。 */
  .detail-layout {
    display: block !important;
  }

  .detail-card {
    padding: 12px !important;
    border-radius: 22px !important;
  }

  .detail-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    align-items: start !important;
  }

  .detail-head h1 {
    font-size: 22px !important;
    line-height: 1.18 !important;
    margin: 0 0 6px !important;
  }

  .detail-head p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .meta {
    gap: 5px !important;
    margin-bottom: 4px !important;
  }

  .meta span {
    padding: 4px 7px !important;
    font-size: 10px !important;
  }

  .fullscreen-btn {
    height: 31px !important;
    padding: 0 9px !important;
    font-size: 12px !important;
    border-radius: 999px !important;
  }

  .detail-side {
    display: none !important;
  }

  .map-canvas {
    height: calc(100dvh - 210px) !important;
    min-height: 520px !important;
    margin-top: 12px !important;
    margin-bottom: 74px !important;
    border-radius: 22px !important;
    touch-action: none !important;
  }

  .canvas-layer {
    width: 980px !important;
    height: 1280px !important;
    transform-origin: center center !important;
  }

  .xmind-lines.interactive-lines,
  .xmind-lines {
    width: 2100px !important;
    height: 1800px !important;
    overflow: visible !important;
  }

  .xnode.mind-center {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    padding: 12px 10px !important;
    border-radius: 16px !important;
  }

  .xnode.mind-primary,
  .xnode.mind-primary.wide {
    width: min(78vw, 300px) !important;
    min-width: 0 !important;
    max-width: min(78vw, 300px) !important;
    font-size: 13px !important;
    line-height: 1.32 !important;
    padding: 11px 12px !important;
    border-radius: 16px !important;
  }

  .xnode.mind-child,
  .xnode.mind-child.wide {
    width: min(70vw, 260px) !important;
    min-width: 0 !important;
    max-width: min(70vw, 260px) !important;
    font-size: 12px !important;
    line-height: 1.32 !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
  }

  .xnode.mind-primary .xnode-title {
    gap: 6px !important;
    align-items: flex-start !important;
  }

  .xnode.mind-primary .step-badge {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .xnode.mind-primary .step-title,
  .xnode.mind-primary .node-title,
  .xnode.mind-primary.wide .step-title,
  .xnode.mind-primary.wide .node-title {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  .xnode.mind-primary.linked.expandable {
    padding-right: 12px !important;
    padding-bottom: 38px !important;
  }

  .node-enter-link {
    left: 10px !important;
    right: auto !important;
    top: auto !important;
    bottom: 7px !important;
    height: 24px !important;
    min-width: 62px !important;
    padding: 0 8px !important;
    transform: none !important;
    font-size: 10px !important;
  }

  .node-toggle-btn {
    height: 18px !important;
    min-height: 18px !important;
    padding: 0 6px !important;
    font-size: 10px !important;
  }

  .canvas-tools {
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    transform: none !important;
    gap: 4px !important;
    padding: 5px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(10px) !important;
  }

  .canvas-tools button {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    font-size: 15px !important;
  }

  .canvas-tools .zoom-text {
    min-width: 42px !important;
    font-size: 11px !important;
  }

  .canvas-tools .map-tool-text {
    display: none !important;
  }

  .map-canvas.fullscreen {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    border-radius: 0 !important;
    z-index: 2147480000 !important;
  }

  .map-canvas.fullscreen .canvas-tools {
    top: calc(10px + env(safe-area-inset-top)) !important;
    right: 10px !important;
    left: auto !important;
    transform: none !important;
  }

  body.mindmap-fullscreen-open .mobile-bottom-nav,
  body.mindmap-fullscreen-open .site-icp-footer {
    display: none !important;
  }

  .mobile-bottom-nav {
    z-index: 120 !important;
  }

  .locked-mask {
    font-size: 13px !important;
    border-radius: 16px !important;
    padding: 12px !important;
  }
}

/* XLS_V501_TOGGLE_CSS_START */
/* V5.0.1：移动端展开按钮和整张节点卡片必须可点击 */
.node-toggle-btn {
  pointer-events: auto !important;
  touch-action: manipulation !important;
  cursor: pointer !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

.mind-node.expandable,
.xnode.expandable {
  touch-action: manipulation !important;
  cursor: pointer !important;
}

.node-enter-link {
  pointer-events: auto !important;
  touch-action: manipulation !important;
}

.canvas-tools,
.canvas-tools button {
  touch-action: manipulation !important;
}
/* XLS_V501_TOGGLE_CSS_END */

/* V5.0.6 移动端：时态语态保持 PDF 式长图，不改成卡片/列表/折叠阅读 */
@media (max-width:760px){
  .map-canvas.pdf-style-map-canvas,
  .map-canvas.tense-voice-pdf-canvas{
    background:#fff !important;
    background-image:none !important;
    height:calc(100dvh - 205px) !important;
    min-height:540px !important;
    touch-action:none !important;
  }

  .canvas-layer.pdf-style-map-layer,
  .canvas-layer.tense-voice-pdf-layer{
    width:2921px !important;
    height:4965px !important;
    max-width:none !important;
    transform-origin:0 0 !important;
    border-radius:12px !important;
  }

  .tense-voice-pdf-stage,
  .tense-voice-pdf-image{
    width:2921px !important;
    height:4965px !important;
    max-width:none !important;
  }

  .map-canvas.fullscreen.pdf-style-map-canvas{
    height:100dvh !important;
    min-height:100dvh !important;
  }
}


/* XLS_TENSE_VOICE_V510_NO_JITTER_CSS_START */
/* V5.0.10：时态语态 PDF 模式只由 zsb-mindmaps-detail-v500.js 控制 transform，关闭旧动画和旧尺寸干扰 */
body.tense-voice-integrated-pdf-mode .map-canvas,
.map-canvas.pdf-style-map-canvas,
.map-canvas.tense-voice-pdf-canvas {
  touch-action: none !important;
  overscroll-behavior: contain !important;
  background: #ffffff !important;
  overflow: hidden !important;
}
body.tense-voice-integrated-pdf-mode .canvas-layer,
body.tense-voice-integrated-pdf-mode .canvas-layer.pdf-style-map-layer,
body.tense-voice-integrated-pdf-mode .canvas-layer.tense-voice-pdf-layer,
.canvas-layer.pdf-style-map-layer,
.canvas-layer.tense-voice-pdf-layer {
  left: 0 !important;
  top: 0 !important;
  width: var(--tense-voice-map-w, 2921px) !important;
  height: var(--tense-voice-map-h, 4965px) !important;
  max-width: none !important;
  transform-origin: 0 0 !important;
  transition: none !important;
  animation: none !important;
  will-change: transform !important;
}
body.tense-voice-integrated-pdf-mode .tense-voice-pdf-stage,
body.tense-voice-integrated-pdf-mode .tense-voice-pdf-image,
body.tense-voice-integrated-pdf-mode .tense-voice-pdf-map {
  width: var(--tense-voice-map-w, 2921px) !important;
  height: auto !important;
  max-width: none !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  -webkit-user-drag: none !important;
  pointer-events: none !important;
}
@media (max-width: 760px) {
  body.tense-voice-integrated-pdf-mode .detail-side { display: none !important; }
  body.tense-voice-integrated-pdf-mode .map-canvas,
  .map-canvas.pdf-style-map-canvas,
  .map-canvas.tense-voice-pdf-canvas {
    height: calc(100dvh - 220px) !important;
    min-height: 560px !important;
    margin-bottom: 76px !important;
    border-radius: 22px !important;
  }
  body.tense-voice-integrated-pdf-mode .canvas-tools {
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    transform: none !important;
    padding: 5px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.94) !important;
    backdrop-filter: blur(10px) !important;
    z-index: 90 !important;
  }
  body.tense-voice-integrated-pdf-mode .canvas-tools button {
    width: 30px !important;
    height: 30px !important;
    font-size: 15px !important;
    touch-action: manipulation !important;
  }
  body.tense-voice-integrated-pdf-mode .map-canvas.fullscreen {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    border-radius: 0 !important;
    z-index: 2147480000 !important;
  }
  body.tense-voice-integrated-pdf-mode.mindmap-fullscreen-open .mobile-bottom-nav,
  body.tense-voice-integrated-pdf-mode.mindmap-fullscreen-open .site-icp-footer { display: none !important; }
}
/* XLS_TENSE_VOICE_V510_NO_JITTER_CSS_END */

/* XLS_TENSE_VOICE_STANDALONE_PDF_VIEWER_V511_CSS_START */
/* V5.0.11：时态语态独立 PDF 图片查看器，完全脱离通用 #canvasLayer mindmap transform */
body.tense-voice-standalone-pdf-mode {
  overflow-x: hidden !important;
}
body.tense-voice-standalone-pdf-mode .detail-side {
  display: none !important;
}
body.tense-voice-standalone-pdf-mode .pdf-viewer-shell {
  background: #ffffff !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  touch-action: none !important;
  overscroll-behavior: contain !important;
  min-height: 560px !important;
  height: min(680px, calc(var(--app-vh, 1vh) * 100 - 180px)) !important;
  margin-bottom: 76px !important;
  box-shadow: inset 0 0 0 1px rgba(30, 64, 175, .08) !important;
}
body.tense-voice-standalone-pdf-mode .pdf-viewer {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  background: #ffffff !important;
  touch-action: none !important;
  overscroll-behavior: contain !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
body.tense-voice-standalone-pdf-mode .pdf-toolbar {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 10px 8px !important;
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(148,163,184,.28) !important;
  position: relative !important;
  z-index: 5 !important;
  touch-action: manipulation !important;
}
body.tense-voice-standalone-pdf-mode .pdf-btn {
  appearance: none !important;
  border: 1px solid rgba(59,130,246,.18) !important;
  background: #f8fbff !important;
  color: #1d4ed8 !important;
  border-radius: 999px !important;
  min-width: 36px !important;
  height: 32px !important;
  padding: 0 10px !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  touch-action: manipulation !important;
}
body.tense-voice-standalone-pdf-mode .pdf-percent {
  min-width: 48px !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  color: #334155 !important;
}
body.tense-voice-standalone-pdf-mode .pdf-viewport {
  flex: 1 1 auto !important;
  position: relative !important;
  overflow: hidden !important;
  background: #ffffff !important;
  touch-action: none !important;
  overscroll-behavior: contain !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  cursor: grab !important;
}
body.tense-voice-standalone-pdf-mode .pdf-viewport:active {
  cursor: grabbing !important;
}
body.tense-voice-standalone-pdf-mode .pdf-image {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 2921px;
  max-width: none !important;
  height: auto !important;
  transform-origin: 0 0 !important;
  transition: none !important;
  animation: none !important;
  will-change: transform !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  -webkit-user-drag: none !important;
  pointer-events: none !important;
}
body.tense-voice-standalone-pdf-mode .canvas-layer,
body.tense-voice-standalone-pdf-mode .canvas-tools,
body.tense-voice-standalone-pdf-mode .node-info-panel {
  display: none !important;
}
body.tense-voice-standalone-pdf-mode .pdf-viewer-shell.fullscreen,
body.tense-voice-standalone-pdf-mode .pdf-viewer-shell:fullscreen {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  border-radius: 0 !important;
  z-index: 2147480000 !important;
  margin: 0 !important;
}
body.tense-voice-standalone-pdf-mode.mindmap-fullscreen-open .mobile-bottom-nav,
body.tense-voice-standalone-pdf-mode.mindmap-fullscreen-open .site-icp-footer {
  display: none !important;
}
@media (min-width: 761px) {
  body.tense-voice-standalone-pdf-mode .pdf-viewer-shell {
    height: min(760px, calc(100vh - 260px)) !important;
    min-height: 640px !important;
    margin-bottom: 0 !important;
  }
}
/* XLS_TENSE_VOICE_STANDALONE_PDF_VIEWER_V511_CSS_END */
body.tense-voice-standalone-pdf-mode #fullBtn { display: none !important; }


/* XLS_SUBJECT_VERB_AGREEMENT_VIEWER_V526_START */
.subject-verb-glossary-panel-v526 {
  margin-top: 18px;
  padding: 22px;
  border: 1px solid rgba(59,130,246,.16);
  border-radius: 22px;
  background: linear-gradient(145deg,#fff,#f8fbff);
  box-shadow: 0 14px 36px rgba(30,64,175,.08);
}
.subject-verb-glossary-head-v526 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 15px;
}
.subject-verb-glossary-head-v526 span {
  display: inline-flex;
  margin-bottom: 7px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #16845b;
  font-size: 12px;
  font-weight: 900;
}
.subject-verb-glossary-head-v526 h2 {
  margin: 0;
  color: #123f77;
  font-size: 21px;
  line-height: 1.35;
}
.subject-verb-glossary-head-v526 p {
  margin: 7px 0 0;
  color: #6b7f99;
  font-size: 13px;
  line-height: 1.7;
}
.subject-verb-glossary-toggle-all-v526 {
  flex: 0 0 auto;
  border: 1px solid #c9ddff;
  border-radius: 999px;
  background: #fff;
  color: #176ee8;
  min-height: 34px;
  padding: 0 14px;
  font-weight: 900;
  cursor: pointer;
}
.subject-verb-branch-chips-v526 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
.subject-verb-branch-chips-v526 span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 11px;
  border: 1px solid #e0ebfb;
  border-radius: 999px;
  background: #fff;
  color: #385879;
  font-size: 12px;
  font-weight: 800;
}
.subject-verb-branch-chips-v526 b {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #edf5ff;
  color: #176ee8;
  font-size: 11px;
}
.subject-verb-glossary-group-v526 {
  margin-top: 10px;
  border: 1px solid #e0ebfb;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
}
.subject-verb-glossary-group-v526 summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  padding: 13px 15px;
  color: #123f77;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
}
.subject-verb-glossary-group-v526 summary::-webkit-details-marker { display: none; }
.subject-verb-glossary-group-v526 summary::before {
  content: '＋';
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  margin-right: 2px;
  border-radius: 50%;
  background: #edf5ff;
  color: #176ee8;
}
.subject-verb-glossary-group-v526[open] summary::before { content: '−'; }
.subject-verb-glossary-group-v526 summary span {
  margin-left: auto;
  color: #8a9ab1;
  font-size: 11px;
  font-weight: 700;
}
.subject-verb-glossary-group-v526.orange summary::before { background: #fff3e8; color: #df7416; }
.subject-verb-glossary-grid-v526 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  padding: 0 13px 13px;
}
.subject-verb-glossary-row-v526 {
  display: grid;
  grid-template-columns: minmax(130px,.9fr) minmax(0,1fr);
  gap: 10px;
  align-items: center;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 11px;
  background: #f8fbff;
}
.subject-verb-glossary-row-v526 code {
  color: #174f93;
  font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size: 12px;
  font-weight: 800;
  white-space: normal;
}
.subject-verb-glossary-row-v526 span {
  color: #4f6784;
  font-size: 13px;
  line-height: 1.45;
}
/* XLS_SUBJECT_VERB_AGREEMENT_VIEWER_V526_END */

@media (max-width: 760px) {
  .subject-verb-glossary-panel-v526 { margin-top: 12px; padding: 15px; border-radius: 18px; }
  .subject-verb-glossary-head-v526 { display: block; }
  .subject-verb-glossary-head-v526 h2 { font-size: 18px; }
  .subject-verb-glossary-toggle-all-v526 { margin-top: 11px; }
  .subject-verb-glossary-grid-v526 { grid-template-columns: 1fr; }
  .subject-verb-glossary-row-v526 { grid-template-columns: minmax(120px,.9fr) minmax(0,1fr); }
  .subject-verb-branch-chips-v526 { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; scrollbar-width: none; }
  .subject-verb-branch-chips-v526::-webkit-scrollbar { display: none; }
  .subject-verb-branch-chips-v526 span { flex: 0 0 auto; }
}

/* XLS_V527_STANDARD_DETAIL_LAYOUT_CSS_START */
/*
 * V5.0.27: tense-voice and subject-verb-agreement retain their independent
 * image viewers, but use the same outer detail layout as the standard
 * writing-sentence-10-steps page.
 */
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-layout {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 290px !important;
  gap: 16px !important;
  align-items: start !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-side {
  display: grid !important;
  position: sticky !important;
  top: 14px !important;
  gap: 14px !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 #fullBtn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewer-shell {
  position: relative !important;
  width: 100% !important;
  min-height: 72vh !important;
  height: 72vh !important;
  max-height: none !important;
  margin-top: 18px !important;
  margin-bottom: 0 !important;
  border: 1px solid #dceaff !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 20px 20px,rgba(47,128,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,#fff,#f8fbff) !important;
  background-size: 22px 22px,auto !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.86),0 18px 55px rgba(47,128,255,.10) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewer {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-toolbar {
  position: absolute !important;
  right: 18px !important;
  top: 16px !important;
  left: auto !important;
  z-index: 60 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: auto !important;
  height: auto !important;
  padding: 7px !important;
  border: 1px solid #dceaff !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 12px 30px rgba(47,128,255,.16) !important;
  backdrop-filter: blur(10px) !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn {
  display: grid !important;
  place-items: center !important;
  width: auto !important;
  min-width: 36px !important;
  height: 36px !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #f1f7ff !important;
  color: #1f63d8 !important;
  font-size: 13px !important;
  font-weight: 1000 !important;
  cursor: pointer !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn.pdf-zoom-in,
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn.pdf-zoom-out {
  width: 36px !important;
  padding: 0 !important;
  font-size: 18px !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn:hover {
  color: #fff !important;
  background: #2f80ff !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-percent {
  min-width: 58px !important;
  color: #234767 !important;
  font-size: 14px !important;
  font-weight: 1000 !important;
  text-align: center !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewport {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  background: transparent !important;
  cursor: grab !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewport:active {
  cursor: grabbing !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .subject-verb-glossary-panel-v526 {
  margin-top: 18px !important;
}
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewer-shell.fullscreen,
body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewer-shell:fullscreen {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  z-index: 2147480000 !important;
}
@media (max-width:980px) {
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-layout {
    grid-template-columns: 1fr !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-side {
    position: static !important;
  }
}
@media (max-width:760px) {
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-layout {
    display: block !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .detail-side {
    display: none !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-viewer-shell {
    width: 100% !important;
    height: min(680px,calc(var(--app-vh,1vh) * 100 - 210px)) !important;
    min-height: 520px !important;
    margin-top: 12px !important;
    margin-bottom: 74px !important;
    border-radius: 22px !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-toolbar {
    left: 50% !important;
    right: auto !important;
    top: 12px !important;
    transform: translateX(-50%) !important;
    gap: 5px !important;
    max-width: calc(100% - 20px) !important;
    padding: 6px !important;
    white-space: nowrap !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn {
    min-width: 32px !important;
    height: 32px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn.pdf-zoom-in,
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-btn.pdf-zoom-out {
    width: 32px !important;
    min-width: 32px !important;
    font-size: 16px !important;
  }
  body.tense-voice-standalone-pdf-mode.xls-standard-detail-layout-v527 .pdf-percent {
    min-width: 46px !important;
    font-size: 12px !important;
  }
}
/* XLS_V527_STANDARD_DETAIL_LAYOUT_CSS_END */

/* XLS_V531_MINDMAP_TOOLBAR_CENTER_START */
/* V5.0.31: Center the complete toolbar on every mindmap detail page. */
.map-canvas > .canvas-tools,
.map-canvas .canvas-tools {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: max-content !important;
  max-width: calc(100% - 28px) !important;
  min-width: 0 !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

.map-canvas > .canvas-tools::-webkit-scrollbar,
.map-canvas .canvas-tools::-webkit-scrollbar {
  display: none !important;
}

.map-canvas.fullscreen > .canvas-tools,
.map-canvas.fullscreen .canvas-tools {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
}

/* Standalone image viewers such as tense-voice and subject-verb-agreement. */
.pdf-viewer-shell .pdf-toolbar,
.tense-voice-standalone-pdf-viewer .pdf-toolbar,
body.tense-voice-standalone-pdf-mode .pdf-toolbar,
body.xls-standard-detail-layout-v527 .pdf-toolbar {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: max-content !important;
  max-width: calc(100% - 28px) !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

.pdf-viewer-shell .pdf-toolbar::-webkit-scrollbar,
.tense-voice-standalone-pdf-viewer .pdf-toolbar::-webkit-scrollbar,
body.tense-voice-standalone-pdf-mode .pdf-toolbar::-webkit-scrollbar {
  display: none !important;
}

@media (max-width: 760px) {
  .map-canvas > .canvas-tools,
  .map-canvas .canvas-tools,
  .map-canvas.fullscreen > .canvas-tools,
  .map-canvas.fullscreen .canvas-tools,
  .pdf-viewer-shell .pdf-toolbar,
  .tense-voice-standalone-pdf-viewer .pdf-toolbar,
  body.tense-voice-standalone-pdf-mode .pdf-toolbar,
  body.xls-standard-detail-layout-v527 .pdf-toolbar {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    max-width: calc(100% - 20px) !important;
  }
}
/* XLS_V531_MINDMAP_TOOLBAR_CENTER_END */

