.journey-controls { display:flex; justify-content:space-between; gap:16px; margin-top:32px; font-size:11px; color:#b8b3c3; }
.journey-controls button,.shelf-actions button { font:inherit; color:inherit; background:transparent; border:1px solid currentColor; border-radius:4px; padding:6px 12px; cursor:pointer; }
[hidden] { display:none !important; }
.light-flow { position:absolute; inset:-3px 0; overflow:hidden; pointer-events:none; }
.light-flow i { display:block; width:100%; height:8px; background:linear-gradient(90deg,transparent 75%,#dea46f 94%,#fff 99%,transparent); transform:translateX(-100%); animation:light-travel 16s linear infinite paused; }
.lightline li:nth-child(2) .light-flow i { animation-delay:4s; }
.lightline li:nth-child(3) .light-flow i { animation-delay:8s; }
.lightline li:nth-child(4) .light-flow i { animation-delay:12s; }
.lightline li:last-child .light-flow { display:none; }
.journey-playing .light-flow i { animation-play-state:running; }
@keyframes light-travel { 0%{transform:translateX(-100%);opacity:1} 25%{transform:translateX(0);opacity:1} 25.1%,100%{transform:translateX(0);opacity:0} }
.shelf-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.shelf-heading h3 { margin:0; font-size:18px; }
.shelf-actions { display:flex; gap:12px; align-items:center; font-size:13px; }
.shelf-actions a { color:#dea46f; }
.shelf-actions button:disabled { opacity:.3; cursor:default; }
.insight-track { display:flex; gap:24px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; padding-bottom:14px; }
.insight-tile { flex:0 0 calc((100% - 24px)/2); height:264px; min-width:0; display:flex; flex-direction:column; scroll-snap-align:start; padding:24px 0; border-top:1px solid #66536e; }
.tile-label { color:#dea46f; font-size:11px; }
.insight-tile h4 { font-size:21px; line-height:1.55; margin:16px 0 12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.insight-tile p { font-size:14px; line-height:1.85; color:#b8b3c3; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.tile-link { margin-top:auto; color:#dea46f; font-size:13px; }
.insight-tile:hover h4 { color:#dea46f; }
html[data-theme="light"] .journey-controls,html[data-theme="light"] .insight-tile p { color:#59606d; }
html[data-theme="light"] .tile-label,html[data-theme="light"] .tile-link,html[data-theme="light"] .shelf-actions a,html[data-theme="light"] .insight-tile:hover h4 { color:#751487; }
.insight-archive .insight-track { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; }
@media(max-width:700px) {
 .lightline { grid-template-columns:1fr; }
 .light-flow { left:-3px; top:0; width:8px; height:100%; }
 .light-node { height:calc(100% + 1px); top:17px; }
 .light-flow i { height:100%; width:8px; background:linear-gradient(180deg,transparent 75%,#dea46f 94%,#fff 99%,transparent); animation-name:light-travel-vertical; }
 .journey-controls { align-items:flex-start; }
 .journey-controls span { max-width:60%; }
 .insight-tile { flex-basis:88%; height:264px; }
 .insight-tile h4 { font-size:19px; }
 .insight-archive .insight-track { grid-template-columns:1fr; }
}
@keyframes light-travel-vertical { 0%{transform:translateY(-100%);opacity:1} 25%{transform:translateY(0);opacity:1} 25.1%,100%{transform:translateY(0);opacity:0} }
@media(prefers-reduced-motion:reduce) { .light-flow { display:none; } }
