/* Shared reader: customer modal and administration preview. */
.nl-reader { --nl-bg:#080808; --nl-surface:#0d0d0d; --nl-border:#262626; --nl-text:#f4f4f4; --nl-muted:#969696; color:var(--nl-text); background:var(--nl-bg); border:1px solid var(--nl-border); border-radius:20px; overflow:hidden; text-align:left; }
#newsletterModalOverlay .newsletter-modal-box { width:1100px; max-width:calc(100vw - 48px); height:min(820px,88dvh); max-height:88dvh; padding:0; display:flex; flex-direction:column; background:var(--nl-bg); box-shadow:0 32px 100px #0009; }
.nl-reader-header { padding:17px 30px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--nl-border); flex-shrink:0; }
.nl-kicker { color:var(--neon-green,#00e676); font-size:9px; font-weight:700; letter-spacing:1.6px; }
.nl-reader-header h2 { margin:0; font-size:20px; letter-spacing:-.8px; font-weight:700; color:var(--nl-text); }
.nl-reader-header p { margin:5px 0 0; font-size:11px; line-height:1.5; color:var(--nl-muted); }
.nl-close { display:grid; place-items:center; padding:0; line-height:1; flex:0 0 32px; width:32px; height:32px; border:1px solid var(--nl-border); border-radius:50%; background:transparent; color:var(--nl-muted); cursor:pointer; }
.nl-close svg { display:block; width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.nl-header-identity { display:flex; align-items:center; gap:16px; min-width:0; }
.nl-header-icon { display:grid; place-items:center; width:40px; height:40px; flex:0 0 40px; color:var(--neon-green,#00e676); font-size:36px; }
.nl-heading-line { display:flex; align-items:center; gap:12px; }
.nl-close:hover { color:var(--nl-text); background:var(--nl-surface); }
.nl-reader-layout { display:grid; grid-template-columns:260px minmax(0,1fr); flex:1; min-height:0; overflow:hidden; }
.nl-history-rail { background:var(--nl-surface); border-right:1px solid var(--nl-border); padding:25px 16px; overflow:auto; min-width:0; }
.nl-rail-label { display:block; color:var(--nl-muted); font-size:10px; font-weight:700; letter-spacing:1.5px; padding:0 12px 16px; }
.nl-edition-item { display:flex; flex-direction:column; gap:10px; width:100%; margin:0 0 9px; padding:16px 13px; background:transparent; border:1px solid transparent; border-radius:10px; text-align:left; color:var(--nl-text); cursor:pointer; font-family:inherit; }
.nl-edition-item:hover { background:#ffffff05; }
.nl-edition-item.is-selected { background:#ffffff06; border-color:#3a3a3a; box-shadow:inset 3px 0 0 var(--neon-green,#00e676); }
.nl-edition-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px; color:var(--nl-muted); font-size:10px; }
.nl-edition-meta b { color:var(--neon-green,#00e676); font-size:9px; text-transform:uppercase; letter-spacing:.5px; }
.nl-edition-item strong { font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.nl-edition-item>span:last-child:not(.nl-edition-meta) { font-size:11px; line-height:1.6; color:var(--nl-muted); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.nl-history-hint { font-size:11px; line-height:1.7; color:var(--nl-muted); padding:16px 12px; }
.nl-article { min-width:0; padding:38px 42px 48px; overflow:auto; outline:none; background:var(--nl-bg); }
.nl-article-meta { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin-bottom:24px; }
.nl-version { font-size:10px; line-height:1.5; letter-spacing:.7px; text-transform:uppercase; color:var(--neon-green,#00e676); background:#00e6760b; border:1px solid #00e67630; border-radius:5px; padding:4px 8px; font-weight:700; }
.nl-article-meta time { color:var(--nl-muted); font-size:11px; }
.nl-article-title { font-size:30px; line-height:1.25; letter-spacing:-1px; font-weight:700; margin:0 0 17px; color:var(--nl-text); overflow-wrap:anywhere; }
.nl-article-summary { font-size:15px; line-height:1.8; color:var(--nl-muted); margin:0 0 28px; overflow-wrap:anywhere; }
.nl-article-content { font-size:14px; line-height:1.9; color:var(--nl-text,#eee); overflow-wrap:anywhere; }
.nl-article-content h3,.nl-article-content h4 { margin:26px 0 12px; font-size:16px; line-height:1.5; color:var(--nl-text,#eee); font-weight:650; }
.nl-article-content h3:first-child,.nl-article-content h4:first-child { margin-top:0; }
.nl-article-content ul,.nl-article-content ol { padding-left:21px; margin:10px 0 22px; }
.nl-article-content li { padding-left:5px; margin:9px 0; }
.nl-article-content li::marker { color:var(--neon-green,#00e676); }
.nl-article-content p { margin:0 0 16px; }
.nl-reader-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 30px; background:var(--nl-bg); border-top:1px solid var(--nl-border); flex-shrink:0; }
.newsletter-email-pref { display:flex; align-items:center; gap:10px; color:var(--nl-muted); font-size:12px; cursor:pointer; margin:0; }
#newsletterEmailToggle { accent-color:var(--neon-green,#00e676); width:16px; height:16px; flex-shrink:0; cursor:pointer; }
.newsletter-ok-btn { display:flex; justify-content:center; align-items:center; gap:20px; background:var(--neon-green,#00e676); color:#000; border:0; padding:12px 18px; border-radius:8px; font-family:inherit; font-size:12px; font-weight:700; cursor:pointer; white-space:nowrap; }
.nl-reader button:focus-visible,.nl-reader input:focus-visible { outline:2px solid var(--neon-green,#00e676); outline-offset:3px; }
.nl-state { color:var(--nl-muted); font-size:13px; padding:18px 0; }
.nl-state button { display:block; margin-top:12px; background:transparent; color:var(--neon-green,#00e676); border:1px solid var(--nl-border); padding:8px 12px; border-radius:6px; cursor:pointer; }
.tools-item-icon.icon-newsletter { background:#00e67612; color:var(--neon-green); }
body.light-mode .nl-reader { --nl-bg:#fff; --nl-surface:#f8f8f8; --nl-border:#e3e3e3; --nl-text:#191919; --nl-muted:#666; }
body.light-mode .nl-edition-item.is-selected { border-color:#ccc; background:#eee; }
@media(max-width:700px) {
 #newsletterModalOverlay .newsletter-modal-box { max-width:calc(100vw - 20px); height:94dvh; max-height:94dvh; border-radius:14px; }
 .nl-reader-header { padding:14px 18px; }
 .nl-reader-header h2 { font-size:18px; }
 .nl-heading-line { gap:9px; }
 .nl-kicker { font-size:8px; letter-spacing:1px; }
 .nl-header-identity { gap:10px; }
 .nl-header-icon { width:32px; height:32px; flex:0 0 32px; font-size:28px; }
 .nl-reader-layout { display:flex; flex-direction:column; }
 .nl-history-rail { padding:12px; border-right:0; border-bottom:1px solid var(--nl-border); flex-shrink:0; max-height:150px; overflow:auto; }
 .nl-rail-label { padding:0 4px 8px; font-size:9px; }
 #newsletterHistoryList { display:flex; gap:8px; }
 .nl-edition-item { min-width:205px; width:205px; margin:0; padding:10px; gap:5px; }
 .nl-edition-item>span:last-child:not(.nl-edition-meta) { display:none; }
 .nl-history-hint { display:none; }
 .nl-article { padding:25px 22px; flex:1; }
 .nl-article-title { font-size:25px; }
 .nl-reader-footer { padding:15px 18px; flex-wrap:wrap; gap:14px; }
 .newsletter-ok-btn { margin-left:auto; }
 .newsletter-email-pref { font-size:11px; }
}
