body { overflow: hidden; }
.kc-more { position:relative; flex:none; }
.kc-more > summary { list-style:none; cursor:pointer; border:1px solid var(--ir-line); color:var(--ir-ink); background:var(--ir-surface); border-radius:7px; padding:8px 12px; min-height:44px; box-sizing:border-box; font-size:14px; display:flex; align-items:center; }
.kc-more > summary::-webkit-details-marker { display:none; }
.kc-more[open] > summary { border-color:var(--ir-accent); }
.kc-more-menu { position:absolute; right:0; top:calc(100% + 6px); z-index:15000; min-width:180px; display:grid; gap:6px; padding:8px; background:var(--ir-surface); border:1px solid var(--ir-line); border-radius:10px; box-shadow:0 8px 24px #302c2225; }
#interview-reading-layout .kc-more-menu button { text-align:left; min-height:44px; }
.kc-card-more > summary { min-height:36px; padding:5px 10px; }
.kc-toolbar { position:relative; z-index:30; }
#interview-reading-layout .kc-system-overview { position:absolute; inset:0; z-index:5; padding:clamp(16px,3vw,44px); overflow:auto; overscroll-behavior:contain; box-sizing:border-box; cursor:default; background:var(--ir-sidebar); container-type:inline-size; touch-action:pan-y; }
#interview-reading-layout .kc-system-overview[hidden] { display:none; }
.kc-semantic-overview .kc-map-world,.kc-semantic-overview .kc-map-footer { visibility:hidden; }
.kc-system-overview header h2 { font-size:24px; margin:0 0 8px; }
.kc-system-overview p { font-size:16px; line-height:1.8; color:var(--ir-muted); margin:8px 0 16px; }
.kc-system-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; padding:0; margin:30px 0 0; gap:24px; }
.kc-system-flow > li { position:relative; padding:18px 16px; border-top:3px solid var(--ir-accent); border-radius:18px 18px 8px 8px; background:var(--ir-surface); }
.kc-system-flow > li:not(:last-child)::after { content:'→'; position:absolute; right:-22px; top:22px; color:var(--ir-accent); font-size:20px; }
.kc-stage-number { color:var(--ir-accent); font-size:14px; }
.kc-system-flow h3 { font-size:19px; margin:7px 0; }
.kc-system-flow li > div { display:grid; gap:8px; }
#interview-reading-layout .kc-system-overview button { display:block; width:100%; min-height:44px; padding:10px 12px; border:1px solid var(--ir-line); border-radius:20px; color:var(--ir-accent); background:var(--ir-paper); font-size:14px; line-height:1.6; text-align:left; }
#interview-reading-layout .kc-system-overview button:hover { border-color:var(--ir-accent); }
.kc-system-overview .kc-system-loop { border-bottom:2px dashed var(--ir-line); border-left:2px dashed var(--ir-line); border-radius:0 0 0 16px; padding:12px 18px; margin:0 12px 24px; }
.kc-system-support { border-top:1px solid var(--ir-line); padding-top:16px; }
.kc-system-support h3 { font-size:16px; margin:0 0 14px; }
.kc-system-support > div { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.kc-system-support article { padding:0 12px; }
@container (max-width:850px) {
 .kc-system-flow { grid-template-columns:1fr; gap:22px; margin-top:20px; }
 .kc-system-flow > li { border-top:0; border-left:3px solid var(--ir-accent); border-radius:8px 18px 18px 8px; }
 .kc-system-flow > li:not(:last-child)::after { content:'↓'; right:auto; left:24px; top:auto; bottom:-25px; }
 .kc-system-flow li > div { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
 .kc-system-support > div { grid-template-columns:1fr; gap:8px; }
}
.kc-stage { display:flex; flex:1; min-height:0; position:relative; }
#interview-reading-layout .kc-reader { flex:none; width:min(420px,44vw); min-width:300px; background:var(--ir-paper); border-left:1px solid var(--ir-line); display:flex; flex-direction:column; min-height:0; z-index:20; }
#interview-reading-layout .kc-reader[hidden] { display:none; }
#interview-reading-layout .kc-reader.is-compare { width:min(900px,70vw); }
.kc-reader-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; border-bottom:1px solid var(--ir-line); }
.kc-reader-head strong { display:block; font-size:14px; }
.kc-reader-head span { display:block; color:var(--ir-muted); font-size:12px; margin-top:3px; }
.kc-reader-head button { border:1px solid var(--ir-line); border-radius:7px; min-height:40px; padding:8px 12px; background:var(--ir-surface); color:var(--ir-ink); }
#kc-reader-body { display:flex; flex:1; min-height:0; gap:10px; padding:10px; overflow:hidden; }
#interview-reading-layout .kc-reader .kc-card { position:relative; top:auto!important; left:auto!important; width:0; flex:1; height:auto!important; min-width:0; box-shadow:none; }
#interview-reading-layout .kc-reader .kc-card-head { cursor:default; padding:12px 14px 8px; }
#interview-reading-layout .kc-reader .kc-card-head h2 { font-size:19px; }
#interview-reading-layout .kc-reader .kc-card-tools { padding:0 12px 10px; justify-content:flex-start; gap:5px; }
#interview-reading-layout .kc-reader [data-read] { display:none; }
#interview-reading-layout .kc-reader .kc-card-scroll { padding:14px 16px 24px; }
#interview-reading-layout .kc-reader .kc-card-scroll p, #interview-reading-layout .kc-reader .kc-card-scroll li { font-size:16px; }
#interview-reading-layout .kc-card.kc-parked { display:none; }
#interview-reading-layout .kc-crosslinks button { width:100%; text-align:left; border:1px solid var(--ir-line); background:var(--ir-paper); padding:10px 12px; border-radius:7px; margin:4px 0; color:var(--ir-ink); }
.kc-crosslinks strong,.kc-crosslinks span { display:block; }
#interview-reading-layout .kc-card-scroll details.kc-crosslinks { margin:0 0 16px; padding:0 0 10px; border-bottom:1px solid var(--ir-line); }
.kc-crosslinks > summary { cursor:pointer; font-size:14px; color:var(--ir-accent); line-height:1.8; }
.kc-crosslinks span { font-size:13px; line-height:1.7; margin-top:5px; color:var(--ir-muted); }
.kc-crosslinks small { display:block; color:var(--ir-accent); font-size:12px; margin-bottom:4px; }
#interview-reading-layout .kc-crosslinks button:hover { border-color:var(--ir-accent); }
#interview-reading-layout .kc-card-scroll .kc-canonical-note { font-size:14px; line-height:1.7; color:var(--ir-muted); padding:10px 12px; border-left:2px solid var(--ir-accent); background:var(--ir-paper); }
#interview-reading-layout .kc-topic-picker { position:absolute; z-index:1050; box-sizing:border-box; padding:12px; overflow:auto; overscroll-behavior:contain; border:1px solid var(--ir-accent); border-radius:12px; background:var(--ir-surface); box-shadow:0 10px 30px #302c2228; cursor:default; touch-action:pan-y; }
#interview-reading-layout .kc-topic-picker[hidden] { display:none; }
.kc-topic-picker header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.kc-topic-picker header > strong { font-size:16px; }
.kc-topic-picker header > button { flex:none; width:44px; height:44px; border:0; background:transparent; color:var(--ir-muted); font-size:24px; }
.kc-topic-picker p { margin:4px 0 12px; font-size:14px; line-height:1.7; color:var(--ir-muted); }
.kc-picker-list { display:grid; gap:7px; }
.kc-picker-list button { display:block; text-align:left; width:100%; min-height:48px; padding:10px 12px; border:1px solid var(--ir-line); border-radius:8px; background:var(--ir-paper); color:var(--ir-ink); font-size:15px; line-height:1.5; }
.kc-picker-list button:hover,.kc-picker-list button:focus-visible { border-color:var(--ir-accent); }
.kc-picker-list span { display:block; margin-top:4px; color:var(--ir-muted); font-size:12px; }
#interview-reading-layout .kc-node-located { outline:3px solid var(--ir-accent); outline-offset:5px; }
#kc-open-list { max-height:55dvh; overflow:auto; padding:12px 20px; }
.kc-open-row { display:flex; gap:10px; align-items:center; padding:8px 0; border-bottom:1px solid var(--ir-line); }
.kc-open-row input { width:22px; height:22px; accent-color:var(--ir-accent); }
.kc-open-row button:first-of-type { flex:1; text-align:left; }
.kc-open-row small { display:block; color:var(--ir-muted); margin-top:4px; }
.kc-open-dialog footer { padding:12px 20px; border-top:1px solid var(--ir-line); }
.kc-open-dialog button:disabled { opacity:.4; cursor:default; }
@media(max-width:900px) {
 .kc-stage.has-reader { flex-direction:column; }
 #interview-reading-layout .kc-reader, #interview-reading-layout .kc-reader.is-compare { width:100%; min-width:0; height:56%; border-left:0; border-top:1px solid var(--ir-line); }
 #interview-reading-layout .kc-reader .kc-card-head h2 { font-size:17px; }
 #interview-reading-layout .kc-reader .kc-card-tools { flex-wrap:wrap; }
 #interview-reading-layout .kc-reader.is-compare .kc-card-scroll { padding:10px; }
}
/* One world, eight chapter regions. Overview labels stay readable when zoomed out. */
#interview-reading-layout .ir-topic-switch button { flex:none; border:0; background:transparent; color:var(--ir-muted); padding:8px 10px; font-size:13px; white-space:nowrap; border-radius:6px; min-height:38px; }
#interview-reading-layout .ir-topic-switch button:hover, #interview-reading-layout .ir-topic-switch button.is-current { background:var(--ir-paper); color:var(--ir-accent); }
#interview-reading-layout .ir-topic-switch .kc-all-link { color:var(--ir-accent); font-weight:700; }
#interview-reading-layout .kc-region { position:absolute; border:2px dashed var(--ir-line); border-radius:40px; pointer-events:none; }
#interview-reading-layout .kc-region button { position:absolute; inset:18px 24px auto; height:112px; display:flex; align-items:flex-start; justify-content:center; flex-direction:column; gap:7px; padding:12px 20px; background:transparent; color:var(--ir-ink); border:0; text-align:left; pointer-events:auto; border-radius:24px; }
#interview-reading-layout .kc-region button:hover { background:color-mix(in srgb,var(--ir-accent) 6%,transparent); }
#interview-reading-layout .kc-region strong { font-size:34px; }
#interview-reading-layout .kc-region small, #interview-reading-layout .kc-region span { color:var(--ir-muted); font-size:18px; }
#interview-reading-layout .kc-overview .kc-region { background:color-mix(in srgb,var(--ir-paper) 90%,transparent); border-style:solid; border-width:6px; }
#interview-reading-layout .kc-overview .kc-region button { inset:0; height:100%; align-items:center; text-align:center; gap:35px; }
#interview-reading-layout .kc-overview .kc-region strong { font-size:var(--kc-overview-font); }
#interview-reading-layout .kc-overview .kc-region small { font-size:calc(var(--kc-overview-font) * .6); }
#interview-reading-layout .kc-overview .kc-region span { font-size:calc(var(--kc-overview-font) * .48); }
#interview-reading-layout .kc-overview #kc-nodes, #interview-reading-layout .kc-overview #kc-lines, #interview-reading-layout .kc-overview #kc-lanes { visibility:hidden; }
#interview-reading-layout .kc-unified .kc-map-help { display:none; }
#interview-reading-layout { max-width: none; height: 100dvh; font-size: 1rem; }
#interview-reading-layout .kc-window { height: 100%; min-height: 0; display: flex; flex-direction: column; }
#interview-reading-layout .ir-header { flex: none; position: static; }
#interview-reading-layout .kc-app { display: flex; flex-direction: column; flex: 1; min-height: 0; }
#interview-reading-layout button { font-family: inherit; cursor: pointer; }
#interview-reading-layout .kc-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding: 10px 24px; border-bottom: 1px solid var(--ir-line); background: var(--ir-paper); flex: none; }
#interview-reading-layout .kc-heading { display: flex; align-items: baseline; gap: 14px; }
#interview-reading-layout .kc-heading h1 { font-family: inherit; font-size: 1.125rem; margin: 0; }
#interview-reading-layout .kc-heading span { font-size: .875rem; color: var(--ir-muted); }
#interview-reading-layout .kc-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
#interview-reading-layout .kc-actions button, .kc-card-tools button { border: 1px solid var(--ir-line); color: var(--ir-ink); background: var(--ir-surface); border-radius: 7px; padding: 8px 12px; min-height: 44px; font-size: .875rem; }
#interview-reading-layout .kc-actions button:disabled { opacity: .45; cursor: default; }
#interview-reading-layout .kc-actions button:hover:not(:disabled) { border-color: var(--ir-accent); }
#interview-reading-layout .kc-actions output { min-width: 45px; text-align: center; color: var(--ir-muted); font-size: .8125rem; }
#interview-reading-layout .kc-workspace { position:relative; flex:1; min-height:0; overflow:hidden; touch-action:none; background-color:var(--ir-sidebar); background-image:radial-gradient(var(--ir-line) 1px,transparent 1px); background-size:20px 20px; cursor:grab; }
#interview-reading-layout .kc-workspace.is-dragging { cursor:grabbing; user-select:none; }
#interview-reading-layout .kc-map-world { position:absolute; left:0; top:0; width:0; height:0; transform-origin:0 0; }
#interview-reading-layout .kc-map-panel { position:absolute; left:0; top:0; width:800px; height:760px; }
#interview-reading-layout .kc-map-help { position:absolute; top:-26px; width:800px; display:flex; justify-content:center; gap:20px; white-space:nowrap; font-size:13px; color:var(--ir-muted); }
#interview-reading-layout #kc-edges { position: absolute; width: 800px; height: 760px; inset: 0; overflow: visible; pointer-events:none; }
#interview-reading-layout #kc-edges path { fill: none; stroke: var(--ir-accent); stroke-width: 1.6; }
#interview-reading-layout #kc-arrow path { fill: var(--ir-accent); stroke: none; }
#interview-reading-layout #kc-edges .kc-related-line { stroke: var(--ir-muted); stroke-dasharray: 4 4; opacity: .7; }
#interview-reading-layout #kc-edges .kc-return { stroke-dasharray: 4 4; }
#interview-reading-layout .kc-node { position: absolute; width: 150px; height: 76px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; padding: 6px; background: var(--ir-surface); border: 1.5px solid var(--ir-line); border-radius: 10px; color: var(--ir-ink); box-shadow: 0 2px 6px #302c2210; }
#interview-reading-layout .kc-node strong { color: var(--ir-ink); font-size: 21px; line-height: 1.35; }
#interview-reading-layout .kc-node span { font-size: 16px; line-height: 1.35; color: var(--ir-muted); }
#interview-reading-layout .kc-node:hover { border-color: var(--ir-accent); }
#interview-reading-layout .kc-node.is-open { border-color: var(--ir-accent); background: color-mix(in srgb,var(--ir-accent) 9%,var(--ir-surface)); }
#interview-reading-layout .kc-node.is-open strong { color: var(--ir-accent); }
#interview-reading-layout .kc-map-footer { position:absolute; left:12px; bottom:10px; margin:0; padding:7px 12px; border:1px solid var(--ir-line); border-radius:8px; background:var(--ir-paper); font-size:12px; color:var(--ir-muted); pointer-events:none; z-index:10000; }
#interview-reading-layout .kc-cards { position:absolute; left:0; top:0; width:0; height:0; }
#interview-reading-layout .kc-card { position:absolute; width:460px; height:620px; background:var(--ir-surface); border:1px solid var(--ir-line); border-top:3px solid var(--ir-accent); border-radius:12px; box-shadow:0 8px 28px #302c2220; display:flex; flex-direction:column; cursor:default; }
#interview-reading-layout .kc-card-head { cursor:grab; touch-action:none; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 15px 18px 10px; }
#interview-reading-layout .kc-card-head h2 { font-family: "Songti SC",SimSun,serif; font-size: 1.4rem; margin: 2px 0 0; }
#interview-reading-layout .kc-card-kicker { color: var(--ir-muted); font-size: .8125rem; }
#interview-reading-layout .kc-card-close { background: transparent; border: 0; font-size: 1.6rem; color: var(--ir-muted); width: 44px; height: 44px; flex: none; }
#interview-reading-layout .kc-card-tools { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 18px 10px; border-bottom: 1px solid var(--ir-line); }
#interview-reading-layout .kc-card-tools > span { color: var(--ir-muted); font-size: .875rem; }
#interview-reading-layout .kc-card-tools button { min-height: 36px; padding: 5px 10px; }
#interview-reading-layout .kc-card-scroll { flex: 1; min-height: 0; overflow-y: auto; touch-action:pan-y; overscroll-behavior: contain; padding: 18px 20px 24px; scrollbar-width: thin; }
#interview-reading-layout .kc-card-scroll section + section, #interview-reading-layout .kc-card-scroll details { margin-top: 23px; }
#interview-reading-layout .kc-card-scroll h3 { font-size: .9375rem; margin: 0 0 9px; color: var(--ir-accent); }
#interview-reading-layout .kc-card-scroll p { font-size: 1rem; line-height: 1.9; margin: 0 0 11px; }
#interview-reading-layout .kc-card-scroll li { font-size: 1rem; line-height: 1.85; margin-bottom: 9px; }
#interview-reading-layout .kc-card-scroll ul { margin: 0; padding-left: 20px; }
#interview-reading-layout .kc-definition { padding-bottom: 14px; border-bottom: 1px dashed var(--ir-line); }
#interview-reading-layout .kc-example, #interview-reading-layout .kc-pitfalls { background: var(--ir-paper); border-left: 2px solid var(--ir-accent); padding: 13px 14px 6px; }
#interview-reading-layout .kc-card-scroll summary { font-size: .875rem; color: var(--ir-accent); cursor: pointer; min-height: 36px; }
#interview-reading-layout .kc-optional summary span { color: var(--ir-muted); font-size: .75rem; margin-left: 10px; }
#interview-reading-layout .kc-optional > div { padding-top: 10px; }
#interview-reading-layout .kc-connections button { display: block; width: 100%; text-align: left; background: var(--ir-paper); border: 1px solid var(--ir-line); border-radius: 7px; padding: 10px 12px; margin: 8px 0; }
#interview-reading-layout .kc-connections strong { display: block; font-size: .9375rem; color: var(--ir-accent); }
#interview-reading-layout .kc-connections span { display: block; font-size: .875rem; color: var(--ir-muted); line-height: 1.7; margin-top: 3px; }
#interview-reading-layout .kc-references a { display: block; font-size: .875rem; margin: 8px 0; }
#interview-reading-layout .kc-code pre { font: .8125rem/1.7 var(--ir-mono); background: var(--ir-paper); padding: 12px; overflow-x: auto; border: 1px solid var(--ir-line); border-radius: 6px; }
#interview-reading-layout .kc-memory-cover { font-size: 1rem; color: var(--ir-muted); line-height: 1.9; padding: 20px 0; }
#interview-reading-layout .kc-status { height: 1px; position: absolute; width: 1px; overflow: hidden; clip-path: inset(50%); }
.kc-source-dialog { width: min(850px,calc(100vw - 40px)); max-height: 85dvh; padding: 0; border: 1px solid var(--ir-line); border-radius: 12px; color: var(--ir-ink); background: var(--ir-surface); font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif; }
.kc-source-dialog::backdrop { background: #0006; }
.kc-source-dialog > header { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 18px 22px; border-bottom: 1px solid var(--ir-line); }
.kc-source-dialog h2 { margin: 0; font-size: 1.25rem; }
.kc-source-dialog p { font-size: .875rem; line-height: 1.8; color: var(--ir-muted); }
.kc-source-dialog button { cursor: pointer; font: inherit; padding: 8px 12px; min-height: 40px; background: var(--ir-paper); border: 1px solid var(--ir-line); border-radius: 6px; color: var(--ir-accent); }
.kc-source-scroll { max-height: 65dvh; overflow: auto; padding: 14px 22px 22px; }
.kc-source-dialog table { border-collapse: collapse; font-size: .875rem; width: 100%; }
.kc-source-dialog th, .kc-source-dialog td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--ir-line); line-height: 1.7; }
.kc-source-dialog td:first-child { white-space: nowrap; }
.kc-nojs { padding: 20px; }
@media(max-width:760px) {
  #interview-reading-layout .kc-toolbar { padding: 8px 14px; }
  #interview-reading-layout .kc-heading h1 { font-size: 1rem; }
  #interview-reading-layout .kc-heading span { display: none; }
  #interview-reading-layout .kc-actions { gap: 4px; }
  #interview-reading-layout .kc-actions button { padding: 6px 8px; }
  #interview-reading-layout .kc-map-help { gap: 10px; font-size: .75rem; }
}
@media(max-width:600px) {
  #interview-reading-layout .ir-header { padding: 9px 12px; gap: 8px; min-height: 0; }
  #interview-reading-layout .ir-topic-switch { width: 100%; flex-wrap: nowrap; overflow-x: auto; }
  #interview-reading-layout .ir-topic-switch a { flex: none; }
  #interview-reading-layout .kc-toolbar { gap: 4px; }
  #interview-reading-layout .kc-actions output { display: none; }
  #interview-reading-layout .kc-card-head { padding: 10px 14px 5px; }
  #interview-reading-layout .kc-card-head h2 { font-size: 1.2rem; }
  #interview-reading-layout .kc-card-kicker { display: none; }
  #interview-reading-layout .kc-card-scroll { padding: 14px; }
}
@media print { body{overflow:visible} #interview-reading-layout,#interview-reading-layout .kc-window{height:auto} #interview-reading-layout .kc-toolbar,#interview-reading-layout .ir-header,#interview-reading-layout .kc-map-panel,#interview-reading-layout .kc-map-footer{display:none} #interview-reading-layout .kc-workspace{overflow:visible} #interview-reading-layout .kc-map-world{position:static;transform:none!important;width:auto;height:auto} #interview-reading-layout .kc-cards{position:static;width:auto;height:auto} #interview-reading-layout .kc-card{position:static;width:100%;height:auto;margin-bottom:20px} #interview-reading-layout .kc-card-scroll{overflow:visible} }

/* A clear spine with lighter, staggered knowledge branches. */
#interview-reading-layout .kc-step { width:170px; height:82px; border-radius:20px; border-color:color-mix(in srgb,var(--ir-accent) 35%,var(--ir-line)); }
#interview-reading-layout .kc-branch { width:180px; height:66px; border-radius:34px; gap:3px; box-shadow:none; background:var(--ir-paper); border-style:dashed; }
#interview-reading-layout .kc-branch strong { font-size:19px; }
#interview-reading-layout .kc-branch span { font-size:14px; }
#interview-reading-layout .kc-specialty-matrix .kc-map-help { display:none; }
#interview-reading-layout .kc-topic-branch { width:140px; height:70px; border:1px solid color-mix(in srgb,var(--kc-topic-accent) 48%,var(--ir-line)); border-radius:13px; border-style:solid; gap:1px; padding:3px 6px; background:color-mix(in srgb,var(--kc-topic-accent) 9%,var(--ir-paper)); box-shadow:0 2px 8px color-mix(in srgb,var(--kc-topic-accent) 10%,transparent); }
#interview-reading-layout .kc-topic-branch .kc-node-art { width:18px; height:15px; margin-bottom:0; }
#interview-reading-layout .kc-topic-branch strong { color:var(--kc-topic-accent); font-size:13px; line-height:1.1; }
#interview-reading-layout .kc-topic-branch span { font-size:10px; line-height:1.1; }
#interview-reading-layout .kc-specialty-matrix .kc-step { border-radius:14px; border-color:color-mix(in srgb,var(--ir-accent) 42%,var(--ir-line)); }
#interview-reading-layout .kc-specialty-matrix .kc-topic-branch .kc-node-art { display:none; }
#interview-reading-layout .kc-decision { height:100px; border:0; background:transparent; box-shadow:none; isolation:isolate; }
#interview-reading-layout .kc-decision::before { content:""; position:absolute; inset:0; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); background:var(--ir-accent); z-index:-2; }
#interview-reading-layout .kc-decision::after { content:""; position:absolute; inset:2px; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); background:var(--ir-surface); z-index:-1; }
#interview-reading-layout .kc-decision strong { font-size:19px; }
#interview-reading-layout .kc-decision span { font-size:13px; }
#interview-reading-layout #kc-edges .kc-branch-line { stroke:var(--ir-muted); stroke-dasharray:3 6; opacity:.28; transition:opacity .15s; }
#interview-reading-layout #kc-edges .kc-branch-line.is-related { stroke:var(--ir-accent); stroke-width:2; opacity:.9; }
#interview-reading-layout #kc-edges .kc-return { opacity:.55; }
#interview-reading-layout .kc-line-label { fill:var(--ir-muted); font-size:12px; }

.kc-fullscreen-mode #interview-reading-layout .ir-header { display:none; }
.kc-fullscreen-mode #interview-reading-layout .kc-app { position:fixed; inset:0; z-index:10000; background:var(--ir-paper); height:100dvh; padding-top:env(safe-area-inset-top); padding-bottom:env(safe-area-inset-bottom); box-sizing:border-box; }
.kc-fullscreen-mode #kc-fullscreen { border-color:var(--ir-accent); color:var(--ir-accent); }

/* Knowledge groups, single-topic reading, and explicit semantic edges. */
#interview-reading-layout .kc-node small { font-size:12px; color:var(--ir-muted); line-height:1; }
#interview-reading-layout .kc-node.has-open-topics { box-shadow:0 0 0 3px color-mix(in srgb,var(--ir-accent) 20%,transparent); }
#interview-reading-layout #kc-lanes rect { fill:color-mix(in srgb,var(--ir-accent) 3%,transparent); stroke:var(--ir-line); stroke-dasharray:5 6; }
#interview-reading-layout #kc-lanes text { fill:var(--ir-muted); font-size:15px; }
#interview-reading-layout #kc-lanes .kc-lane rect { fill:color-mix(in srgb,var(--kc-topic-accent) 6%,var(--ir-paper)); stroke:color-mix(in srgb,var(--kc-topic-accent) 32%,var(--ir-line)); stroke-width:1.2px; stroke-dasharray:none; }
#interview-reading-layout #kc-lanes .kc-lane text { fill:var(--kc-topic-accent); font-size:13px; font-weight:700; }
#interview-reading-layout #kc-lanes .kc-lane-rag { --kc-topic-accent:#7384bd; }
#interview-reading-layout #kc-lanes .kc-lane-memory { --kc-topic-accent:#9a7bb5; }
#interview-reading-layout #kc-lanes .kc-lane-tools { --kc-topic-accent:#bf9341; }
#interview-reading-layout #kc-lanes .kc-lane-multi-agent { --kc-topic-accent:#69a68d; }
#interview-reading-layout #kc-lanes .kc-lane-prompt { --kc-topic-accent:#d9755d; }
#interview-reading-layout .kc-relation text { font-size:14px; fill:var(--ir-muted); paint-order:stroke; stroke:var(--ir-sidebar); stroke-width:5px; stroke-linejoin:round; }
#interview-reading-layout .kc-relation-label-bg { fill:var(--ir-paper); stroke:var(--ir-line); stroke-width:1px; opacity:.96; }
#interview-reading-layout .kc-relation-flow .kc-relation-label-bg { fill:var(--ir-surface); stroke:color-mix(in srgb,var(--ir-accent) 34%,var(--ir-line)); }
#interview-reading-layout .kc-relation-flow text { font-size:12px; }
#interview-reading-layout .kc-specialty-matrix .kc-relation-flow text { font-size:10px; }
#interview-reading-layout .kc-relation-association .kc-relation-label-bg { fill:var(--ir-surface); }
#interview-reading-layout #kc-edges .kc-relation-data path { stroke:var(--ir-accent); opacity:.7; }
#interview-reading-layout #kc-edges .kc-relation-feedback path { stroke-dasharray:7 5; opacity:.6; }
#interview-reading-layout #kc-edges .kc-relation-constraint path { stroke-dasharray:3 5; opacity:.55; }
#interview-reading-layout #kc-edges .kc-relation-association path { stroke:var(--ir-muted); opacity:.25; }
#interview-reading-layout .kc-relation-association text, #interview-reading-layout .kc-relation-constraint text { opacity:0; }
#interview-reading-layout .kc-relation-topic-rag path { stroke:#7384bd; opacity:.7; }
#interview-reading-layout .kc-relation-topic-memory path { stroke:#9a7bb5; opacity:.7; }
#interview-reading-layout .kc-relation-topic-tools path { stroke:#bf9341; opacity:.7; }
#interview-reading-layout .kc-relation-topic-multi-agent path { stroke:#69a68d; opacity:.7; }
#interview-reading-layout .kc-relation-topic-prompt path { stroke:#d9755d; opacity:.7; }
#interview-reading-layout .kc-relation[class*="kc-relation-topic-"] text { opacity:1; fill:var(--ir-ink); font-size:12px; }
#interview-reading-layout .kc-relation[class*="kc-relation-topic-"] .kc-relation-label-bg { stroke:var(--ir-line); }
#interview-reading-layout #kc-edges .kc-relation.is-related path { opacity:1; stroke-width:2.5; }
#interview-reading-layout .kc-relation.is-related text { opacity:1; fill:var(--ir-accent); }
#interview-reading-layout .kc-group-overview { margin:0 0 18px; font-size:16px; line-height:1.8; }
#interview-reading-layout .kc-topic-section { margin:18px 0; }
#interview-reading-layout .kc-topic-section > h3 { margin:0 0 9px; color:var(--ir-accent); font-size:15px; }
#interview-reading-layout .kc-topic-list { display:grid; gap:9px; }
#interview-reading-layout .kc-topic-choice { display:flex; justify-content:space-between; align-items:center; gap:10px; text-align:left; width:100%; min-height:49px; padding:11px 13px; background:var(--ir-paper); border:1px solid var(--ir-line); border-radius:8px; color:var(--ir-ink); font-size:15px; line-height:1.6; }
#interview-reading-layout .kc-topic-choice:hover { border-color:var(--ir-accent); }
#interview-reading-layout .kc-topic-choice span { flex:none; font-size:12px; color:var(--ir-muted); }

#interview-reading-layout .kc-core { border-left:3px solid var(--ir-accent); padding:0 0 0 14px; }
#interview-reading-layout .kc-core-lead { font-weight:650; }
#interview-reading-layout .kc-core ol { margin:14px 0; padding-left:22px; }
#interview-reading-layout .kc-core li > strong { display:block; margin-bottom:4px; }
#interview-reading-layout .kc-key-boundary { padding-top:12px; border-top:1px dashed var(--ir-line); }
#interview-reading-layout .kc-key-boundary > strong { font-size:14px; color:var(--ir-accent); }
#interview-reading-layout .kc-save-state { flex:none; font-size:12px; line-height:1.6; text-align:right; padding:3px 14px; color:var(--ir-muted); background:var(--ir-paper); }
#interview-reading-layout .kc-card-tools { flex-wrap:wrap; }
#interview-reading-layout .kc-card-tools > span { margin-right:auto; }
#interview-reading-layout .kc-detail { padding-top:12px; border-top:1px solid var(--ir-line); }
#interview-reading-layout .kc-card-arrived { outline:2px solid var(--ir-accent); }
@media(max-width:600px) {
 #interview-reading-layout .kc-map-footer { max-width:calc(100% - 28px); white-space:normal; line-height:1.5; }
 #interview-reading-layout .kc-save-state { font-size:11px; }
}

#interview-reading-layout .ir-header { display:flex; flex-wrap:nowrap; align-items:center; gap:14px; padding:9px 16px; min-height:0; }
#interview-reading-layout .ir-name { flex:none; font-size:14px; white-space:nowrap; }
#interview-reading-layout .ir-topic-switch { display:flex; flex:1; width:auto; min-width:0; flex-wrap:nowrap; overflow-x:auto; gap:3px; padding:4px; scrollbar-width:thin; }
#interview-reading-layout .ir-topic-switch a { flex:none; white-space:nowrap; font-size:13px; padding:8px 10px; }
#interview-reading-layout .ir-header-actions { flex:none; }
@media(max-width:600px){#interview-reading-layout .ir-name{display:none} #interview-reading-layout .ir-header{gap:6px;padding:6px 10px}}

/* Only the selected node reveals cross-chapter links, distinguished in blue. */
#interview-reading-layout { --kc-cross-ink:#286faa; }
html[data-theme="dark"] #interview-reading-layout { --kc-cross-ink:#80baff; }
#interview-reading-layout #kc-edges .kc-cross-relation { visibility:hidden; }
#interview-reading-layout #kc-edges .kc-cross-relation.is-related { visibility:visible; }
#interview-reading-layout #kc-edges .kc-cross-relation path { stroke:var(--kc-cross-ink); stroke-dasharray:8 7; stroke-width:1.8; opacity:.65; vector-effect:non-scaling-stroke; }
#interview-reading-layout #kc-edges .kc-cross-relation.is-related path { stroke:var(--kc-cross-ink); stroke-width:2.8; opacity:1; }
#interview-reading-layout #kc-edges .kc-cross-relation.is-related text { fill:var(--kc-cross-ink); }
#interview-reading-layout .kc-semantic-overview #kc-edges .kc-cross-relation { visibility:hidden; }
#interview-reading-layout .kc-unified .kc-map-footer { max-width:calc(100% - 24px); box-sizing:border-box; white-space:normal; line-height:1.5; }

/* Reading layout: keep the map usable while prioritising actual content. */
#interview-reading-layout .kc-reader,#interview-reading-layout .kc-reader.is-compare {width:var(--kc-reader-size,43%);min-width:260px;}
#kc-splitter {flex:0 0 10px;cursor:col-resize;touch-action:none;position:relative;background:var(--ir-paper);z-index:25;}
#kc-splitter::after {content:'';position:absolute;inset:40% 3px;border-radius:3px;background:var(--ir-muted);}
#kc-splitter:hover,#kc-splitter:focus-visible {background:var(--ir-line);outline:2px solid var(--ir-accent);outline-offset:-2px;}
#kc-splitter[hidden],#kc-recent[hidden] {display:none;}
#interview-reading-layout .kc-reader-head {padding:3px 10px;min-height:34px;}
#interview-reading-layout .kc-reader-head span {display:none;}
#interview-reading-layout .kc-reader-head button {min-height:30px;padding:3px 8px;font-size:12px;}
#kc-reader-body {padding:5px;gap:5px;}
#interview-reading-layout .kc-reader .kc-card-head {padding:7px 10px 3px;}
#interview-reading-layout .kc-reader .kc-card-kicker {display:none;}
#interview-reading-layout .kc-reader .kc-card-head h2 {font-size:18px;line-height:1.4;margin:0;}
#interview-reading-layout .kc-reader .kc-card-tools {padding:2px 10px 5px;gap:5px;font-size:12px;}
#interview-reading-layout .kc-reader .kc-card-tools>span {display:none;}
#interview-reading-layout .kc-reader .kc-card-tools button,#interview-reading-layout .kc-reader .kc-card-tools summary {min-height:30px;padding:4px 8px;font-size:12px;}
#interview-reading-layout .kc-reader .kc-card-scroll {padding:8px 12px 20px;}
#interview-reading-layout .kc-card-scroll details.kc-crosslinks {margin:0 0 6px;padding:0 0 3px;}
#interview-reading-layout .kc-crosslinks button.kc-related-compare {width:auto;padding:4px 9px;font-size:12px;margin:0 0 8px;}
.kc-node.is-selected {outline:3px solid var(--ir-accent);outline-offset:5px;box-shadow:0 0 0 9px color-mix(in srgb,var(--ir-accent) 12%,transparent);}
.kc-related-tip {z-index:1040;box-shadow:0 6px 25px #0002;}
#kc-recent {display:flex;align-items:center;gap:6px;padding:5px 12px;overflow-x:auto;flex:none;white-space:nowrap;background:var(--ir-paper);border-bottom:1px solid var(--ir-line);font-size:12px;}
#kc-recent button {max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--ir-line);border-radius:16px;background:var(--ir-surface);color:var(--ir-ink);padding:5px 10px;flex:none;}
@media(max-width:900px){
 #interview-reading-layout .kc-reader,#interview-reading-layout .kc-reader.is-compare {height:var(--kc-reader-size,66%);width:100%;min-width:0;}
 #kc-splitter {flex-basis:12px;cursor:row-resize;}
 #kc-splitter::after {inset:4px 43%;}
 #interview-reading-layout .kc-reader .kc-card-head h2 {font-size:17px;}
}

.ir-topic-switch span{padding:8px 12px;font-size:14px}.kc-explain-section{margin:22px 0!important}.kc-explain-section p{line-height:1.95!important}.kc-explain-intro{margin-bottom:22px!important}.kc-topic-picker .kc-topic-choice span{white-space:normal;line-height:1.6}.kc-card-content details>section{margin:18px 0}.kc-card-content .kc-key-boundary h3{margin-top:0}

.kc-group-guide{font-size:14px!important;margin-top:12px!important}.kc-picker-list button span{white-space:normal;line-height:1.65}.kc-explain-section h3{line-height:1.7}
