/* Visitor-only presentation. Access is checked separately on the server. */
[data-visitor-preview] .visitor-locked-topic,
[data-visitor-preview] .visitor-locked-chapter { position:relative; cursor:default; box-shadow:none; background:#101419; border-color:#2a3037; color:#fff; }
[data-visitor-preview] .visitor-locked-topic:hover { transform:none; box-shadow:none; background:#101419; border-color:#2a3037; }
.visitor-lock-content { filter:blur(1px); opacity:.5; user-select:none; }
.visitor-lock-content h3 { margin:28px 0 10px; }
.visitor-lock-content p { margin:0; color:#a0a7b1; line-height:1.55; }
.visitor-topic-code { color:#c7f797; font-weight:800; }
.visitor-lock-icon { display:inline-flex; align-items:center; justify-content:center; flex:none; width:44px; height:44px; border:1px solid #444e40; border-radius:50%; background:#141c15; color:#c7f797; }
.visitor-lock-icon svg { width:24px; height:24px; }
.visitor-locked-topic > .visitor-lock-icon { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); }
.visitor-locked-chapter { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:105px; padding:19px 24px; }
.visitor-chapter-content { display:flex; align-items:center; gap:20px; min-width:0; filter:blur(.8px); opacity:.55; user-select:none; }
.visitor-chapter-number { flex:none; font-size:14px; font-weight:800; color:#c7f797; }
.visitor-chapter-content h3 { margin:0; font-size:21px; line-height:1.25; font-weight:800; letter-spacing:-.025em; }
.visitor-chapter-content small { display:block; margin-top:5px; font-size:14px; color:#a0a7b1; }
.visitor-locked-link { cursor:default!important; pointer-events:none; display:inline-flex; align-items:center; gap:10px; }
.visitor-link-content { filter:blur(.8px); opacity:.55; }
.visitor-locked-link .visitor-lock-icon { width:28px; height:28px; }
.visitor-locked-link .visitor-lock-icon svg { width:17px; height:17px; }
@media(max-width:600px){
  .visitor-locked-chapter { padding:18px 16px; gap:14px; }
  .visitor-chapter-content { display:block; }
  .visitor-chapter-content h3 { margin-top:7px; font-size:18px; }
}
