/* Learn page (lessons + Trader Tales panels). Shared tokens and components from base.css; page classes prefixed learn- and tales-. */
.learn-head{padding-bottom:var(--s6)}
.learn-head h1{max-width:none}
.learn-head .lede{margin-bottom:var(--s5)}
/* segmented control: two chips, only useful with JS, so hidden until .js is set (no-JS shows both panels stacked) */
.learn-tabs{display:none;gap:var(--s2)}
.js .learn-tabs{display:inline-flex}
.learn-tab{min-height:40px;padding:0 var(--s4)}
.learn-panel{padding-top:var(--s7)}
.learn-panel h2{font-size:var(--fs-xl);letter-spacing:-.03em;max-width:28ch}
.learn-head-grid{display:grid;gap:var(--s6);margin-bottom:var(--s6)}
@media(min-width:960px){.learn-head-grid{grid-template-columns:1.5fr 1fr;align-items:end}}
.learn-facts{margin:0;display:grid;gap:0;border-top:1px solid var(--hairline)}
.learn-facts div{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--hairline)}
.learn-facts dt{font:500 var(--fs-xs)/1.7 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.learn-facts dd{margin:0;font-size:var(--fs-sm);color:var(--text)}

.learn-tools{display:grid;gap:var(--s5);padding:var(--s5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-card);margin-bottom:var(--s5)}
@media(min-width:960px){.learn-tools{grid-template-columns:minmax(260px,340px) 1fr;align-items:end}}
.learn-search label{display:block;font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--s2)}
.learn-search-box{position:relative}
.learn-search-box .icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}
.learn-search input{width:100%;min-height:40px;padding:0 var(--s3) 0 40px;border-radius:var(--radius-ctl);border:1px solid var(--hairline-strong);
  background:var(--bg);color:var(--text-strong);font:400 var(--fs-md) var(--font-sans)}
.learn-search input::placeholder{color:var(--text-dim)}
.learn-search input:focus-visible{border-color:var(--amber);outline-offset:2px}
.learn-filter{display:flex;flex-wrap:wrap;gap:var(--s2)}
.learn-chip{min-height:40px}
.learn-chip-n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-dim);font-weight:400;font-size:var(--fs-xs);margin-left:var(--s1)}
.learn-chip[aria-pressed="true"] .learn-chip-n{color:var(--text)}
.learn-count{font:400 var(--fs-xs)/1.3 var(--font-mono);color:var(--text-dim);margin:0 0 var(--s4)}

.learn-grid{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.learn-card{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4);margin:0;transition:border-color var(--dur-fast) var(--ease)}
.learn-card:hover{border-color:var(--hairline-strong)}
.learn-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s2)}
.learn-n{font:500 var(--fs-xs)/1 var(--font-mono);color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.learn-glyph{color:var(--text-dim);width:20px;height:20px}
.learn-card h3{font-size:1.0625rem;line-height:var(--lh-snug);margin:0;letter-spacing:-.01em}
.learn-meta{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3);margin:0;font:400 var(--fs-xs)/1.5 var(--font-mono);color:var(--text-dim)}
.learn-fmt{color:var(--text)}
.learn-meta span + span::before{content:"";display:inline-block;width:3px;height:3px;background:var(--gray-500);margin-right:var(--s3);vertical-align:middle}
.learn-soon{margin:auto 0 0;padding-top:var(--s3);border-top:1px solid var(--hairline);font:500 .6875rem/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.learn-empty{grid-column:1/-1;padding:var(--s7) var(--s5);text-align:center;color:var(--text-dim);border:1px dashed var(--hairline-strong);border-radius:var(--radius-card)}
.learn-series{font-size:var(--fs-sm);color:var(--text-dim);margin:calc(-1 * var(--s2)) 0 var(--s4)}

/* Trader Tales panel */
.tales-head{margin-bottom:var(--s6)}
.tales-series{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-strong);margin-bottom:var(--s5)}
.tales-series span{color:var(--text-dim);padding-left:var(--s3);border-left:1px solid var(--hairline-strong)}
.tales-head h2{max-width:24ch}
.tales-head .lede{margin-bottom:var(--s6)}
.tales-key{display:grid;gap:var(--s3);margin:0;max-width:760px}
@media(min-width:760px){.tales-key{grid-template-columns:1fr 1fr;gap:var(--s5)}}
.tales-key div{display:grid;gap:var(--s2);padding-top:var(--s3);border-top:1px solid var(--hairline)}
.tales-key dt{margin:0} .tales-key dd{margin:0;font-size:var(--fs-sm);color:var(--text-dim)}
.tales-badge-true{color:var(--text-strong);border-color:var(--text-dim)}
.tales-badge-fiction{color:var(--text-dim);border-style:dashed}

.tales-section + .tales-section{margin-top:var(--s6)}
.tales-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);flex-wrap:wrap;
  border-bottom:1px solid var(--hairline-strong);padding-bottom:var(--s3);margin-bottom:0}
.tales-section-head h3{margin:0;font-size:var(--fs-lg);letter-spacing:-.02em}
.tales-section-head p{margin:0;font:400 var(--fs-xs)/1.3 var(--font-mono)}

.tales-list{list-style:none;margin:0;padding:0}
.tales-item{display:grid;gap:var(--s3);padding:var(--s5) 0;margin:0;border-bottom:1px solid var(--hairline)}
@media(min-width:760px){.tales-item{grid-template-columns:11rem 1fr;gap:var(--s6)}}
.tales-when{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s3);flex-direction:row}
@media(min-width:760px){.tales-when{flex-direction:column;align-items:flex-start}}
.tales-era{font:500 var(--fs-lg)/1.1 var(--font-mono);color:var(--text-strong);font-variant-numeric:tabular-nums}
.tales-body h3{font-size:var(--fs-lg);margin-bottom:var(--s2);max-width:40ch}
.tales-lesson{font-size:var(--fs-md);color:var(--text-dim);margin-bottom:var(--s3)}
.tales-poll{display:flex;gap:var(--s3);align-items:flex-start;margin:0;padding:var(--s3) var(--s4);background:var(--surface);
  border:1px solid var(--hairline);border-radius:var(--radius-ctl);font-size:var(--fs-sm);max-width:60ch}
.tales-poll b{display:block;font:500 var(--fs-xs)/1.5 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.tales-q{flex:none;color:var(--text-dim);margin-top:3px}
.tales-empty{padding:var(--s7) 0;color:var(--text-dim)}
.tales-by{font-size:var(--fs-sm);color:var(--text-dim);margin:calc(-1 * var(--s3)) 0 var(--s4)}
.tales-place{font:400 var(--fs-xs)/1.4 var(--font-mono);color:var(--text-dim);margin-bottom:var(--s1)}


/* ---------- unified card grid with thumbnail area ---------- */
.learn-jump{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin:0}
.learn-more{margin:var(--s5) 0 0}
.learn-card{min-width:0}
.learn-thumb{position:relative;aspect-ratio:16/9;background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius-ctl);
  display:flex;align-items:center;justify-content:center;color:var(--gray-500);overflow:hidden;margin-bottom:var(--s2)}
.learn-thumb-grid{position:absolute;inset:0;width:100%;height:100%;color:var(--hairline)}
.learn-thumb-glyph{position:relative;color:var(--text-dim);width:40px;height:40px}
.learn-tag{position:absolute;top:var(--s2);left:var(--s2);z-index:1;padding:.3em .5em;border:1px solid var(--hairline-strong);border-radius:var(--radius-ctl);
  background:var(--bg);font:500 .6875rem/1 var(--font-mono);letter-spacing:.04em;color:var(--text-strong)}
.learn-card[data-type="story"] .learn-tag{border-color:var(--text-dim)}
.learn-thumb-n{position:absolute;right:var(--s2);bottom:var(--s2);font:500 var(--fs-xs)/1 var(--font-mono);color:var(--text-dim);font-variant-numeric:tabular-nums}
.learn-desc{margin:0;font-size:var(--fs-sm);color:var(--text-dim);line-height:1.5}

@media(max-width:480px){.learn-facts div{grid-template-columns:1fr;gap:0}}

.learn-more[hidden],#more[hidden]{display:none}
@media(max-width:559px){
  .learn-card{display:grid;grid-template-columns:88px minmax(0,1fr);column-gap:var(--s3);row-gap:var(--s1);align-content:start}
  .learn-thumb{grid-row:1/span 4;aspect-ratio:1;margin:0;align-self:start}
  .learn-thumb-glyph{width:32px;height:32px}
  .learn-card > :not(.learn-thumb){grid-column:2}
  .learn-soon{margin-top:var(--s1);padding-top:var(--s2)}
  .learn-thumb-n{display:none}
}
