.media-app { display:flex; flex:1; flex-direction:column; min-height:0; background:var(--mw-surface); }
.media-header { display:flex; align-items:center; gap:12px; min-height:64px; padding:12px 16px; border-bottom:1px solid var(--mw-hairline); flex:none; }
.media-header h1 { font-size:21px; font-weight:650; flex:1; }
.media-header .primary { font-size:13px; padding:9px 15px; border-radius:999px; }
.media-body { overflow:auto; min-height:0; flex:1; overscroll-behavior:contain; }
.media-prompt-controls { display:flex; align-items:center; gap:8px; padding:12px 16px 4px; }
.media-prompt-controls select { flex:1; width:0; font-size:13px; }
.media-prompt-controls button { font-size:12px; flex:none; }
.media-generate { padding:8px 16px 0; }
.media-generate .primary { width:100%; font-size:14px; }
.media-note { padding:8px 16px 12px; color:var(--mw-text-muted); font-size:11px; line-height:1.6; }
.media-section-title { padding:16px; font-size:16px; }
.media-inset { margin:12px 16px; }
.media-inset input,.media-inset select { width:100%; }
.forum-feed-tabs { display:flex; border-bottom:1px solid var(--mw-hairline); }
.forum-feed-tabs button { flex:1; padding:14px 0; position:relative; font-size:14px; }
.forum-feed-tabs .active { font-weight:700; }
.forum-feed-tabs .active::after { content:''; position:absolute; bottom:0; left:30%; right:30%; height:3px; border-radius:3px; background:var(--mw-accent); }
.forum-post { padding:14px 16px 10px; display:flex; align-items:flex-start; gap:10px; border-bottom:1px solid var(--mw-hairline); overflow-wrap:anywhere; }
.forum-avatar { padding:0; flex:none; }
.forum-post .avatar { width:38px; height:38px; font-size:15px; }
.forum-post-main { flex:1; min-width:0; }
.forum-author { padding:0; font-size:14px; font-weight:700; text-align:left; }
.forum-meta { color:var(--mw-text-muted); font-size:11px; }
.forum-text { display:block; width:100%; text-align:left; padding:5px 0; font-size:14px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.forum-topic { color:var(--mw-accent); padding:5px 0; font-size:12px; }
.forum-image { display:block; width:100%; max-height:350px; object-fit:contain; border:1px solid var(--mw-hairline); border-radius:10px; margin:8px 0; }
.forum-actions { display:flex; justify-content:space-between; gap:4px; margin-top:7px; }
.forum-actions button { display:flex; gap:4px; align-items:center; min-height:36px; color:var(--mw-text-secondary); padding:4px; }
.forum-actions .active { color:var(--mw-accent); background:var(--mw-accent-soft); border-radius:6px; }
.forum-icon { width:20px; height:20px; }
.forum-actions small { font-size:11px; }
.forum-extra { display:flex; justify-content:flex-end; gap:8px; font-size:11px; }
.forum-quote { display:block; width:100%; padding:12px; margin:8px 0; border:1px solid var(--mw-hairline); border-radius:10px; background:var(--mw-fill); text-align:left; font-size:12px; line-height:1.6; }
.forum-nav { display:flex; flex:none; border-top:1px solid var(--mw-hairline); padding:6px; }
.forum-nav button { flex:1; display:flex; flex-direction:column; align-items:center; gap:5px; min-height:48px; justify-content:center; }
.forum-nav .active { color:var(--mw-accent); background:var(--mw-accent-soft); border-radius:6px; }
.forum-nav small { font-size:10px; }
.forum-notification { width:100%; text-align:left; padding:18px; border-bottom:1px solid var(--mw-hairline); font-size:13px; line-height:1.6; }
.forum-profile { padding:0 16px 18px; border-bottom:1px solid var(--mw-hairline); }
.forum-cover { height:90px; background:var(--mw-accent-soft); margin:0 -16px -22px; }
.forum-profile .avatar { width:64px; height:64px; border:4px solid var(--mw-surface); }
.forum-profile h2 { font-size:20px; margin:10px 0 5px; }
.forum-profile small { color:var(--mw-text-muted); }
.forum-profile p { font-size:13px; line-height:1.7; margin:10px 0; }
.forum-topics { padding:16px; display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.forum-topics h2 { font-size:18px; }
.news-body { padding-bottom:20px; }
.news-shelf-heading { padding:24px 20px 18px; text-align:center; border-top:1px solid var(--mw-hairline); }
.news-shelf-heading small { font-size:10px; letter-spacing:3px; color:var(--mw-accent); }
.news-shelf-heading h2 { font-family:Georgia,'Songti SC',serif; font-size:27px; margin-top:9px; }
.news-edition { display:block; width:calc(100% - 32px); margin:0 16px 16px; border:1px solid var(--mw-hairline); padding:18px; text-align:left; border-radius:6px; }
.news-edition>small { font-size:10px; color:var(--mw-text-secondary); line-height:1.7; display:block; }
.news-edition h2 { font-family:Georgia,'Songti SC',serif; font-size:25px; padding:10px 0; border-bottom:3px double var(--mw-hairline); text-align:center; }
.news-edition h3 { font-family:Georgia,'Songti SC',serif; font-size:19px; line-height:1.5; margin:14px 0 8px; }
.news-edition p { font-size:12px; line-height:1.8; margin-bottom:12px; }
.news-masthead { margin:18px 16px 0; padding:10px 0 16px; border-bottom:3px double var(--mw-ink); text-align:center; }
.news-masthead h2 { font-family:Georgia,'Songti SC',serif; font-size:29px; margin-bottom:9px; overflow-wrap:anywhere; }
.news-masthead small { font-size:10px; color:var(--mw-text-secondary); }
.news-sections { display:flex; gap:6px; overflow:auto; padding:12px 16px; border-bottom:1px solid var(--mw-hairline); }
.news-sections button { white-space:nowrap; padding:7px 10px; font-size:12px; }
.news-sections .active { background:var(--mw-accent-soft); color:var(--mw-accent); border-radius:6px; }
.news-story { display:block; width:100%; padding:18px; text-align:left; border-bottom:1px solid var(--mw-hairline); }
.news-kicker { font-size:11px; color:var(--mw-accent); letter-spacing:1px; }
.news-story h2 { font-family:Georgia,'Songti SC',serif; font-size:19px; line-height:1.5; margin:7px 0; }
.news-story.headline h2 { font-size:25px; }
.news-story p { font-size:12px; line-height:1.8; }
.news-story>small:last-child { display:block; font-size:10px; color:var(--mw-text-muted); margin-top:8px; }
.news-article { padding:24px 20px; overflow-wrap:anywhere; }
.news-article h1 { font-family:Georgia,'Songti SC',serif; font-size:28px; line-height:1.4; margin:9px 0; }
.news-article>p { font-size:14px; line-height:2; margin:15px 0; white-space:pre-wrap; }
.news-article .news-byline { font-size:11px; color:var(--mw-text-muted); }
.news-article .news-summary { font-size:13px; padding:12px 0; border-block:1px solid var(--mw-hairline); color:var(--mw-text-secondary); }
.forum-app .avatar { border-radius:50%; }
