/* Ghost Log page — same tokens as SeancePage.css: bg #07070d · phosphor #7cffb2 · violet #b26bff. */ .ghostlog-page { min-height: 100vh; padding: 2rem 1rem 4rem; background: radial-gradient(ellipse at 50% 0%, rgba(178, 107, 255, 0.08), transparent 55%), #07070d; color: #d3e9db; font-family: 'IBM Plex Mono', ui-monospace, Menlo, monospace; } .ghostlog-header { max-width: 680px; margin: 0 auto 1.6rem; } .ghostlog-back { color: #b26bff; text-decoration: none; font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; text-shadow: 0 0 10px rgba(178, 107, 255, 0.4); } .ghostlog-back:hover { text-shadow: 0 0 16px rgba(178, 107, 255, 0.9); } .ghostlog-title { margin: 0.9rem 0 0.2rem; font-family: Cinzel, serif; font-size: 1.6rem; letter-spacing: 0.18em; color: #7cffb2; text-shadow: 0 0 18px rgba(124, 255, 178, 0.35); } .ghostlog-subtitle { margin: 0; font-size: 0.78rem; color: rgba(211, 233, 219, 0.6); } .ghostlog-note { max-width: 680px; margin: 2.4rem auto; font-size: 0.85rem; color: rgba(211, 233, 219, 0.65); } .ghostlog-empty { color: #b26bff; text-shadow: 0 0 12px rgba(178, 107, 255, 0.4); } .ghostlog-list { max-width: 680px; margin: 0 auto; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 0.9rem; } .ghostlog-card { display: flex; gap: 0.9rem; padding: 0.9rem 1rem; background: rgba(16, 16, 26, 0.85); border: 1px solid rgba(124, 255, 178, 0.18); border-radius: 6px; } .ghostlog-glyph { flex: 0 0 auto; } a.ghostlog-glyph { border-radius: 50%; transition: filter 140ms ease; } a.ghostlog-glyph:hover, a.ghostlog-glyph:focus-visible { filter: drop-shadow(0 0 8px rgba(124, 255, 178, 0.6)); } .ghostlog-body { min-width: 0; flex: 1; } .ghostlog-who { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.5rem; } .ghostlog-who-link { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.5rem; text-decoration: none; border-radius: 3px; transition: text-shadow 140ms ease; } .ghostlog-who-link:hover .ghostlog-name, .ghostlog-who-link:focus-visible .ghostlog-name { text-shadow: 0 0 10px rgba(124, 255, 178, 0.6); } .ghostlog-who-link:focus-visible { outline: 1px solid #7cffb2; outline-offset: 3px; } .ghostlog-name { font-family: Cinzel, serif; font-size: 1rem; color: #7cffb2; } .ghostlog-noone { color: rgba(211, 233, 219, 0.5); font-style: italic; } .ghostlog-epithet { font-size: 0.72rem; color: #b26bff; } .ghostlog-meta { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-top: 0.3rem; font-size: 0.72rem; letter-spacing: 0.06em; color: rgba(211, 233, 219, 0.6); } .ghostlog-echoes { margin-top: 0.55rem; border-left: 2px solid rgba(178, 107, 255, 0.35); padding-left: 0.7rem; } .ghostlog-echo { margin: 0.2rem 0; font-size: 0.78rem; color: rgba(124, 255, 178, 0.85); overflow-wrap: break-word; } .ghostlog-expand { background: transparent; border: none; color: #b26bff; font-family: 'IBM Plex Mono', monospace; font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.3rem 0 0.1rem; cursor: pointer; min-height: 32px; } .ghostlog-expand:hover, .ghostlog-expand:focus-visible { text-shadow: 0 0 8px rgba(178, 107, 255, 0.6); } .ghostlog-filters { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0 0 1.1rem; } .ghostlog-filter { background: transparent; border: 1px solid rgba(124, 255, 178, 0.25); border-radius: 3px; color: rgba(211, 233, 219, 0.6); font-family: 'IBM Plex Mono', monospace; font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.4rem 0.7rem; min-height: 36px; cursor: pointer; transition: color 140ms ease, border-color 140ms ease, background 140ms ease; } .ghostlog-filter:hover { color: #7cffb2; } .ghostlog-filter.active { color: #7cffb2; border-color: rgba(124, 255, 178, 0.6); background: rgba(124, 255, 178, 0.08); } /* phone widths */ @media (max-width: 420px) { .ghostlog-page { padding: 1.4rem 0.7rem 3rem; } .ghostlog-card { padding: 0.7rem 0.7rem; gap: 0.6rem; } .ghostlog-title { font-size: 1.3rem; } }