/* Loaded after both existing themes. New classes do not affect club/feed pages. */
.post-detail-page, .feed-authoring { --ap-text:#e8ebf0; --ap-muted:#8994a6; --ap-line:rgba(150,164,190,.17); --ap-soft:rgba(150,164,190,.07); --ap-accent:#82a9ff; --ap-bg:#141820; }
body[data-site-theme="white"] .post-detail-page, body[data-site-theme="white"] .feed-authoring { --ap-text:#242935; --ap-muted:#788091; --ap-line:#e5e8ed; --ap-soft:#f4f6f8; --ap-accent:#315dc6; --ap-bg:#fff; }
.post-detail-page .post-detail-shell { width:min(860px,100%); gap:36px; }
.post-detail-page .article-title { letter-spacing:-.035em; line-height:1.15; }
.post-detail-page .article-meta-row { gap:8px 16px; }
.post-detail-page .article-chip:not(.article-chip--category) { background:transparent; border:0; padding:0; min-height:24px; color:var(--ap-muted); }
.post-detail-page .post-detail-card__text { line-height:1.8; overflow-wrap:anywhere; }
.post-detail-page .post-detail-card__footer { border-top:1px solid var(--ap-line); padding-top:20px; margin-top:36px; }
.feed-post-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.feed-post-action { display:inline-flex; gap:8px; align-items:center; justify-content:center; border:1px solid transparent; border-radius:999px; background:transparent; color:var(--ap-muted); padding:10px 13px; min-height:42px; text-decoration:none; font-family:inherit; font-size:13px; font-weight:500; line-height:1.2; cursor:pointer; transition:background .15s,color .15s; }
.feed-post-action svg, .feed-comment__controls svg, .feed-icon-button svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.feed-post-action:hover { background:var(--ap-soft); color:var(--ap-text); }
.feed-post-action--like { background:var(--ap-soft); color:var(--ap-text); padding-inline:16px; }
.feed-post-action--like.is-active { color:var(--ap-accent); background:color-mix(in srgb,var(--ap-accent) 12%,transparent); }
.feed-post-action--like.is-active svg { fill:color-mix(in srgb,var(--ap-accent) 20%,transparent); }
.feed-post-action--edit { margin-left:auto; }
.feed-action-status { font-size:13px; color:var(--ap-muted); margin:12px 0 0; }
.feed-discussion { padding:0 24px; color:var(--ap-text); }
.feed-discussion__header { margin-bottom:22px; }
.feed-discussion__header h2 { font-size:24px; letter-spacing:-.025em; margin:0 0 7px; }
.feed-discussion__header h2 span { font-size:15px; font-weight:400; color:var(--ap-muted); margin-left:8px; }
.feed-discussion__header p, .feed-discussion__empty { font-size:14px; color:var(--ap-muted); }
.feed-comment-compose { background:var(--ap-soft); border:1px solid var(--ap-line); border-radius:14px; padding:16px; margin:16px 0 28px; }
.feed-comment-compose__label { display:block; font-size:12px; color:var(--ap-muted); margin-bottom:8px; }
.feed-comment-compose textarea { box-sizing:border-box; width:100%; min-height:82px; padding:0; border:0; outline:0; resize:vertical; background:transparent; color:var(--ap-text); font:inherit; font-size:14px; line-height:1.65; }
.feed-comment-compose:focus-within { border-color:var(--ap-accent); }
.feed-comment-compose__footer { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:12px; }
.feed-comment-compose__footer span { margin-right:auto; font-size:11px; color:var(--ap-muted); }
.feed-comment-compose__footer [data-comment-cancel] { border:0; background:none; color:var(--ap-muted); font:inherit; font-size:12px; cursor:pointer; }
.feed-comment-compose [data-comment-error], [data-discussion-error] { color:#e07878; font-size:13px; overflow-wrap:anywhere; }
.feed-comment { padding:18px 0 0; }
.feed-comment__entry { display:flex; gap:12px; }
.feed-comment__avatar { width:30px; height:30px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.feed-comment__body { flex:1; min-width:0; }
.feed-comment__meta { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 12px; padding-top:2px; }
.feed-comment__meta strong { font-size:13px; font-weight:600; }
.feed-comment__meta time { color:var(--ap-muted); font-size:11px; }
.feed-comment__text { font-size:14px; line-height:1.7; overflow-wrap:anywhere; padding-top:6px; scroll-margin-top:100px; }
.feed-comment__text p { margin:0 0 8px; }
.feed-comment__recipient { display:inline-block; color:var(--ap-muted); font-size:11px; margin-top:5px; text-decoration:none; }
.feed-comment__recipient:hover { color:var(--ap-accent); }
.feed-comment__controls { display:flex; align-items:center; flex-wrap:wrap; gap:4px 14px; margin-top:8px; }
.feed-comment__controls button { display:inline-flex; align-items:center; gap:5px; min-height:32px; padding:3px 0; background:transparent; border:0; font:inherit; font-size:12px; color:var(--ap-muted); cursor:pointer; }
.feed-comment__controls button:hover, .feed-comment__controls button.is-active { color:var(--ap-accent); }
.feed-comment__controls svg { width:14px; height:14px; }
.feed-comment__like.is-active svg { fill:currentColor; }
.feed-comment__controls form { margin:0; }
.feed-comment__delete { opacity:.65; }
.feed-comment__children { margin:12px 0 0 14px; padding:0 0 3px 27px; border-left:1px solid var(--ap-line); }
.feed-comment__children:hover { border-left-color:color-mix(in srgb,var(--ap-accent) 40%,var(--ap-line)); }
.feed-comment__tombstone { color:var(--ap-muted); font-size:13px; font-style:italic; }
.feed-comment [hidden], .feed-discussion [hidden], .feed-authoring[hidden] { display:none!important; }
.feed-post-action:focus-visible, .feed-comment__controls button:focus-visible { outline:2px solid var(--ap-accent); outline-offset:4px; }
.feed-post-actions button:disabled, .feed-discussion button:disabled { opacity:.5; cursor:wait; }
.post-detail-card__text table { display:block; max-width:100%; overflow-x:auto; }
.post-detail-card__text pre { overflow-x:auto; }
@media(max-width:640px) { .post-detail-page .post-detail-card__body { padding:20px 0; } .feed-discussion { padding:0; } .feed-post-actions { gap:3px; } .feed-post-action { padding:10px; font-size:12px; } .feed-post-action--edit { margin-left:0; } .feed-comment__children { margin-left:10px; padding-left:12px; } .feed-comment__avatar { width:26px; height:26px; } .feed-comment__entry { gap:9px; } .feed-comment-compose__footer span { display:none; } }
@media(prefers-reduced-motion:reduce) { .feed-post-action { transition:none; } }
/* Feed-specific shell and cards. */
.feed-page { --ap-text:#e8ebf0; --ap-muted:#8994a6; --ap-line:rgba(150,164,190,.17); --ap-soft:rgba(150,164,190,.07); --ap-accent:#82a9ff; --ap-bg:#141820; }
body[data-site-theme="white"] .feed-page { --ap-text:#242935; --ap-muted:#788091; --ap-line:#e5e8ed; --ap-soft:#f4f6f8; --ap-accent:#315dc6; --ap-bg:#fff; }
.post-detail-page .post-detail-card { background:transparent; border:0; box-shadow:none; border-radius:0; overflow:visible; color:var(--ap-text); }
.post-detail-page .post-detail-card__header { padding:8px 24px 0; }
.post-detail-page .post-detail-card__avatar { border-radius:50%; }
.post-detail-page .post-detail-card__author-line { color:var(--ap-muted); }
.post-detail-page .post-detail-card__body { padding:24px; }
.post-detail-page .post-detail-card__text { color:var(--ap-text); line-height:1.8; font-size:16px; }
.post-detail-page .post-detail-card__footer { margin:0 24px; padding:20px 0 0; display:block; }
.post-detail-card__text h1, .post-detail-card__text h2, .post-detail-card__text h3 { line-height:1.25; letter-spacing:-.025em; color:var(--ap-text); }
.post-detail-card__text blockquote { border-left:2px solid var(--ap-accent); padding-left:16px; margin-left:0; color:var(--ap-muted); }
.post-detail-card__text img, .post-detail-card__text video, .post-detail-card__text iframe { max-width:100%; }
.post-detail-card__text table { border-collapse:collapse; }
.post-detail-card__text th, .post-detail-card__text td { border:1px solid var(--ap-line); padding:10px; }
.feed-post-view-count { font-size:11px; color:var(--ap-muted); margin-top:16px; }
.feed-post-reaction-picker { position:relative; }
.feed-post-reaction-picker summary { list-style:none; cursor:pointer; font-size:19px; }
.feed-post-reaction-picker summary::-webkit-details-marker { display:none; }
.feed-post-reaction-menu { position:absolute; top:calc(100% + 8px); right:0; width:260px; background:var(--ap-bg); border:1px solid var(--ap-line); border-radius:14px; box-shadow:0 12px 40px rgba(0,0,0,.2); display:grid; grid-template-columns:repeat(3,1fr); padding:8px; z-index:10; }
.feed-post-reaction-menu .is-active { color:var(--ap-accent); background:var(--ap-soft); }
.feed-post { background:var(--ap-bg); border-color:var(--ap-line); box-shadow:none; backdrop-filter:none; border-radius:18px; }
.feed-page .feed-post__footer { border-color:var(--ap-line); }
.feed-page .feed-post__reaction { border:0; background:var(--ap-soft); color:var(--ap-muted); border-radius:999px; min-height:32px; padding:6px 10px; }
.feed-page .feed-post__reaction.is-active { background:color-mix(in srgb,var(--ap-accent) 12%,transparent); color:var(--ap-accent); }
.feed-page .feed-post__meta-link, .feed-page .feed-post__meta-item, .feed-page .feed-post__time { color:var(--ap-muted); }
.feed-page .feed-post__avatar { border-radius:50%; }
.feed-page .feed-post__reaction-more { border:0; background:transparent; }
@media(max-width:640px) { .post-detail-page .post-detail-card__header { padding-inline:0; } .post-detail-page .post-detail-card__body { padding-inline:0; } .post-detail-page .post-detail-card__footer { margin-inline:0; } .feed-post-reaction-menu { right:-20px; max-width:calc(100vw - 32px); } }
