/* Reader contributions: this sheet is intentionally scoped to sr-* elements. */
.header-actions .sr-open { display:grid!important; position:relative; color:#ad493d; }
.header-actions .sr-open svg { width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.sr-modal-open { overflow:hidden; }
.sr-dialog { box-sizing:border-box; width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:26px;border:1px solid var(--line,#dde3e9);border-radius:18px;background:var(--paper,#fff);color:var(--text,#182334);box-shadow:0 24px 100px #0005;font-family:inherit;font-size:15px;line-height:1.55;overflow-y:auto;overscroll-behavior:contain; }
.sr-dialog:not([open]) { display:none; }
.sr-dialog::backdrop { background:#0a142bb3;backdrop-filter:blur(4px); }
.sr-dialog *, .sr-dialog *::before, .sr-dialog *::after { box-sizing:border-box; }
.sr-dialog [hidden] { display:none!important; }
.sr-dialog-head { display:flex;justify-content:space-between;gap:15px;align-items:flex-start; }
.sr-eyebrow { font-size:10px;font-weight:800;letter-spacing:.13em;color:#ad493d; }
.sr-dialog h2 { font-size:28px;line-height:1.2;margin:6px 0 0; }
.sr-dialog h3 { font-size:18px;margin:10px 0; }
.sr-dialog button { font:inherit;cursor:pointer; }
.sr-close { background:transparent;color:inherit;border:0;border-radius:8px;font-size:30px!important;line-height:1;width:36px;height:36px; }
.sr-intro { font-size:14px;color:var(--muted,#657082);margin:15px 0; }
.sr-tabs { display:flex;gap:6px;border-bottom:1px solid var(--line,#dce3eb);margin-bottom:18px; }
.sr-tabs button { border:0;border-bottom:3px solid transparent;padding:11px 12px;background:none;color:inherit;font-size:14px;font-weight:700; }
.sr-tabs button[aria-pressed=true] { border-bottom-color:#ad493d;color:#ad493d; }
.sr-form { display:grid;gap:14px; }
.sr-form label { display:grid;gap:5px;font-size:14px;font-weight:600; }
.sr-form label small { font-weight:400;color:var(--muted,#657082); }
.sr-form input:not([type=checkbox]),.sr-form textarea { width:100%;min-width:0;border:1px solid var(--line,#dce3eb);border-radius:8px;padding:11px 12px;color:inherit;background:var(--paper,#fff);font:inherit; }
.sr-form textarea { resize:vertical; }
.sr-dialog :focus-visible { outline:2px solid #ad493d;outline-offset:3px; }
.sr-dialog .sr-pickers { display:flex;gap:10px; }
.sr-dialog .sr-pick { flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px dashed #ad493d;border-radius:9px;background:#ad493d0a;padding:20px 12px;cursor:pointer;text-align:center; }
.sr-pick:focus-within { outline:2px solid #ad493d;outline-offset:2px; }
.sr-form .sr-pick input[type=file] { position:absolute;inset:0;opacity:0;cursor:pointer; }
.sr-dialog .sr-hint { font-size:12px;font-weight:400;color:var(--muted,#657082);margin:0; }
.sr-preview { margin:0;overflow:hidden;border:1px solid var(--line,#dce3eb);border-radius:10px; }
.sr-preview img { display:block;max-height:280px;max-width:100%;width:100%;object-fit:contain;background:#111; }
.sr-preview figcaption { display:flex;justify-content:space-between;gap:12px;padding:8px 12px;font-size:12px; }
.sr-preview figcaption span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.sr-preview button,.sr-auth-links button,.sr-invite button,#sr-logout { border:0;background:none;color:#ad493d;padding:0;text-decoration:underline;font-size:13px; }
.sr-form .sr-check { display:flex;align-items:flex-start;gap:9px;font-size:12px;font-weight:400; }
.sr-check input { flex:none;margin-top:4px;accent-color:#ad493d; }
.sr-primary { border:1px solid #ad493d;border-radius:9px;background:#ad493d;color:#fff;padding:13px 18px;font-weight:700!important; }
.sr-primary:hover { background:#89382f; }
.sr-dialog button:disabled { opacity:.55;cursor:wait; }
.sr-message { border:1px solid #589e79;background:#edf8f2;color:#174f35;border-radius:9px;padding:12px 14px;margin:14px 0;font-size:14px;overflow-wrap:anywhere; }
.sr-message.is-error { background:#fff0ed;color:#842d23;border-color:#d48d83; }
.sr-invite { margin-top:22px;padding:17px;border-radius:10px;background:#ad493d0b;border:1px solid #ad493d22; }
.sr-invite p { margin:6px 0 9px;font-size:13px;color:var(--muted,#657082); }
.sr-auth-links { display:flex;flex-wrap:wrap;gap:10px 15px;margin:18px 0 4px; }
.sr-member-head { display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px; }
.sr-member-head p { font-size:12px;color:var(--muted,#657082);margin:3px 0; }
.sr-item { border-bottom:1px solid var(--line,#dce3eb);padding:15px 0;display:grid;gap:5px; }
.sr-item strong { font-size:14px;overflow-wrap:anywhere; }
.sr-item small,.sr-item p { font-size:12px;color:var(--muted,#657082);margin:0; }
.sr-item a { color:#ad493d;font-size:13px; }
.sr-form .sr-honey { position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0; }
.sr-launch { margin:20px 0;border:0;border-radius:10px;background:#ad493d;color:white;padding:14px 22px;cursor:pointer;font:inherit; }
@media(max-width:600px) { .sr-dialog { padding:20px 16px;max-height:calc(100dvh - 16px);width:calc(100vw - 16px);border-radius:12px; } .sr-dialog h2 { font-size:24px; } .sr-tabs button { padding:10px 8px; } }
@media(max-width:380px) { .top-header .header-actions { gap:3px; } .top-header .header-actions .action-btn { width:32px;height:34px; } .top-header .header-wordmark strong { font-size:20px; } .top-header .header-logo-mark { width:30px; } .top-header .header-logo img { width:30px;height:30px; } }
body.dark .header-actions .sr-open,
body.dark .sr-eyebrow,
body.dark .sr-tabs button[aria-pressed=true],
body.dark .sr-preview button,
body.dark .sr-auth-links button,
body.dark .sr-invite button,
body.dark #sr-logout,
body.dark .sr-item a { color:#f2a38f; }

.reader-rubric-note { margin:0 0 22px;padding:22px;border-left:3px solid #ad493d; }
.reader-rubric-note h2 { margin:0 0 10px;font-size:20px;line-height:1.35; }
.reader-rubric-note p { margin:0 0 12px;font-size:14px;line-height:1.65;color:var(--muted,#657082); }
.reader-rubric-note .sr-launch { margin:2px 0 0;padding:11px 16px;font-size:14px; }
