.archive-hero{ padding:56px 0 24px }
.archive-hero .eyebrow-line{
font-family:var(--mono);
font-size:11.5px;
letter-spacing:.14em;
text-transform:uppercase;
color: var(--fg-mute);
margin-bottom:12px;
}
.archive-hero h1{
font-family:var(--display);
font-weight:600;
font-size:clamp(38px, 6vw, 60px);
line-height:1.06;
letter-spacing:-.01em;
margin:0 0 18px;
}
.archive-hero h1 .muted{ color: var(--fg-mute) }
.archive-hero p{
max-width:780px;
color: var(--fg);
font-size:16px;
line-height:1.65;
margin:0 0 10px;
}
.back-link{ color: var(--fg-mute); text-decoration: none; }
.back-link:hover{ color: var(--fg); text-decoration: underline; }
.review-page{ padding: 24px 16px 80px; }
.review-grid{
display:grid;
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
gap: 18px;
margin-top: 16px;
}
.review-card{
position: relative;
display: block;
padding: 22px 22px 60px;
border: 1px solid var(--border);
border-radius: 14px;
background: var(--card-bg);
color: var(--fg);
text-decoration: none;
transition: transform .08s ease, border-color .12s ease, background .12s ease;
min-height: 200px;
}
.review-card:hover{
transform: translateY(-2px);
border-color: var(--accent);
background: var(--card-bg-hover, var(--card-bg));
}
.review-card-count{
font-family: var(--mono);
font-size: 11.5px;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--fg-mute);
margin-bottom: 10px;
}
.review-card-title{
font-family: var(--display);
font-weight: 600;
font-size: 22px;
line-height: 1.2;
letter-spacing: -.005em;
margin: 0 0 10px;
}
.review-card-blurb{
color: var(--fg);
font-size: 14.5px;
line-height: 1.55;
margin: 0;
}
.review-card-arrow{
position: absolute;
right: 18px;
bottom: 18px;
font-size: 20px;
color: var(--fg-mute);
}
.review-meta{
margin-top: 28px;
color: var(--fg-mute);
font-family: var(--mono);
font-size: 12px;
letter-spacing: .04em;
}
.review-toc{
max-width: 720px;
margin: 8px 0 28px;
padding: 16px 18px;
border: 1px solid var(--border);
border-radius: 10px;
background: var(--card-bg);
}
.toc-eyebrow{
font-family: var(--mono);
font-size: 11.5px;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--fg-mute);
margin-bottom: 10px;
}
.toc-list{
list-style: none;
padding: 0;
margin: 0;
}
.toc-item{
padding: 8px 0;
border-bottom: 1px dashed var(--border);
}
.toc-item:last-child{ border-bottom: 0 }
.toc-title{
display: block;
font-family: var(--display);
font-weight: 600;
font-size: 15.5px;
color: var(--fg);
text-decoration: none;
line-height: 1.3;
}
.toc-title:hover{ color: var(--accent) }
.toc-summary{
display: block;
margin-top: 3px;
color: var(--fg-mute);
font-size: 13.5px;
line-height: 1.5;
}
.review-synthesis{
max-width: 720px;
margin: 8px 0 36px;
}
.review-section{
margin: 0 0 28px;
scroll-margin-top: 80px;
}
.review-section-title{
font-family: var(--display);
font-weight: 600;
font-size: 22px;
line-height: 1.25;
margin: 0 0 12px;
padding-top: 4px;
color: var(--fg);
}
.review-synthesis p{
font-size: 17px;
line-height: 1.72;
margin: 0 0 18px;
color: var(--fg);
}
.ep-marker{
display: inline;
padding: 1px 6px;
border: 1px solid var(--border);
border-radius: 4px;
font-family: var(--mono);
font-size: 11.5px;
font-weight: 600;
color: var(--accent);
text-decoration: none;
background: var(--card-bg);
vertical-align: baseline;
margin: 0 1px;
}
.ep-marker:hover{
border-color: var(--accent);
background: var(--card-bg-hover, var(--card-bg));
}
.review-contributions{
max-width: 880px;
margin-top: 28px;
padding-top: 24px;
border-top: 1px solid var(--border);
}
.review-contributions h2{
font-family: var(--display);
font-weight: 600;
font-size: 22px;
margin: 0 0 16px;
}
.contribution-list{
list-style: none;
padding: 0;
margin: 0;
}
.contribution-row{
padding: 14px 0;
border-bottom: 1px solid var(--border);
}
.contribution-row:last-child{ border-bottom: 0 }
.contribution-title{
display: inline-block;
font-family: var(--mono);
font-size: 13px;
color: var(--accent);
text-decoration: none;
margin-bottom: 4px;
}
.contribution-title:hover{ text-decoration: underline }
.contribution-note{
margin: 4px 0 0;
color: var(--fg);
font-size: 14.5px;
line-height: 1.55;
}
.glossary-intro{
max-width: 720px;
margin: 12px 0 0;
color: var(--fg-dim);
font-size: 15px;
line-height: 1.6;
}
.glossary-toc{
position: sticky;
top: 0;
z-index: 20;
display: flex;
flex-wrap: wrap;
gap: 6px;
margin: 0 0 24px;
padding: 10px 0;
background: var(--bg);
border-bottom: 1px solid var(--fg-mute);
}
.glossary-toc-letter{
display: inline-block;
min-width: 30px;
padding: 4px 8px;
border-radius: 6px;
font-family: var(--mono);
font-size: 13px;
font-weight: 500;
text-align: center;
text-decoration: none;
border: 1px solid var(--fg-mute);
}
.glossary-toc-letter:not(.is-empty){
color: var(--fg);
background: var(--bg-2);
}
.glossary-toc-letter:not(.is-empty):hover{
color: var(--bg);
background: var(--accent);
border-color: var(--accent);
}
.glossary-toc-letter.is-empty{
color: var(--fg-mute);
opacity: 0.4;
pointer-events: none;
}
.glossary-section{
margin: 0 0 28px;
}
.glossary-letter{
font-family: var(--display);
font-weight: 600;
font-size: 32px;
line-height: 1;
margin: 0;
padding: 4px 0 8px;
color: var(--fg-mute);
border-bottom: 2px solid var(--fg-mute);
scroll-margin-top: 72px;
}
.glossary-list{
margin: 8px 0 0;
padding: 0;
max-width: 720px;
}
.glossary-entry{
padding: 14px 0;
border-bottom: 1px solid var(--fg-mute);
}
.glossary-entry:last-child{ border-bottom: 0 }
.glossary-term{
font-family: var(--display);
font-weight: 600;
font-size: 17px;
margin: 0 0 4px;
color: var(--fg);
}
.glossary-def{
margin: 0;
color: var(--fg);
font-size: 15px;
line-height: 1.6;
}
.glossary-def-tech{
margin: 4px 0 0;
padding-top: 6px;
border-top: 1px solid var(--fg-mute);
color: var(--fg-mute);
font-size: 14px;
line-height: 1.55;
}
.glossary-index-list{
list-style: none;
margin: 12px 0 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 8px 18px;
max-width: 980px;
}
.glossary-index-row{
padding: 4px 0;
}
.glossary-index-link{
font-family: var(--sans);
font-size: 15px;
font-weight: 500;
color: var(--fg);
text-decoration: none;
border-bottom: 1px dotted var(--fg-mute);
padding-bottom: 1px;
transition: color .12s ease, border-color .12s ease;
}
.glossary-index-link:hover{
color: var(--accent);
border-bottom-color: var(--accent);
}
@media (max-width: 860px){
.archive-hero{ padding:40px 0 16px }
.review-page{ padding: 16px 8px 64px; }
.review-grid{
grid-template-columns: 1fr;
}
.glossary-toc{
gap: 4px;
padding: 8px 0;
margin-bottom: 16px;
}
.glossary-toc-letter{
min-width: 26px;
padding: 3px 6px;
font-size: 12px;
}
.glossary-letter{
font-size: 26px;
scroll-margin-top: 64px;
}
}
.review-group{ margin: 8px 0 44px }
.review-group-title{
font-family:var(--display);
font-weight:600;
font-size:13px;
letter-spacing:.16em;
text-transform:uppercase;
color: var(--fg-mute);
margin:0 0 18px;
}
.review-empty{ color: var(--fg-mute); font-family:var(--mono); font-size:13px }
.topic-directory{ margin: 16px 0 24px; border-top:1px solid var(--line-soft); padding-top:36px }
.topic-dir-list{ display:flex; flex-direction:column; gap:0 }
.topic-dir-row{
display:grid;
grid-template-columns: minmax(180px, 280px) 1fr;
gap: 10px 28px;
padding:16px 0;
border-bottom:1px solid var(--line-soft);
align-items:baseline;
}
.topic-dir-name{
font-family:var(--display);
font-weight:600;
font-size:15.5px;
color: var(--fg);
}
.topic-dir-count{
font-family:var(--mono);
font-weight:400;
font-size:11px;
color: var(--fg-mute);
background: var(--line-soft);
padding:1px 7px;
border-radius:999px;
margin-left:4px;
}
.topic-dir-links{ display:flex; flex-wrap:wrap; gap:8px }
.topic-dir-link{
font-family:var(--mono);
font-size:11.5px;
color: var(--accent);
text-decoration:none;
border:1px solid var(--line);
border-radius:999px;
padding:3px 10px;
white-space:nowrap;
}
.topic-dir-link:hover{ border-color: var(--accent); background: var(--bg-2) }
.review-topic{ margin: 0 0 56px; scroll-margin-top: 80px }
.review-topic-title{
font-family:var(--display);
font-weight:600;
font-size:clamp(24px, 3vw, 32px);
line-height:1.15;
letter-spacing:-.015em;
margin:0 0 10px;
padding-top:28px;
border-top:1px solid var(--line-soft);
color: var(--fg);
}
.review-topic-blurb{
color: var(--fg-dim);
font-size:16px;
line-height:1.6;
margin:0 0 18px;
}
@media (max-width: 860px){
.topic-dir-row{ grid-template-columns: 1fr; gap:8px }
}
.review-year{ margin: 0 0 28px }
.review-year-title{
font-family:var(--mono); font-size:12px; letter-spacing:.14em;
text-transform:uppercase; color:var(--fg); margin:0 0 14px;
}
details.review-year-details{
border-top:1px solid var(--line-soft);
padding:14px 0 0;
margin:0 0 8px;
}
details.review-year-details > summary{
cursor:pointer;
font-family:var(--mono); font-size:12px; letter-spacing:.14em;
text-transform:uppercase; color:var(--fg-mute);
list-style:none; padding:4px 0 14px;
}
details.review-year-details > summary:hover{ color:var(--accent) }
details.review-year-details[open] > summary{ color:var(--fg) }
.filter-bar{
display:grid; grid-template-columns: 1fr auto; gap:14px;
align-items:center; margin: 4px 0 18px; padding:8px 0;
border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);
}
.filter-bar .search-wrap{ display:flex; align-items:center; padding:6px 4px }
.filter-bar input{
width:100%; border:0; outline:0; background:transparent;
font-family:var(--sans); font-size:15px; color:var(--fg);
}
.filter-bar input::placeholder{ color:var(--fg-mute) }
.filter-bar .count{
font-family:var(--mono); font-size:11.5px; letter-spacing:.1em;
color:var(--fg-mute); text-transform:uppercase; white-space:nowrap;
}
.filter-bar .count b{ color:var(--fg); font-weight:500 }
.parent-theme{ margin: 0 0 28px }
.parent-theme-title{
font-family:var(--display); font-weight:600; font-size:15px;
color:var(--accent); margin:0 0 10px;
}
.topic-rows{ display:flex; flex-direction:column }
.topic-row{
display:flex; justify-content:space-between; align-items:baseline;
gap:14px; padding:13px 8px; margin:0 -8px;
border-bottom:1px solid var(--line-soft);
text-decoration:none; color:var(--fg);
transition: background .12s ease, padding .12s ease;
}
.topic-row:hover{
background: color-mix(in oklab, var(--accent) 8%, var(--bg-2));
padding-left:14px; padding-right:14px;
}
.topic-row-name{ font-family:var(--display); font-weight:500; font-size:16px }
.topic-row-meta{
font-family:var(--mono); font-size:11px; color:var(--fg-mute);
letter-spacing:.02em; white-space:nowrap; text-align:right;
}
.topic-row:visited{ color: var(--fg) }
.concept-cloud{ display:flex; flex-wrap:wrap; gap:8px }
.ep-chip{
display:inline-flex; align-items:center;
font-family:var(--mono); font-size:11px; letter-spacing:.08em;
text-transform:uppercase; padding:6px 12px;
border:1px solid var(--line); border-radius:999px;
color:var(--fg-dim); background:transparent; text-decoration:none;
transition: color .12s ease, border-color .12s ease;
}
.ep-chip, .ep-chip:visited{ color:var(--fg-dim) }
.ep-chip:hover{ color:var(--accent); border-color:var(--accent) }
.hub-review-list{ list-style:none; margin:0 0 8px; padding:0 }
.hub-review-row{
display:flex; justify-content:space-between; align-items:baseline; gap:14px;
padding:13px 0; border-bottom:1px solid var(--line-soft); flex-wrap:wrap;
}
.hub-review-link, .hub-review-link:visited{
font-family:var(--display); font-weight:500; font-size:16px;
color:var(--fg); text-decoration:none;
}
.hub-review-link:hover{ color:var(--accent) }
.hub-review-meta{ font-family:var(--mono); font-size:11px; color:var(--fg-mute) }
.hub-related{ margin-top:40px; border-top:1px solid var(--line-soft); padding-top:28px }
.hub-related-note{ color:var(--fg-dim); font-size:14px; margin:0 0 16px }
.period-crosslink{ margin:18px 0 0; border-top:1px solid var(--line-soft); padding-top:16px }
.period-crosslink .crosslink-label{
font-family:var(--mono); font-size:11px; letter-spacing:.14em;
text-transform:uppercase; color:var(--fg-mute);
}
.crosslink-weeks{ list-style:none; margin:8px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px 18px }
.crosslink-weeks a{ font-size:14px; color:var(--accent); text-decoration:none }
.crosslink-weeks a:hover{ text-decoration:underline }
.period-crosslink-back{ margin:14px 0 0 }
.period-crosslink-back a{ font-family:var(--mono); font-size:12px; color:var(--fg-mute); text-decoration:none }
.period-crosslink-back a:hover{ color:var(--accent) }
.review-topic-hublink{ color:inherit; text-decoration:none }
.review-topic-hublink:hover{ color:var(--accent) }
@media (max-width: 640px){
.topic-row{ flex-direction:column; gap:4px }
.topic-row-meta{ text-align:left }
}
.guide-question{font-family:var(--display);font-size:20px;line-height:1.4;color:var(--fg);margin:8px 0 14px}
.guide-list{list-style:none;padding:0;margin:0}
.guide-row{padding:18px 0;border-top:1px solid var(--line-soft)}
.guide-row-title{font-family:var(--display);font-weight:600;font-size:19px;color:var(--fg);text-decoration:none}
.guide-row-title:hover{color:var(--accent)}
.guide-row-meta{font-family:var(--mono);font-size:11.5px;color:var(--fg-mute);margin-left:12px}
.guide-row-q{margin:6px 0 0;color:var(--fg-dim);font-size:15px}
.guide-episodes-note{color:var(--fg-mute);font-size:14px;margin:0 0 12px}
.guide-papers li{margin:0 0 8px}
.guide-attribution{margin-top:40px;padding-top:18px;border-top:1px solid var(--line-soft);font-size:13px;color:var(--fg-mute)}