/* Dream Catcher — temperature / frequency chart component */
.temp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px}
.temp-card>h3{margin-top:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.temp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.temp-sub{font-size:.9rem;color:var(--muted);margin:0 0 18px;max-width:70ch}
.temp-legend{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted);white-space:nowrap}
.temp-legend .exp-swatch{width:22px;height:0;border-top:2px dashed var(--gold);display:inline-block}
/* chart */
.temp-chart{position:relative;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--surface-2),var(--surface));padding:20px 8px 10px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.temp-grid{position:relative;display:grid;grid-template-columns:repeat(8,minmax(96px,1fr));gap:6px;min-width:760px}
.temp-expline{position:absolute;left:8px;right:8px;height:0;border-top:2px dashed var(--gold);z-index:2;pointer-events:none}
.temp-expline span{position:absolute;right:0;top:-9px;background:var(--surface);color:var(--gold);font-size:.66rem;font-weight:700;padding:0 6px;border-radius:6px}
.temp-col{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;z-index:3}
.temp-plot{position:relative;width:100%;height:150px;display:flex;align-items:flex-end;justify-content:center}
.temp-point{position:absolute;left:50%;transform:translate(-50%,50%);width:16px;height:16px;border-radius:50%;border:3px solid var(--surface);box-shadow:0 0 0 2px currentColor;transition:bottom .8s cubic-bezier(.22,1,.36,1)}
.temp-stem{position:absolute;left:50%;transform:translateX(-50%);width:2px;background:currentColor;opacity:.28;bottom:0;transition:height .8s cubic-bezier(.22,1,.36,1)}
.temp-chip{margin-top:10px;width:66px;height:auto;border-radius:5px;display:block}
.temp-delta{font-weight:800;font-size:.92rem;margin-top:8px;line-height:1}
.temp-delta.up{color:var(--green)}
.temp-delta.down{color:#e6a35f}
.temp-delta.dead{color:var(--red)}
.temp-lands{font-size:.76rem;color:var(--muted);margin-top:4px}
.temp-since{font-size:.72rem;color:var(--faint);margin-top:2px;text-align:center}
/* temperature strip */
.temp-strip-wrap{margin-top:16px}
.temp-strip{position:relative;height:14px;border-radius:999px;background:linear-gradient(90deg,#e5544b 0%,#e88a3d 22%,#f7c948 42%,#7fb0d6 66%,#5e9fe8 100%)}
.temp-strip-labels{display:flex;justify-content:space-between;font-size:.74rem;color:var(--muted);margin-top:7px}
.temp-strip-labels b{color:var(--text);font-weight:700}
.temp-note{font-size:.82rem;color:var(--faint);margin:14px 0 0}
@media(max-width:520px){.temp-chip{width:54px}}
