/* Rellawings community v4. Scoped rules keep chapter editor styles unchanged. */
.member-link{color:var(--accent);text-decoration:none}
.member-link:hover{text-decoration:underline}
.book-card .book-text strong a{color:var(--text)}
.book-card .book-text strong a:hover{color:var(--accent)}
.book-card .book-text .byline a{color:var(--accent)}
.account-nav .account-name{font-weight:750;color:var(--accent)}
.account-nav .nav-search-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.9rem;width:36px;height:36px;line-height:1}
.notification-dropdown{position:relative;flex-shrink:0}
.notification-dropdown>summary{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:6px;min-width:35px;min-height:35px;color:var(--text);list-style:none;border-radius:8px}
.notification-dropdown>summary::-webkit-details-marker{display:none}
.notification-dropdown>summary:hover,.notification-dropdown[open]>summary{background:var(--raised)}
.bell-count{position:absolute;top:-7px;right:-11px;padding:0 4px;min-width:17px;height:17px;border-radius:11px;background:#d44765;color:white;font:700 10px/17px system-ui;text-align:center;box-shadow:0 0 0 2px var(--bg)}
.bell-count[hidden]{display:none}
.notification-popover{z-index:200;position:absolute;right:-14px;top:calc(100% + 10px);width:min(390px,calc(100vw - 24px));max-height:min(520px,80vh);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 50px #0009;overflow:hidden}
.popover-title{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}
.bell-count-label{font-size:.77rem;color:var(--muted)}
.notification-feed{max-height:385px;overflow:auto}
.notice-item{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-bottom:1px solid var(--border);font-size:.83rem;line-height:1.45;color:var(--text)}
.notice-item.unread{background:color-mix(in srgb,var(--accent) 9%,var(--surface))}
.notice-item:hover{background:var(--raised)}
.notice-item img{width:35px;height:35px;object-fit:cover;border-radius:5px;flex:0 0 35px}
.notice-item small{display:block;color:var(--muted);font-size:.75rem;margin-top:3px}
.notification-footer{display:flex;justify-content:space-between;gap:8px;padding:12px 14px;font-size:.84rem}
.notification-footer a{color:var(--accent)}
.directory-page .panel{margin-top:0}
.directory-search-form label{display:block;margin-bottom:12px}
.directory-search-form input[name=q]{width:100%}
.directory-search-options{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.directory-search-options label{display:flex;align-items:center;gap:6px;margin:0}
.directory-search-options input{width:auto}
.directory-member,.directory-story{display:flex;align-items:flex-start;gap:18px;border-bottom:1px solid var(--border);padding:17px 0}
.directory-member> a img{height:70px;width:70px;object-fit:cover;border-radius:9px}
.directory-story> a img{height:125px;width:86px;object-fit:cover;border-radius:7px}
.directory-member h3,.directory-story h3{margin:0}
.directory-member p,.directory-story p{color:var(--muted);margin:.3rem 0 .6rem}
.directory-member>div,.directory-story>div{min-width:0}
.v4-pagination{display:flex;align-items:center;justify-content:center;gap:15px;margin:28px 0;color:var(--muted)}
.profile-v4{display:grid;grid-template-columns:minmax(215px,270px) minmax(0,1fr);align-items:start;gap:25px}
.profile-v4 .panel{margin:0 0 16px}
.profile-v4-card{text-align:center}
.profile-v4-avatar{display:block;width:125px;height:125px;object-fit:cover;border:4px solid var(--raised);border-radius:7px;margin:0 auto 12px}
.profile-v4-card h1{margin:0;font-size:1.3rem}
.profile-v4-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:15px}
.profile-v4-buttons form{margin:0}
.profile-v4-buttons .btn{font-size:.78rem;padding:.4rem .6rem}
.profile-v4-metrics>div{display:flex;justify-content:space-between;gap:8px;font-size:.85rem;margin:7px 0}
.profile-v4-metrics span{color:var(--muted)}
.profile-v4-bio{line-height:1.7;overflow-wrap:anywhere}
.profile-v4-main{min-width:0}
.profile-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--border);margin:-16px -16px 20px;overflow-x:auto}
.profile-tabs a{display:block;padding:12px 13px;border-bottom:3px solid transparent;white-space:nowrap;color:var(--text);font-size:.9rem}
.profile-tabs a.active{border-color:#3e99d7;font-weight:750}
.profile-tabs a:hover{background:var(--raised)}
.profile-wall-compose{padding:14px 0 20px;border-bottom:1px solid var(--border);margin-bottom:10px}
.profile-wall-compose textarea{width:100%;margin:8px 0;resize:vertical}
.profile-entry{padding:18px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere;line-height:1.6}
.profile-entry.profile-reply{margin-left:28px;border-left:2px solid var(--border);padding-left:16px}
.profile-entry-head{display:flex;gap:10px;align-items:center}
.profile-entry-head img{width:38px;height:38px;border-radius:50%;object-fit:cover}
.profile-entry-head time{color:var(--muted);font-size:.78rem}
.profile-entry-body{margin:10px 0 12px}
.profile-entry details{color:var(--accent);font-size:.86rem}
.profile-entry details textarea{display:block;width:100%;margin:8px 0}
.profile-details{display:grid;grid-template-columns:minmax(110px,1fr) 2fr;gap:0}
.profile-details dt,.profile-details dd{margin:0;padding:7px;border-bottom:1px solid var(--border)}
.profile-details dt{color:var(--muted)}
.profile-v4-main h2{font-size:1.2rem;margin-top:1.5rem}
.reading-list-item{display:flex;gap:15px;padding:12px 0;border-bottom:1px solid var(--border)}
.reading-list-item img{height:100px;width:68px;object-fit:cover;border-radius:5px}
.reading-list-item>div{min-width:0}
.reading-list-item a{color:var(--accent)}
.reading-list-item p{margin:6px 0}
.reading-list-item small{color:var(--muted)}
.review-card{padding:20px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}
.review-card>div:first-child{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.review-card h4{margin:12px 0 4px}
.review-card small{display:block;color:var(--muted);margin-top:10px}
.rating-stars{color:#f6b45d;font-size:1.35rem;letter-spacing:1px}
.book-reviews{max-width:980px;margin:48px auto}
.review-compose form{display:grid;gap:14px;margin-top:15px}
.review-compose label{display:block}
.review-compose textarea,.review-compose input{display:block;width:100%}
.review-compose select{display:block;max-width:220px}
.pref-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;margin:8px 0 26px}
.pref-grid label{display:flex;align-items:flex-start;gap:10px;padding:5px;line-height:1.4}
.pref-grid input[type=checkbox]{width:auto;flex-shrink:0;margin-top:4px}
@media(max-width:850px){.profile-v4{grid-template-columns:1fr}.profile-v4-side{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-v4-bio{grid-column:1/-1}.notification-popover{right:-75px}}
@media(max-width:580px){.profile-v4-side{display:block}.pref-grid{grid-template-columns:1fr}.profile-tabs{flex-wrap:nowrap}.notification-popover{position:fixed;left:12px;right:12px;top:92px;width:auto;max-height:70vh}.directory-member,.directory-story{gap:12px}.directory-member> a img{width:56px;height:56px}}

.header-search{position:relative;flex-shrink:0}
.header-search>summary{display:flex;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.8rem;line-height:1;list-style:none;cursor:pointer;border:1px solid var(--border);border-radius:7px}
.header-search>summary::-webkit-details-marker{display:none}
.header-search>summary:hover,.header-search[open]>summary{background:var(--raised)}
.header-search-popover{position:absolute;right:0;top:calc(100% + 12px);z-index:195;background:var(--surface);box-shadow:0 15px 40px #0009;border:1px solid var(--border);border-radius:10px;padding:16px;width:min(350px,calc(100vw - 30px))}
.header-search-popover input[type=search]{display:block;width:100%;margin:8px 0}
.header-search-popover .search-types{display:flex;align-items:center;gap:16px;margin-bottom:12px;font-size:.9rem}
.header-search-popover input[type=radio]{width:auto}
.header-search-popover .btn{width:100%}
@media(max-width:580px){.header-search-popover{right:-70px}}

.notice-item> a{flex:0 0 35px;display:block}
.notice-item span a:not(.member-link){color:var(--text)}
.notice-item span a:hover{text-decoration:underline;color:var(--accent)}
.review-remove{text-align:right;margin-top:-15px}
