.lab-hero{grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);align-items:end}
.lab-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}.lab-hero-actions a{color:var(--accent);text-decoration:none;font-size:13px}.lab-hero-actions .lab-primary{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;border-radius:11px;background:var(--accent);color:var(--btn-ink);font-weight:700}
.lab-scope{padding:18px;border-radius:var(--r);align-self:stretch}.lab-scope>p{margin:0 0 12px}.lab-scope dl{display:grid;gap:12px;margin:0}.lab-scope dl div{padding-top:10px;border-top:1px solid var(--stroke)}.lab-scope dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.lab-scope dd{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:var(--ink-2)}
.lab-module{padding:clamp(18px,3vw,28px);border-radius:var(--r);margin-top:var(--sp-4);border:1px solid var(--stroke)}
.lab-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.lab-title-row h2{margin:2px 0 0}.lab-context{max-width:36ch;text-align:right;font-size:12px;line-height:1.4;color:var(--ink-3);margin:4px 0 0}
.lab-toolbar,.story-controls{display:flex;align-items:flex-end;gap:10px 14px;flex-wrap:wrap;margin:18px 0 12px}.lab-toolbar{justify-content:space-between}.lab-seg{display:inline-flex;align-items:center;border:1px solid var(--stroke);border-radius:11px;padding:3px;background:var(--glass-2)}.lab-seg button{font:inherit;font-size:12px;color:var(--ink-3);background:transparent;border:0;border-radius:8px;min-height:34px;padding:6px 11px;cursor:pointer}.lab-seg button:hover{color:var(--ink)}.lab-seg button.is-on{background:var(--accent-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}.lab-seg button:focus-visible,.lab-chips button:focus-visible,.story-pagination button:focus-visible,.active-topic button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.lab-search,.story-controls label{display:grid;gap:5px;font-size:11px;color:var(--ink-3)}.lab-search{grid-template-columns:auto minmax(200px,300px);align-items:center}.lab-search input,.story-controls input,.story-controls select{font:inherit;font-size:13px;color:var(--ink);background:var(--glass-2);border:1px solid var(--stroke);border-radius:9px;min-height:38px;padding:7px 10px}.lab-search input:focus-visible,.story-controls input:focus-visible,.story-controls select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.lab-chips,.compare-topics{display:flex;gap:7px;flex-wrap:wrap}.lab-chips{margin:8px 0 14px}.lab-chips button,.compare-topics button{font:inherit;font-size:11.5px;color:var(--ink-3);background:var(--glass-2);border:1px solid var(--stroke);border-radius:20px;min-height:34px;padding:6px 11px;cursor:pointer}.lab-chips button[aria-pressed=true]{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}
.heat-legend{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:0 0 8px;color:var(--ink-3);font-size:10.5px}.heat-legend i{display:block;width:120px;height:8px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),var(--accent))}.heat-legend b{margin-left:5px;color:var(--ink-2);font-weight:600}
.heat-scroll,.compare-canvas-wrap{overflow-x:auto;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.heat-scroll canvas{display:block;min-width:820px}.compare-canvas-wrap{margin-top:12px}.compare-canvas-wrap canvas{display:block;width:100%;min-width:640px;height:auto}.lab-help,.heat-status,.story-result-meta{font-size:12px;color:var(--ink-3);line-height:1.45}.heat-status{min-height:1.5em;color:var(--ink-2)}
.heat-scroll canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.lab-data-table{margin-top:10px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.lab-data-table>summary{padding:10px 12px;color:var(--ink-2);font-size:11.5px;font-weight:650;cursor:pointer}.heat-table-wrap{max-height:440px;overflow:auto;border-top:1px solid var(--stroke)}.heat-table-wrap table{border-collapse:collapse;width:100%;min-width:820px;font-size:11px}.heat-table-wrap th,.heat-table-wrap td{padding:7px 9px;border-right:1px solid var(--stroke-2);border-bottom:1px solid var(--stroke-2);text-align:right;white-space:nowrap}.heat-table-wrap th:first-child,.heat-table-wrap td:first-child{text-align:left;position:sticky;left:0;background:var(--bg);z-index:1}.heat-table-wrap thead th{position:sticky;top:0;background:var(--bg);z-index:2;color:var(--ink-3)}.heat-table-wrap thead th:first-child{z-index:3}
.compare-topics{min-height:38px;margin-top:12px}.compare-topics button{display:inline-flex;align-items:center;gap:7px;color:var(--ink-2)}.compare-topics button::after{content:"×";color:var(--ink-3)}.compare-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.compare-card{padding:12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.compare-card b{display:block}.compare-card span{font-size:11.5px;color:var(--ink-3);line-height:1.45}.compare-empty{grid-column:1/-1;color:var(--ink-3);font-size:13px}
.active-topic{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 0;padding:10px 12px;border:1px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-soft);font-size:12.5px}.active-topic button{font:inherit;font-size:11px;border:0;background:transparent;color:var(--ink-2);cursor:pointer;text-decoration:underline}
.story-controls>div{display:grid;gap:5px}.control-label{font-size:11px;color:var(--ink-3)}.story-table-wrap{overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.story-table{border-collapse:collapse;width:100%;min-width:790px;font-size:12px}.story-table th,.story-table td{padding:10px 11px;text-align:left;border-bottom:1px solid var(--stroke);vertical-align:top}.story-table th{position:sticky;top:0;background:var(--bg);z-index:1;color:var(--ink-3);font-size:11px}.story-table tbody tr:last-child td{border-bottom:0}.story-open{font:inherit;font-size:12.5px;text-align:left;color:var(--ink);font-weight:650;border:0;background:transparent;padding:0;cursor:pointer}.story-open:hover{text-decoration:underline;color:var(--accent)}.story-open:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.story-sub{display:block;margin-top:3px;color:var(--ink-3);font-size:10.5px}.velocity-value{font-variant-numeric:tabular-nums;font-weight:700}.velocity-pct{display:inline-block;margin-top:3px;color:var(--ink-3);font-size:10.5px}.story-empty{padding:22px;color:var(--ink-3)}
.story-primary-controls{margin-bottom:8px}.story-more{margin:0 0 8px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.story-more>summary{padding:10px 12px;color:var(--ink-2);font-size:11.5px;font-weight:650;cursor:pointer}.story-more .story-controls{padding:0 12px 12px;margin:0}.lab-active-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-height:30px;margin:8px 0}.lab-active-filters .filter-empty,.lab-active-filters .filter-label{font-size:11px;color:var(--ink-3)}.lab-active-filters button{font:inherit;font-size:10.5px;min-height:30px;padding:4px 9px;border:1px solid var(--accent);border-radius:999px;background:var(--accent-soft);color:var(--ink-2);cursor:pointer}.lab-active-filters button.clear-all{border-color:var(--stroke);background:transparent}.lab-active-filters button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.story-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px}.story-pagination button{font:inherit;font-size:12px;min-height:36px;padding:6px 12px;border:1px solid var(--stroke);border-radius:9px;background:var(--glass-2);color:var(--ink-2);cursor:pointer}.story-pagination button:disabled{opacity:.4;cursor:default}.story-pagination span{font-size:11px;color:var(--ink-3)}
.story-drawer{width:min(920px,calc(100dvi - 24px));max-height:min(88dvh,900px);padding:0;border:1px solid var(--stroke);border-radius:var(--r);background:var(--bg);color:var(--ink);box-shadow:0 28px 80px rgba(0,0,0,.45);overflow:auto}.story-drawer::backdrop{background:rgba(7,8,11,.68);backdrop-filter:blur(4px)}.drawer-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--stroke);background:var(--bg)}.drawer-head h2{margin:2px 0 0}.drawer-head button{font:inherit;font-size:24px;line-height:1;width:38px;height:38px;border:1px solid var(--stroke);border-radius:10px;background:var(--glass-2);color:var(--ink-2);cursor:pointer}.drawer-head button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#drawer-content{padding:20px}.drawer-story-title{font-size:19px;line-height:1.3;margin:0}.drawer-story-title a{color:var(--ink);text-decoration:none}.drawer-story-title a:hover{color:var(--accent)}.drawer-meta{font-size:11.5px;color:var(--ink-3);margin:6px 0 0}.drawer-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px;margin:16px 0}.drawer-metric{padding:10px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.drawer-metric b{display:block;font-variant-numeric:tabular-nums}.drawer-metric span{display:block;margin-top:3px;font-size:10.5px;line-height:1.35;color:var(--ink-3)}.drawer-chart{overflow-x:auto;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.drawer-chart canvas{display:block;min-width:700px}.drawer-note{font-size:12px;line-height:1.5;color:var(--ink-3)}.drawer-links{display:flex;gap:12px;flex-wrap:wrap}.drawer-links a{color:var(--accent);font-size:12.5px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width:780px){.lab-hero{grid-template-columns:1fr}.lab-title-row{display:block}.lab-context{text-align:left;margin-top:6px}.lab-search{grid-template-columns:1fr;width:100%}.lab-search input{width:100%}.heat-legend{justify-content:flex-start;flex-wrap:wrap}.heat-legend b{width:100%;margin-left:0}.compare-summary{grid-template-columns:1fr}.drawer-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.story-controls{align-items:stretch}.story-controls>label{flex:1 1 140px}}
@media (max-width:480px){.drawer-metrics{grid-template-columns:1fr}.lab-module{padding:15px}.lab-seg{max-width:100%;overflow-x:auto}.lab-active-filters{align-items:flex-start}}
@media (prefers-reduced-motion:reduce){.story-drawer::backdrop{backdrop-filter:none}}

/* Keep the chapter rail in document flow. The global primary-nav rule is sticky,
   so this explicit reset prevents the secondary rail from occupying the same top layer. */
.lab-index{position:relative;top:auto;z-index:auto}

/* Community Dynamics, domain intelligence, and linked story comparison. */
.discussion-surfaces{margin:0 0 12px;padding:15px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:linear-gradient(115deg,var(--series-4-soft),var(--glass-2))}.discussion-surfaces-head{display:flex;align-items:end;justify-content:space-between;gap:14px}.discussion-surfaces-head h3{margin:2px 0 0}.discussion-surfaces-head>p{max-width:52ch;margin:0;color:var(--ink-3);font-size:10.5px;line-height:1.4;text-align:right}.discussion-surface-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.discussion-surface{padding:11px;border:1px solid var(--stroke-2);border-radius:9px;background:var(--glass)}.discussion-surface h4{margin:0;font-size:12px}.discussion-surface>p{margin:3px 0 9px;color:var(--ink-3);font-size:9.5px}.discussion-surface dl{display:grid;grid-template-columns:1fr auto;gap:5px 8px;margin:0;padding-top:8px;border-top:1px solid var(--stroke-2);font-size:9.5px}.discussion-surface dt{color:var(--ink-3)}.discussion-surface dd{margin:0;color:var(--ink-2);font-weight:700;font-variant-numeric:tabular-nums}
.community-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.community-metric{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.community-metric b{font-size:clamp(17px,2vw,23px);font-variant-numeric:tabular-nums}.community-metric span{font-size:11.5px;font-weight:650}.community-metric small{color:var(--ink-3);line-height:1.35}
.community-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.community-grid>article{min-width:0;padding:15px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.community-grid h3{margin:0}.community-bars{display:grid;gap:11px;margin-top:14px}.community-bar{display:grid;gap:4px}.community-bar-head{display:flex;justify-content:space-between;gap:10px;font-size:11.5px}.community-bar-head span{color:var(--ink-2);font-variant-numeric:tabular-nums}.community-bar-track{height:7px;overflow:hidden;border-radius:999px;background:var(--glass)}.community-bar-track i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.community-bar small{color:var(--ink-3);line-height:1.35}
.domain-layout{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:12px;margin-top:16px}.domain-list{max-height:560px;overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.domain-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;width:100%;padding:11px 12px;border:0;border-bottom:1px solid var(--stroke);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.domain-list button:last-child{border-bottom:0}.domain-list button:hover,.domain-list button[aria-pressed=true]{background:var(--accent-soft)}.domain-list button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.domain-list span{font-size:11px;color:var(--ink-2);font-variant-numeric:tabular-nums}.domain-list small{grid-column:1/-1;color:var(--ink-3)}.domain-detail{padding:18px}.domain-detail h3{margin:2px 0 14px;font-size:clamp(20px,3vw,32px)}.domain-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.domain-years{display:flex;align-items:flex-end;gap:3px;height:170px;margin:20px 0 28px;padding-top:15px;border-bottom:1px solid var(--stroke)}.domain-years span{position:relative;flex:1;min-width:3px;background:var(--accent);border-radius:2px 2px 0 0}.domain-years span i{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);color:var(--ink-3);font-style:normal;font-size:8px}.domain-years span:not(:nth-child(3n+1)) i{display:none}
.domain-link-stories,.story-compare button,.story-compare-toggle,.drawer-links button{font:inherit;font-size:11.5px;min-height:34px;padding:6px 10px;border:1px solid var(--stroke);border-radius:8px;background:var(--glass-2);color:var(--ink-2);cursor:pointer}.domain-link-stories:hover,.story-compare button:hover,.story-compare-toggle:hover,.drawer-links button:hover{border-color:var(--accent);color:var(--ink)}
.story-pattern{display:inline-flex;padding:4px 7px;border:1px solid var(--stroke);border-radius:999px;background:var(--glass-2);font-size:10.5px;white-space:nowrap}.pattern-fast-breakout,.pattern-debate-heavy{border-color:var(--accent);background:var(--accent-soft)}.story-compare-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.story-compare{margin-top:18px;padding-top:18px;border-top:1px solid var(--stroke)}.story-compare h3{margin:2px 0 0}.story-compare-chips{display:flex;gap:7px;flex-wrap:wrap;min-height:36px;margin:12px 0}.story-compare-chips button{max-width:min(100%,420px);white-space:normal;text-align:left;line-height:1.35;border-radius:14px}.story-compare-results{overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.story-compare-table{min-width:920px}.drawer-pattern{padding:9px 11px;border-left:3px solid var(--accent);background:var(--accent-soft);font-size:11.5px;line-height:1.45;color:var(--ink-2)}
@media (max-width:780px){.community-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.community-grid,.domain-layout{grid-template-columns:1fr}.domain-list{max-height:340px}.domain-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.domain-metrics{grid-template-columns:1fr}.community-summary{grid-template-columns:1fr 1fr}.community-metric{padding:9px}.domain-years{height:130px}.story-compare-chips button{width:100%}}

/* Color carries stable analytical identity while shape, text, and pattern preserve accessibility. */
.community-grid article:nth-child(1) .community-bar-track i{background:var(--accent)}
.community-grid article:nth-child(2) .community-bar-track i{background:var(--series-2)}
.community-grid article:nth-child(3) .community-bar-track i{background:var(--series-3)}
.community-grid article:nth-child(4) .community-bar-track i{background:var(--series-5)}
.community-grid article:nth-child(2){border-top:2px solid var(--series-2)}.community-grid article:nth-child(3){border-top:2px solid var(--series-3)}.community-grid article:nth-child(4){border-top:2px solid var(--series-5)}
.domain-years span{background:linear-gradient(180deg,var(--series-4),var(--accent))}
.domain-year-details{margin:0 0 14px}.domain-year-details summary{cursor:pointer;color:var(--ink-2);font-size:var(--fs-meta);font-weight:650}.domain-year-scroll{max-height:300px;margin-top:9px;overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.domain-year-table{width:100%;border-collapse:collapse;font-size:var(--fs-caveat);font-variant-numeric:tabular-nums}.domain-year-table th,.domain-year-table td{padding:7px 9px;border-bottom:1px solid var(--stroke-2);text-align:right}.domain-year-table th:first-child{text-align:left}.domain-year-table thead th{position:sticky;top:0;background:var(--bg);color:var(--ink-3);font-weight:650}.domain-year-table tr:last-child th,.domain-year-table tr:last-child td{border-bottom:0}
.pattern-method{margin:12px 0 15px;padding:11px 13px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2);color:var(--ink-3);font-size:var(--fs-caveat)}.pattern-method summary{cursor:pointer;color:var(--ink-2);font-weight:650}.pattern-method p{margin:9px 0 5px}.pattern-method ol{display:grid;gap:5px;margin:8px 0 0;padding-left:21px}.pattern-method b{color:var(--ink-2)}
.pattern-fast-breakout{border-color:var(--accent);background:var(--accent-soft)}.pattern-debate-heavy{border-color:var(--series-4);background:var(--series-4-soft)}.pattern-long-burn{border-color:var(--series-2);background:var(--series-2-soft)}.pattern-brief-visibility{border-color:var(--series-5);background:var(--series-5-soft)}

/* Evidence layer: dense, module-specific coverage without a second dashboard shell. */
.evidence-module{background:linear-gradient(135deg,var(--accent-soft),var(--glass) 42%,var(--series-3-soft))}.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.evidence-card{display:grid;align-content:start;gap:5px;min-width:0;padding:13px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.evidence-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.evidence-card h3{margin:0;font-size:12px}.evidence-card .evidence-state{flex:0 0 auto;padding:3px 6px;border:1px solid var(--stroke);border-radius:999px;color:var(--ink-3);font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.04em}.evidence-card b{font-size:clamp(17px,2.1vw,24px);line-height:1.15}.evidence-card p{margin:0;color:var(--ink-3);font-size:11px;line-height:1.4}.blind-spots{margin-top:12px;padding:11px 13px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.blind-spots summary{cursor:pointer;color:var(--ink-2);font-size:12px;font-weight:650}.blind-spots ul{display:grid;gap:5px;margin:10px 0 0;padding-left:19px;color:var(--ink-3);font-size:11.5px;line-height:1.4}

.semantic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.semantic-card{display:grid;align-content:start;gap:6px;min-width:0;padding:13px;border:1px solid var(--stroke);border-top:2px solid var(--series-3);border-radius:var(--r-sm);background:var(--glass-2)}.semantic-card h3{margin:0;font-size:13px;line-height:1.3;overflow-wrap:anywhere}.semantic-card>p{margin:0;color:var(--ink-3);font-size:10.5px}.semantic-card ol{display:grid;gap:5px;margin:2px 0 0;padding-left:17px;color:var(--ink-2);font-size:11px;line-height:1.35}.semantic-card li{overflow-wrap:anywhere}

.conversation-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px;margin-top:16px}.conversation-layout>article{min-width:0;padding:15px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.conversation-layout h3{margin:0}.thread-evolution{display:grid;gap:6px;margin-top:14px}.thread-year{display:grid;grid-template-columns:42px minmax(0,1fr) 104px;gap:8px;align-items:center;font-size:10.5px}.thread-year>span:first-child{color:var(--ink-3);font-variant-numeric:tabular-nums}.thread-stack{display:flex;height:9px;overflow:hidden;border-radius:999px;background:var(--glass)}.thread-stack i{display:block;height:100%;background:var(--accent)}.thread-stack i+ i{background:var(--series-3)}.thread-year small{text-align:right;color:var(--ink-3);font-variant-numeric:tabular-nums}.theme-list{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.theme-list button{font:inherit;font-size:10.5px;min-height:31px;padding:5px 8px;border:1px solid var(--stroke);border-radius:999px;background:var(--glass);color:var(--ink-3);cursor:pointer}.theme-list button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.theme-detail{display:grid;gap:9px;padding:12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass)}.theme-detail h4{margin:0}.theme-spark{display:flex;align-items:flex-end;gap:2px;height:96px;padding-top:8px;border-bottom:1px solid var(--stroke)}.theme-spark span{position:relative;flex:1;min-width:2px;height:var(--share);border-radius:2px 2px 0 0;background:linear-gradient(180deg,var(--series-4),var(--accent))}.theme-spark span i{position:absolute;left:50%;bottom:-17px;transform:translateX(-50%);color:var(--ink-3);font-size:8px;font-style:normal}.theme-spark span:not(:first-child):not(:last-child):not(:nth-child(5n+1)) i{display:none}.theme-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}.theme-summary div{display:grid;gap:2px}.theme-summary b{font-size:16px}.theme-summary span{color:var(--ink-3);font-size:9.5px}

.surface-gates{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.surface-gate{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.surface-gate.is-reached{border-color:var(--accent)}.surface-gate b{font-size:11.5px}.surface-gate span{color:var(--ink-3);font-size:10px}.surface-table-wrap{overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.surface-table{width:100%;min-width:780px;border-collapse:collapse;font-size:11.5px}.surface-table th,.surface-table td{padding:10px;border-bottom:1px solid var(--stroke);text-align:right;font-variant-numeric:tabular-nums}.surface-table th:first-child,.surface-table td:first-child{text-align:left}.surface-table thead th{background:var(--glass-2);color:var(--ink-3);font-size:10px}.surface-table tbody tr:last-child td{border-bottom:0}.surface-table small{display:block;color:var(--ink-3);font-size:9.5px}

.lifecycle-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:15px 0}.lifecycle-card{display:grid;gap:4px;min-width:0;padding:11px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.lifecycle-card b{font-size:clamp(17px,2vw,23px);font-variant-numeric:tabular-nums}.lifecycle-card span{font-size:10.5px;font-weight:650;line-height:1.3}.lifecycle-card small{color:var(--ink-3);font-size:9.5px;line-height:1.35}.lifecycle-funnel{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.lifecycle-stage{position:relative;display:grid;gap:2px;padding:9px 11px;background:var(--accent-soft);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%,10px 50%)}.lifecycle-stage:first-child{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%)}.lifecycle-stage b{font-size:16px}.lifecycle-stage span{color:var(--ink-3);font-size:9.5px}.lifecycle-details{margin:0 0 12px;padding:10px 12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.lifecycle-details summary{cursor:pointer;color:var(--ink-2);font-size:11.5px;font-weight:650}.lifecycle-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.lifecycle-group{min-width:0}.lifecycle-group h4{margin:0 0 7px}.lifecycle-group table{width:100%;border-collapse:collapse;font-size:10.5px}.lifecycle-group th,.lifecycle-group td{padding:6px;border-bottom:1px solid var(--stroke);text-align:right}.lifecycle-group th:first-child,.lifecycle-group td:first-child{text-align:left}

@media(max-width:900px){.evidence-grid,.semantic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.conversation-layout{grid-template-columns:1fr}.lifecycle-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.lifecycle-groups{grid-template-columns:1fr}}
@media(max-width:560px){.evidence-grid,.semantic-grid{grid-template-columns:1fr}.lifecycle-funnel{grid-template-columns:1fr}.lifecycle-stage,.lifecycle-stage:first-child{clip-path:none;border-radius:8px}.thread-year{grid-template-columns:36px minmax(0,1fr)}.thread-year small{grid-column:2;text-align:left}.theme-summary{grid-template-columns:1fr 1fr 1fr}}

/* Publication hierarchy and section wayfinding. */
.lab-index{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;margin:var(--sp-4) 0 0;padding:4px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass)}.lab-index a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:7px 9px;border-radius:9px;color:var(--ink-2);font-size:11px;font-weight:650;text-decoration:none;white-space:nowrap}.lab-index a:hover,.lab-index a:focus-visible{background:var(--glass-hi);color:var(--ink)}.lab-index a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.lab-index span{color:var(--accent);font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace}.lab-module{position:relative;overflow:hidden;scroll-margin-top:84px}.lab-module::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--module-accent,var(--accent));opacity:.9}.lab-module[data-tone="scope"]{--module-accent:var(--series-5)}.lab-module[data-tone="attention"]{--module-accent:var(--accent)}.lab-module[data-tone="sources"]{--module-accent:var(--series-3)}.lab-module[data-tone="community"]{--module-accent:var(--series-4)}.lab-module[data-tone="careers"]{--module-accent:var(--series-2)}.lab-module[data-tone="lifecycles"]{--module-accent:var(--series-5)}.lab-module>.desc{max-width:86ch;margin-top:9px}.lab-title-row h2{font-size:clamp(21px,3vw,34px);letter-spacing:-.025em}.evidence-card{transition:border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}.evidence-card:hover{border-color:var(--module-accent,var(--accent));background:var(--glass-hi)}.evidence-card:nth-child(3n+2){border-top:2px solid var(--series-3)}.evidence-card:nth-child(3n){border-top:2px solid var(--series-4)}.semantic-card:nth-child(3n+2){border-top-color:var(--series-4)}.semantic-card:nth-child(3n){border-top-color:var(--series-2)}

/* Linked-source framing: compact bars plus exact aggregate tables. */
.evidence-boundary{display:grid;grid-template-columns:minmax(170px,.38fr) minmax(0,1.62fr);gap:10px 18px;align-items:start;margin:14px 0;padding:13px 15px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass);box-shadow:inset 3px 0 0 var(--ink-3)}.evidence-boundary--compact{grid-template-columns:1fr;gap:7px;margin:11px 0 13px}.boundary-heading{display:grid;gap:3px}.boundary-heading strong{font-size:12px;line-height:1.35}.boundary-kicker{color:var(--ink-3);font-size:9px;font-weight:700;letter-spacing:.065em;text-transform:uppercase}.evidence-boundary p{margin:0;color:var(--ink-2);font-size:10.5px;line-height:1.5}.source-table caption{padding:9px 10px;border-bottom:1px solid var(--stroke-2);color:var(--ink-3);font-size:9.5px;line-height:1.4;text-align:left}
.source-summary,.jobs-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.source-grid>article,.jobs-layout>article{min-width:0;padding:15px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.source-grid h3,.jobs-layout h3{margin:0}.source-grid-lower{margin-top:11px}.evidence-bars{display:grid;gap:10px;margin-top:13px}.evidence-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 9px;align-items:end}.evidence-bar b{font-size:11px}.evidence-bar>span{color:var(--ink-3);font-size:10.5px;font-variant-numeric:tabular-nums}.evidence-bar-track{grid-column:1/-1;display:block;height:8px;overflow:hidden;border-radius:999px;background:var(--glass)}.evidence-bar-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--series-3),var(--accent))}.source-table-wrap{margin-top:12px;overflow:auto;border:1px solid var(--stroke);border-radius:var(--r-sm)}.source-table{width:100%;min-width:650px;border-collapse:collapse;font-size:10.5px}.source-table th,.source-table td{padding:8px;border-bottom:1px solid var(--stroke-2);text-align:right;font-variant-numeric:tabular-nums}.source-table th:first-child,.source-table td:first-child{text-align:left}.source-table thead th{background:var(--glass);color:var(--ink-3)}.source-table tbody tr:last-child td{border-bottom:0}.source-domains{display:grid;gap:7px;margin-top:12px}.source-domain{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:8px 9px;border:1px solid var(--stroke-2);border-radius:9px;background:var(--glass)}.source-domain b{font-size:11.5px;overflow-wrap:anywhere}.source-domain>span{color:var(--ink-2);font-size:10.5px;font-variant-numeric:tabular-nums}.source-domain small{grid-column:1/-1;color:var(--ink-3);font-size:9.5px}

/* Jobs intelligence: one selected corpus at a time, preserving provenance boundaries. */
.jobs-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0 0}.jobs-tabs button{min-height:38px;padding:7px 12px;border:1px solid var(--stroke);border-radius:999px;background:var(--glass-2);color:var(--ink-3);font:inherit;font-size:11.5px;font-weight:650;cursor:pointer}.jobs-tabs button[aria-pressed=true]{border-color:var(--series-2);background:var(--series-2-soft);color:var(--ink)}.jobs-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jobs-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:11px}.jobs-skills{display:grid;gap:9px;margin-top:13px}.job-skill{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 9px}.job-skill b{font-size:11px}.job-skill>span{color:var(--ink-2);font-size:10.5px;font-variant-numeric:tabular-nums}.job-skill small{grid-column:1/-1;color:var(--ink-3);font-size:9.5px}.job-skill-track{grid-column:1/-1;height:7px;overflow:hidden;border-radius:999px;background:var(--glass)}.job-skill-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--series-2),var(--series-4))}.jobs-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.jobs-trend-title{margin-top:18px!important}.jobs-trend{display:grid;grid-template-columns:repeat(auto-fit,minmax(10px,1fr));align-items:end;gap:3px;height:132px;margin-top:12px;padding-top:9px;border-bottom:1px solid var(--stroke)}.jobs-year{position:relative;display:flex;align-items:flex-end;height:100%}.jobs-year i{display:block;width:100%;height:var(--remote);min-height:2px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--series-2),var(--accent))}.jobs-year span{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);color:var(--ink-3);font-size:8px}.jobs-year:not(:first-child):not(:last-child):not(:nth-child(3n+1)) span{display:none}.jobs-definitions{margin-top:12px;padding:10px 12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.jobs-definitions summary{cursor:pointer;color:var(--ink-2);font-size:11.5px;font-weight:650}.jobs-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.jobs-definition-grid div{padding:8px;border:1px solid var(--stroke-2);border-radius:8px;background:var(--glass)}.jobs-definition-grid b{display:block;font-size:10.5px}.jobs-definition-grid span{display:block;margin-top:3px;color:var(--ink-3);font-size:9.5px;line-height:1.4;overflow-wrap:anywhere}

@media(max-width:860px){.lab-index{display:flex;overflow-x:auto;scrollbar-width:none}.lab-index::-webkit-scrollbar{display:none}.lab-index a{flex:0 0 auto;padding-inline:13px}.source-summary,.jobs-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.source-grid,.jobs-layout{grid-template-columns:1fr}}
@media(max-width:520px){.evidence-boundary{grid-template-columns:1fr;gap:7px;padding:12px}.source-summary,.jobs-summary{grid-template-columns:1fr 1fr}.source-grid>article,.jobs-layout>article{padding:12px}.jobs-definition-grid{grid-template-columns:1fr}.lab-module::before{width:2px}}

.jobs-signal-tabs{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.jobs-signal-tabs button{min-height:30px;padding:5px 8px;border:1px solid var(--stroke);border-radius:999px;background:transparent;color:var(--ink-3);font:inherit;font-size:9.5px;font-weight:650;cursor:pointer}.jobs-signal-tabs button[aria-pressed=true]{border-color:var(--series-2);background:var(--series-2-soft);color:var(--ink)}.jobs-signal-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jobs-trend-status{min-height:1.4em;margin:7px 0 0;color:var(--ink-3);font-size:9.5px;line-height:1.35}.jobs-year-details{margin-top:12px;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--glass-2)}.jobs-year-details>summary{padding:10px 12px;color:var(--ink-2);font-size:11.5px;font-weight:650;cursor:pointer}.jobs-year-scroll{overflow-x:auto;border-top:1px solid var(--stroke)}.jobs-year-table{width:100%;min-width:650px;border-collapse:collapse;font-size:10px;font-variant-numeric:tabular-nums}.jobs-year-table th,.jobs-year-table td{padding:7px 9px;border-bottom:1px solid var(--stroke-2);text-align:right}.jobs-year-table th:first-child,.jobs-year-table td:first-child{text-align:left}.jobs-year-table thead th{color:var(--ink-3);font-size:8.5px;letter-spacing:.04em;text-transform:uppercase}.jobs-year-table tbody tr:last-child>*{border-bottom:0}
@media(max-width:920px){.discussion-surface-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.discussion-surfaces-head{display:block}.discussion-surfaces-head>p{margin-top:6px;text-align:left}.discussion-surface-grid{grid-template-columns:1fr 1fr}}

/* Direct publisher-title comparisons and conservative jobs detail. */
.direct-title-panel{display:grid;grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(0,1fr));gap:14px;margin:0 0 11px;padding:16px;border:1px solid var(--series-3);border-radius:var(--r-sm);background:linear-gradient(115deg,var(--series-3-soft),var(--glass-2) 46%,var(--accent-soft))}.direct-title-panel h3,.direct-title-panel h4{margin:0}.direct-title-panel h4{font-size:11.5px}.direct-title-panel .evidence-bars{margin-top:8px}.direct-title-panel>.caveat{grid-column:1/-1;margin:0;padding-top:9px;border-top:1px solid var(--stroke)}.transformation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.transformation-card{display:grid;gap:2px;padding:8px;border:1px solid var(--stroke-2);border-radius:8px;background:var(--glass)}.transformation-card b{font-size:15px}.transformation-card span{color:var(--ink-3);font-size:9.5px;line-height:1.25}
.maturity-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:8px 0 2px;padding:4px 8px;border:1px solid var(--stroke-2);border-radius:999px;background:var(--glass);color:var(--ink-3);font-size:9.5px;font-weight:700;letter-spacing:.035em;line-height:1.25}.direct-title-panel.is-established{border-color:var(--series-3);background:linear-gradient(120deg,var(--series-3-soft),var(--glass) 48%,var(--accent-soft));box-shadow:0 14px 34px color-mix(in srgb,var(--series-3) 16%,transparent)}.direct-title-panel.is-established .maturity-badge{border-color:color-mix(in srgb,var(--series-3) 60%,var(--stroke));background:var(--series-3-soft);color:var(--ink)}
.maturity-progress{height:7px;margin-top:9px;overflow:hidden;border:1px solid var(--stroke-2);border-radius:999px;background:var(--glass)}.maturity-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--series-3),var(--accent));transition:width var(--motion-slow,500ms) var(--ease-standard,ease)}.maturity-progress-label{margin:4px 0 0;color:var(--ink-3);font-size:9px;font-variant-numeric:tabular-nums}.title-year-panel{grid-column:1/-1;min-width:0;padding-top:2px}.title-year-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:8px}.title-year-heading p{margin:3px 0 0}.title-year-heading>p{max-width:360px;color:var(--ink-3);font-size:9.5px;text-align:right}.publisher-year-table{max-width:100%;overflow-x:auto;border:1px solid var(--stroke-2);border-radius:9px;background:var(--glass)}.publisher-year-table table{width:100%;min-width:610px;border-collapse:collapse;font-size:10px;font-variant-numeric:tabular-nums}.publisher-year-table th,.publisher-year-table td{padding:7px 9px;border-bottom:1px solid var(--stroke-2);text-align:right;white-space:normal}.publisher-year-table th:first-child,.publisher-year-table td:first-child{text-align:left}.publisher-year-table thead th{color:var(--ink-3);font-size:8.5px;letter-spacing:.045em;text-transform:uppercase}.publisher-year-table tbody tr:last-child>*{border-bottom:0}.publisher-year-table tbody th{color:var(--ink-2)}.publisher-year-table td:nth-child(2){display:grid;grid-template-columns:34px minmax(90px,1fr);align-items:center;gap:7px}.year-pair-count{color:var(--ink-2)}.year-pair-track{display:block;height:6px;overflow:hidden;border-radius:999px;background:var(--glass-2)}.year-pair-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--series-3),var(--series-4))}
.jobs-geography{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:13px}.jobs-place{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 7px;padding:8px;border:1px solid var(--stroke-2);border-radius:8px;background:var(--glass)}.jobs-place b{font-size:10.5px}.jobs-place span{color:var(--ink-2);font-size:10px;font-variant-numeric:tabular-nums}.jobs-place small{grid-column:1/-1;color:var(--ink-3);font-size:9px}.jobs-comp-summary{margin-top:11px;color:var(--ink-3);font-size:10.5px;line-height:1.4}
@media(max-width:860px){.direct-title-panel{grid-template-columns:1fr 1fr}.direct-title-panel>div:first-child{grid-column:1/-1}}
@media(max-width:520px){.direct-title-panel{grid-template-columns:1fr}.direct-title-panel>div:first-child{grid-column:auto}.transformation-grid,.jobs-geography{grid-template-columns:1fr 1fr}.title-year-heading{display:block}.title-year-heading>p{margin-top:5px;text-align:left}}

/* Semantic color pass: color identifies selection, series, direction, or state.
   Card order and section placement no longer assign arbitrary hues. */
.lab-module::before{background:var(--stroke);opacity:.8}
.lab-module[data-tone]{--module-accent:var(--stroke)}
.discussion-surfaces,.evidence-module,.direct-title-panel{background:var(--glass-2)}
.evidence-card:nth-child(n),.semantic-card:nth-child(n),.community-grid article:nth-child(n){border-top-color:var(--stroke)}
.community-grid article:nth-child(n) .community-bar-track i,
.domain-years span,.theme-spark span,.evidence-bar-track i,.job-skill-track i,.jobs-year i,.year-pair-track i{
  background:var(--ink-2)
}
.community-bar:hover .community-bar-track i,.community-bar:focus-visible .community-bar-track i,
.evidence-bar:hover .evidence-bar-track i,.evidence-bar:focus-visible .evidence-bar-track i,
.job-skill:hover .job-skill-track i,.job-skill:focus-visible .job-skill-track i{background:var(--accent)}
.jobs-tabs button[aria-pressed=true],.jobs-signal-tabs button[aria-pressed=true]{
  border-color:var(--accent);background:var(--accent-soft)
}
.direct-title-panel.is-established{border-color:var(--accent);background:var(--glass-2);box-shadow:none}
.direct-title-panel.is-established .maturity-badge{border-color:var(--accent);background:var(--accent-soft)}
.maturity-progress i{background:var(--accent)}
.lifecycle-stage{background:var(--glass-hi)}
.lab-index span{color:var(--ink-3)}
.lab-index a:hover span,.lab-index a:focus-visible span{color:var(--accent)}
.jobs-year i{min-height:0}
.viz-scale-note{grid-column:1/-1;order:-1;margin:0 0 2px;color:var(--ink-3);font-size:9.5px;line-height:1.4}
.domain-years+.viz-scale-note{margin:-16px 0 14px}
.theme-detail>.viz-scale-note{order:initial;margin:0}

/* Attention Lab command bar: keep Pages in the open first-row space so the
   Explorer controls retain the full second row at phone widths. */
@media(max-width:760px){
  body[data-site="hacker-news"] .nav-explorer{grid-row:2;gap:3px;padding:2px 0 0}
  body[data-site="hacker-news"] .nav-with-explorer>.route-menu{grid-column:2;grid-row:1;align-self:start;justify-self:end;margin:2px 0 0;z-index:35}
}
@media(max-width:420px){
  body[data-site="hacker-news"] .explore-context-toggle[data-count]::after,body[data-site="hacker-news"] .explore-tools-toggle[data-count]::after{display:none}
  body[data-site="hacker-news"] :is(.explore-mode,.explore-tools-toggle,.explore-context-toggle,.route-menu>summary){min-height:40px;padding:5px 7px}
  body[data-site="hacker-news"] .route-menu-panel a{display:flex;align-items:center;min-height:44px}
  body[data-site="hacker-news"] :is(.brand a,.brand .brand-switch){min-height:40px}
}
