.news-main { min-height: calc(100vh - 76px); padding: 76px 10vw 110px; background: linear-gradient(180deg, rgba(5,20,34,.7), rgba(7,21,34,.85)), url('../assets/img/closers%20game%20%20background.png') center/cover fixed; }
.news-intro { display: flex; align-items: end; justify-content: space-between; gap: 30px; max-width: 1160px; margin: 0 auto 30px; padding-bottom: 32px; border-bottom: 1px solid rgba(124,190,232,.3); }
.news-intro h1 { margin: 0; color: white; font-size: clamp(56px, 8vw, 100px); line-height: .85; }
.news-intro h1 em { color: #6dccff; }
.news-intro p:last-child { max-width: 420px; margin: 20px 0 0; color: #b8d2e2; font-size: 14px; line-height: 1.7; }
.news-composer { max-width: 1160px; margin: 0 auto 34px; padding: 26px; border: 1px solid rgba(124,190,232,.28); background: rgba(6,18,30,.85); }
.news-composer h2 { margin: 0 0 18px; color: white; font: 700 32px var(--display); }
.news-composer-label { display: grid; gap: 6px; margin-bottom: 14px; color: #a9c7db; font: 700 10px var(--body); letter-spacing: .8px; text-transform: uppercase; }
.news-composer-label input { height: 42px; padding: 0 10px; border: 1px solid rgba(124,190,232,.32); background: rgba(8,35,61,.82); color: white; font: 14px var(--body); }
.news-composer-actions { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.news-composer-actions small { color: #ff9c8c; font: 600 11px var(--body); }
.news-feed { display: grid; gap: 22px; max-width: 1160px; margin: 0 auto; }
.news-post-card { padding: 26px 30px; border: 1px solid rgba(23,32,43,.1); border-radius: 4px; background: #f7f8f6; box-shadow: 0 16px 40px rgba(0,0,0,.25); overflow: hidden; }
.news-post-author { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.news-post-author img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; }
.news-post-author strong { color: var(--ink); font: 700 13px var(--body); }
.news-post-role { padding: 3px 8px; border-radius: 999px; color: white; font: 800 9px var(--body); letter-spacing: .5px; text-transform: uppercase; }
.news-post-role-admin { background: #e63946; }
.news-post-role-editor { background: #1769ff; }
.news-post-role-lead_editor { background: #f7a531; }
.news-post-meta { display: flex; align-items: center; gap: 10px; margin-left: auto; color: var(--muted); font: 700 10px var(--body); letter-spacing: .6px; text-transform: uppercase; }
.news-post-title { margin: 0 0 12px; color: var(--ink); font-size: clamp(26px, 3.4vw, 40px); line-height: 1; overflow-wrap: break-word; word-break: break-word; }
.news-post-status { display: inline-block; margin-bottom: 12px; color: var(--coral); font: 700 10px var(--body); letter-spacing: 1.2px; text-transform: uppercase; }
.news-post-edit { margin-top: 16px; height: 34px; padding: 0 16px; border: 1px solid var(--blue); background: none; color: var(--blue); font: 700 10px var(--body); letter-spacing: .6px; text-transform: uppercase; cursor: pointer; }
.news-empty { color: #f1f5f8; font: 600 14px var(--body); text-align: center; padding: 40px 0; }

.news-post-summary { cursor: pointer; transition: border-color .2s, transform .2s; }
.news-post-summary:hover, .news-post-summary:focus-visible { border-color: var(--blue); outline: none; transform: translateY(-2px); }
.news-post-summary .news-post-title { margin: 0; }

.news-modal { position: fixed; inset: 0; z-index: 40; }
.news-modal-backdrop { position: absolute; inset: 0; background: rgba(2,8,16,.82); }
.news-modal-panel { position: relative; max-width: 800px; max-height: 84vh; margin: 6vh auto 0; padding: 34px 38px; overflow-y: auto; overflow-x: hidden; border-radius: 4px; background: #f7f8f6; box-shadow: 0 25px 60px rgba(0,0,0,.5); }
.news-modal-close { position: absolute; top: 14px; right: 14px; width: 38px; height: 38px; border: 1px solid rgba(23,32,43,.2); background: white; color: var(--ink); font-size: 26px; line-height: 1; cursor: pointer; }
