/* Access messaging stays sharp; only generic, server-redacted previews blur. */
body { --lock-accent: #087e91; --lock-soft: #e2f4f6; --lock-border: #a5d5de; }
body[data-track-section="reading"] { --lock-accent: #2863ad; --lock-soft: #e9f1ff; --lock-border: #afc9ee; }
body[data-track-section="writing"] { --lock-accent: #934577; --lock-soft: #f8eaf4; --lock-border: #dbb0cf; }
body[data-track-section="speaking"] { --lock-accent: #12815b; --lock-soft: #e0f7eb; --lock-border: #9fd8be; }
body[data-track-section="books"] { --lock-accent: #956021; --lock-soft: #fff2dc; --lock-border: #e8c591; }
body[data-track-section="mock"] { --lock-accent: #bd4141; --lock-soft: #fff0ed; --lock-border: #e9b6b0; }
body[data-track-section] .catalogue-preview .section-links.is-premium-locked { position: relative; min-height: 192px; overflow: hidden; border: 1px solid var(--lock-border); opacity: 1; filter: none; background: #f7fbfd; }
body[data-track-section] .catalogue-preview .is-premium-locked.cat-full { min-height: 208px; }
.catalogue-preview .is-premium-locked .preview-card-main { position: absolute; inset: 16px; filter: blur(4px); opacity: .32; pointer-events: none; user-select: none; }
.catalogue-preview .is-premium-locked .preview-card-copy::after { content: ''; display: block; width: 85%; height: 85px; margin-top: 20px; background: repeating-linear-gradient(to bottom, #9cbcca 0 6px, transparent 6px 24px); border-radius: 4px; }
body[data-track-section] .catalogue-preview .premium-card-overlay { position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 16px; margin: 0; background: linear-gradient(135deg, #ffffffce, #f4f9fbe6); text-align: center; }
.premium-card-lock { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 auto; border: 1px solid var(--lock-border); border-radius: 10px; background: var(--lock-soft); color: var(--lock-accent); }
.premium-card-lock svg { width: 18px; height: 18px; }
.premium-card-overlay .preview-locked-state { display: inline-block; color: var(--lock-accent); background: var(--lock-soft); border: 1px solid var(--lock-border); border-radius: 30px; padding: 3px 8px; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.premium-card-overlay .preview-locked-copy p { margin: 6px 0 2px; color: #122d3d; font-size: 14px; font-weight: 700; line-height: 1.4; }
body[data-track-section] .catalogue-preview .premium-card-overlay .preview-rules { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 38px; padding: 8px 16px; border-radius: 9px; border: 1px solid var(--lock-accent); background: var(--lock-accent); color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; box-shadow: 0 2px 5px #17344818; }
.premium-card-overlay .preview-rules:hover { filter: brightness(1.1); }
.premium-card-overlay .preview-rules:focus-visible { outline: 3px solid var(--lock-accent); outline-offset: 4px; }
body[data-track-section] .premium-required-btn.primary { background: var(--lock-accent); border-color: var(--lock-accent); color: #fff; }
body[data-track-section="speaking"] .bank-topic[data-premium-locked="true"] { background: linear-gradient(120deg, #f1faf5, #fff); border: 1px solid var(--lock-border); cursor: pointer; opacity: 1; }
body[data-track-section="speaking"] .bank-topic[data-premium-locked="true"] .bank-tag.lock { color: var(--lock-accent); background: var(--lock-soft); }
.shadow-card[data-locked="true"] .shadow-thumb img { filter: blur(4px) saturate(.6) !important; }
@media (max-width: 600px) { body[data-track-section] .catalogue-preview .premium-card-overlay .preview-rules { min-height: 44px; } }
