.newsletter-panel{margin:12px 0;padding:20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius);color:var(--text-primary)}
.newsletter-panel h2{margin:0 0 12px;font-size:1.15rem;color:var(--text-strong)}
.newsletter-panel p{line-height:1.6;margin:10px 0}
.newsletter-controls{display:flex;justify-content:flex-end;margin:12px 0}
.newsletter-edition-title{margin:24px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--border-subtle);font-size:1.05rem;font-weight:700;color:var(--text-strong)}
.newsletter-form{display:grid;gap:16px;margin:20px 0 12px}
.newsletter-field{display:flex;flex-direction:column;gap:8px;font-size:.9rem;color:var(--text-primary)}
.newsletter-field input,.newsletter-field textarea,.newsletter-field select{box-sizing:border-box;width:100%;min-width:0;padding:12px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit}
.newsletter-field textarea{resize:vertical}
.newsletter-field :focus-visible,.newsletter-button:focus-visible{outline:2px solid var(--color-gold);outline-offset:3px}
.newsletter-check{flex-direction:row-reverse;align-items:flex-start;justify-content:flex-end;line-height:1.5}
.newsletter-check input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--text-strong)}
.newsletter-button{padding:11px 16px;min-height:44px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);font:inherit;cursor:pointer}
.newsletter-primary{background:var(--text-strong);color:var(--bg-app);font-weight:700}
.newsletter-button:disabled{opacity:.6;cursor:wait}
.newsletter-status[data-state=success]{color:var(--fg-success)}
.newsletter-status[data-error=true]{color:var(--fg-error)}
.newsletter-note{font-size:.8rem;color:var(--text-secondary)}
.newsletter-note a{color:inherit;text-decoration:underline}
.newsletter-detail{box-sizing:border-box;margin:auto;width:min(560px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:24px;background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg)}
.newsletter-detail::backdrop{background:rgba(0,0,0,.65)}
.newsletter-detail h2{font-size:1.2rem;color:var(--text-strong)}
.newsletter-detail-copy{white-space:pre-line;line-height:1.7}
.newsletter-editorial-summary{white-space:pre-line;line-height:1.6}
@media(max-width:600px){.newsletter-panel{padding:16px}.newsletter-primary{width:100%}}
