/* MACEDONIA (MSV) — shared styles for sub-pages (support / ranking / guide / community).
   Reuses tokens & components from styles.css. */

/* current nav item */
.main-nav a.current{color:#fff}
.main-nav a.current:after{transform:scaleX(1)}

/* ---- compact page hero ---- */
.page-hero{position:relative;overflow:hidden;background:#070708;border-bottom:1px solid #1d1d21}
.page-hero-bg{position:absolute;inset:0;background-image:radial-gradient(circle at 80% 22%,rgba(232,0,22,.26),transparent 32%),linear-gradient(90deg,rgba(7,7,8,.97),rgba(7,7,8,.8) 55%,rgba(7,7,8,.5));background-size:cover;background-position:center;z-index:0}
.page-hero-bg.emblem{background-image:linear-gradient(180deg,rgba(7,7,8,.45),rgba(7,7,8,.32) 45%,rgba(7,7,8,.82)),radial-gradient(circle at 82% 30%,rgba(232,0,22,.18),transparent 44%),linear-gradient(90deg,rgba(7,7,8,.95),rgba(7,7,8,.84) 55%,rgba(7,7,8,.76)),url('assets/hero-main.webp');background-size:auto,auto,auto,cover;background-position:center 22%;background-repeat:no-repeat}
/* ultra-wide: cap the hero image at its native width (centered) so it never over-enlarges; gradients still span full width */
@media(min-width:1984px){.page-hero-bg.emblem{background-size:auto,auto,auto,1983px auto}}
.page-hero-inner{position:relative;z-index:1;padding:64px 0 56px}
.page-hero h1{font-size:clamp(30px,4.4vw,50px);line-height:1.06;margin:6px 0 12px;font-weight:900;letter-spacing:-.035em}
.page-hero h1 em{font-style:normal;color:#ff3346;text-shadow:0 0 24px rgba(232,0,22,.24)}
.page-hero p{font-size:15px;color:#c4c4cc;line-height:1.75;max-width:640px;margin:0}

/* ---- tabs ---- */
.tabs{display:flex;gap:6px;border-bottom:1px solid #2a2a30;margin:0 0 30px;flex-wrap:wrap}
.tab-btn{border:0;background:none;color:#8d8d96;padding:16px 22px;cursor:pointer;font:600 15px 'Oswald',sans-serif;letter-spacing:.06em;position:relative}
.tab-btn:hover{color:#e6e6ea}
.tab-btn.active{color:#fff}
.tab-btn.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--red)}
.tab-panel[hidden]{display:none}
.section-pad{padding:64px 0}

/* ---- forms ---- */
.msv-form{display:grid;gap:16px;max-width:640px}
.msv-form .row{display:grid;gap:6px}
.msv-form label{font-size:12px;color:#9b9ba5;letter-spacing:.02em}
.msv-form label .req{color:var(--red2);margin-left:4px}
.msv-form input,.msv-form select,.msv-form textarea{width:100%;background:#0c0c0f;border:1px solid #35353b;color:#fff;padding:12px 13px;font:inherit}
.msv-form textarea{min-height:170px;resize:vertical;line-height:1.6}
.msv-form input:focus,.msv-form select:focus,.msv-form textarea:focus{outline:none;border-color:#6a2b32;box-shadow:0 0 0 2px rgba(232,0,22,.12)}
.msv-form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-actions{display:flex;gap:10px;margin-top:6px}
.form-note{font-size:12px;color:#77777f;line-height:1.6;margin-top:4px}
.field-help{font-size:11px;color:#6f6f78}

/* ---- info cards / donate ---- */
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.info-card{border:1px solid #29292f;background:linear-gradient(180deg,#151519,#111114);padding:26px}
.info-card .ic{width:46px;height:46px;display:grid;place-items:center;border:1px solid #44444c;color:#ff4a59;font-size:20px;margin-bottom:14px}
.info-card h3{font:600 17px 'Oswald',sans-serif;letter-spacing:.04em;margin:0 0 8px}
.info-card p{margin:0;color:#a7a7b0;font-size:13px;line-height:1.65}
.donate-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
/* single-tier donation: centered focal card (balanced, not orphaned left) */
.donate-tiers.single{grid-template-columns:1fr;max-width:440px;margin:26px auto 0}
.donate-tiers.single .tier{padding:34px 28px;border-color:#5a2229;background:linear-gradient(180deg,#17100f,#111115);box-shadow:0 0 0 1px rgba(232,0,22,.18),0 14px 44px rgba(0,0,0,.4)}
.donate-tiers.single .tier .amt b.msv-q{font-size:38px}
.tier{border:1px solid #2b2b31;background:#111115;padding:24px;text-align:center;position:relative}
.tier.best{border-color:#7a1420;box-shadow:0 0 0 1px rgba(232,0,22,.1)}
.tier .amt{font:700 30px 'Oswald',sans-serif;color:#fff}
.tier .amt small{display:block;font-size:12px;color:#8b8b93;letter-spacing:.1em;margin-top:4px}
.tier ul{list-style:none;padding:0;margin:16px 0 20px;text-align:left}
.tier li{padding:8px 0;border-bottom:1px solid #24242a;font-size:13px;color:#cfcfd5;display:flex;gap:8px}
.tier li:before{content:"◆";color:#ff4a59;font-size:9px;transform:translateY(3px)}
.tier li:last-child{border-bottom:0}
.callout{border:1px solid #3a2a2e;background:linear-gradient(180deg,#17100f,#120e0f);padding:20px 22px;margin-top:22px;color:#d5c6c8;font-size:13px;line-height:1.7}
.callout b{color:#ff8a95}
.tier .amt .msv-u{font-size:15px;color:#ff5d6c;font-weight:700;letter-spacing:.04em;margin-left:5px}
.tier .amt .fx{display:block;font-size:12px;color:#a6a6ae;font-weight:500;letter-spacing:.02em;margin-top:6px}
.rate-note{max-width:760px;margin:16px auto 0;font-size:12px;color:#8b8b93;line-height:1.6;text-align:center}

/* ---- ranking board ---- */
.rank-board{border:1px solid #29292f;background:#0f0f12}
.rank-head,.rank-row{display:grid;grid-template-columns:70px 1fr 150px;align-items:center;gap:12px;padding:14px 20px}
.tabs.tabs-sub{margin-top:-16px}
.rank-head{background:#141418;border-bottom:1px solid #2a2a30;font:600 12px 'Oswald',sans-serif;letter-spacing:.1em;color:#8f8f98}
.rank-row{border-bottom:1px solid #1e1e23}
.rank-row:last-child{border-bottom:0}
.rank-row:nth-child(even){background:#111115}
.rank-row .pos{font:700 20px 'Oswald',sans-serif;color:#6b6b76;display:flex;align-items:center;gap:10px}
.rank-row.top .pos{color:#fff}
.rank-row .medal{width:26px;height:26px;display:grid;place-items:center;font:700 13px 'Oswald',sans-serif;border-radius:50%;color:#0b0b0d}
.rank-row.r1 .medal{background:linear-gradient(180deg,#ffd873,#d9a227)}
.rank-row.r2 .medal{background:linear-gradient(180deg,#dfe3e8,#a9b0b8)}
.rank-row .name{display:flex;flex-direction:column}
.rank-row .name b{font-size:15px;color:#f2f2f4}
.rank-row .name small{color:#7d7d86;font-size:11px;margin-top:2px}
.rank-row .lv{font:600 15px 'Oswald',sans-serif;color:#cdd0d6}
.rank-row .score{font:700 16px 'Oswald',sans-serif;color:#ff8a95;text-align:right}
.rank-row.r3 .medal{background:linear-gradient(180deg,#e6a877,#b9773f)}
.rank-note{margin-top:14px;font-size:12px;color:#77777f}
.rank-legend{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 20px;font-size:12px;color:#9a9aa2}
.rank-legend span{display:inline-flex;align-items:center;gap:6px}
.rank-legend i{width:9px;height:9px;transform:rotate(45deg);background:var(--red)}

/* ---- guide ---- */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.guide-card{border:1px solid #29292f;background:linear-gradient(180deg,#151519,#111114);padding:26px;display:flex;flex-direction:column;gap:8px}
.guide-card .step-n{font:700 13px 'Oswald',sans-serif;letter-spacing:.12em;color:#ff5d6c}
.guide-card h3{font:600 18px 'Oswald',sans-serif;letter-spacing:.03em;margin:2px 0 4px}
.guide-card p{margin:0;color:#a7a7b0;font-size:13px;line-height:1.65}
.faq{border-top:1px solid #24242a;margin-top:8px}
.faq-item{border-bottom:1px solid #24242a}
.faq-q{width:100%;text-align:left;background:none;border:0;color:#eaeaee;padding:18px 2px;cursor:pointer;font:600 15px 'Noto Sans KR',sans-serif;display:flex;justify-content:space-between;gap:16px}
.faq-q .pm{color:var(--red2);font-size:20px;flex:0 0 auto}
.faq-a{padding:0 2px 18px;color:#a7a7b0;font-size:13px;line-height:1.75}
.faq-a[hidden]{display:none}

/* ---- community boards ---- */
.board-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.board-search{display:flex;gap:8px}
.board-search input{background:#0c0c0f;border:1px solid #35353b;color:#fff;padding:9px 12px;min-width:190px}
.board{border:1px solid #29292f;background:#0f0f12}
.board-head,.board-row{display:grid;grid-template-columns:70px 1fr 130px 90px 80px;gap:12px;align-items:center;padding:13px 18px}
.board-head{background:#141418;border-bottom:1px solid #2a2a30;font:600 12px 'Oswald',sans-serif;letter-spacing:.09em;color:#8f8f98}
.board-row{border-bottom:1px solid #1e1e23;font-size:13px;color:#d2d2d8;cursor:pointer}
.board-row:last-child{border-bottom:0}
.board-row:hover{background:#15151a}
.board-row .b-title{color:#ececed;display:flex;align-items:center;gap:8px}
.board-row .b-title .cat{font:11px 'Oswald',sans-serif;letter-spacing:.06em;color:#ff6673;border:1px solid #5a2229;padding:2px 6px}
.board-row .b-meta{color:#85858e;font-size:12px}
.board-row .b-no,.board-row .b-views{color:#6f6f78;font:600 13px 'Oswald',sans-serif}
/* comment-count badge next to a post title/caption (item.comments) */
.b-cmt{color:#ff8a95;font-weight:600;font-size:.9em;white-space:nowrap}
/* empty state (live boards / ranking with no rows) */
.board-empty{padding:44px 20px;text-align:center;color:#8b8b93;font-size:14px;border-bottom:1px solid #1e1e23}
.shot-grid .board-empty,.video-grid .board-empty{grid-column:1/-1;border-bottom:0}
.pager{display:flex;justify-content:center;gap:6px;margin-top:22px}
.pager button{min-width:34px;height:34px;border:1px solid #45454f;background:#26262d;color:#e6e6ea;cursor:pointer;font:600 13px 'Oswald',sans-serif}
.pager button:hover{background:#33333b;border-color:#5b5b66}
.pager button.active{background:var(--red);border-color:var(--red);color:#fff}
.pager button:disabled{opacity:.38;cursor:default}
.pager button:disabled:hover{background:#26262d;border-color:#45454f}
/* board post detail modal */
.post-meta{font-size:12px;color:#8b8b93;margin:0 0 12px;letter-spacing:.02em}
.post-body{color:#d2d2d8;font-size:14px;line-height:1.75;word-break:break-word;overflow-wrap:anywhere;max-height:54vh;overflow:auto}
.detail-media{display:block;max-width:100%;max-height:60vh;margin:0 auto 12px;border:1px solid #2b2b31;background:#0c0c0f}
/* NOTE: image lightbox (.lb-zoom / .msv-lightbox / .lb-*) moved to styles.css so
   index (news detail) and community (screenshot board) share ONE component. */
/* comments (all boards, in detail modal) */
.cmt-wrap{margin-top:16px;border-top:1px solid #2b2b31;padding-top:14px}
.cmt-title{margin:0 0 10px;font:600 14px 'Oswald',sans-serif;color:#e6e6ea;letter-spacing:.02em}
.cmt-count{color:var(--red2);font-size:13px;margin-left:2px}
.cmt-list{list-style:none;margin:0 0 12px;padding:0;max-height:34vh;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:10px}
.cmt-item{box-sizing:border-box;max-width:100%;border:1px solid #26262d;background:#141418;border-radius:4px;padding:9px 11px}
.cmt-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}
.cmt-meta{font-size:11px;color:#8b8b93;letter-spacing:.02em}
.cmt-body{color:#d2d2d8;font-size:13px;line-height:1.6;word-break:break-word;overflow-wrap:anywhere}
.cmt-del{border:1px solid #45454f;background:transparent;color:#9a9aa3;cursor:pointer;font-size:11px;padding:2px 8px;border-radius:3px}
.cmt-del:hover{border-color:var(--red);color:#fff}
.cmt-note{color:#8b8b93;font-size:13px;margin:0 0 12px}
.cmt-note.cmt-login{color:#b7b7bf;background:#141418;border:1px dashed #33333b;border-radius:4px;padding:9px 11px;text-align:center}
.cmt-form{display:flex;flex-direction:column;gap:8px}
.cmt-input{width:100%;box-sizing:border-box;resize:vertical;min-height:48px;background:#0f0f12;border:1px solid #33333b;color:#e6e6ea;border-radius:4px;padding:8px 10px;font:400 13px/1.5 inherit}
.cmt-input:focus{outline:none;border-color:var(--red)}
.cmt-form-actions{display:flex;justify-content:flex-end}
.cmt-err{color:#ff8a95;font-size:12px;margin:2px 0 0}
/* my inquiries (inquiry.html history) */
.inquiry-history{padding-top:8px}
.inq-list{list-style:none;margin:0;padding:0;border:1px solid #26262d;border-radius:6px;overflow:hidden}
.inq-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:13px 16px;background:#141418;border-bottom:1px solid #202027;cursor:pointer}
.inq-item:last-child{border-bottom:0}
.inq-item:hover{background:#1b1b21}
.inq-subject{color:#e6e6ea;font-size:14px;font-weight:600;word-break:break-word;overflow-wrap:anywhere}
.inq-badge{font-size:11px;color:#9a9aa3;border:1px solid #3a3a42;border-radius:10px;padding:2px 10px;white-space:nowrap}
.inq-badge.open{color:#ffca6b;border-color:#5a4a2a}
.inq-date{color:#70707a;font-size:12px;white-space:nowrap}
.inq-note{color:#8b8b93;font-size:13px;margin:0;padding:16px;border:1px dashed #33333b;border-radius:6px;text-align:center;background:#121216}
.inq-replies{margin-top:14px;border-top:1px solid #2b2b31;padding-top:12px}
.inq-rep-title{margin:0 0 8px;font:600 13px 'Oswald',sans-serif;color:var(--red2);letter-spacing:.02em}
.inq-reply{background:#171b22;border:1px solid #26303a;border-radius:5px;padding:10px 12px;margin-bottom:8px}
.inq-reply-body{color:#d7dbe0;font-size:13px;line-height:1.6;word-break:break-word;overflow-wrap:anywhere}
.inq-reply-date{color:#70707a;font-size:11px;margin-top:5px}
@media(max-width:560px){.inq-item{grid-template-columns:1fr auto;gap:4px 10px}.inq-date{grid-column:1/-1}}

/* screenshot gallery */
.shot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.shot{position:relative;border:1px solid #29292f;background:#0f0f12;aspect-ratio:16/10;overflow:hidden;cursor:pointer;display:grid;place-items:center}
.shot .ph{position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(232,0,22,.2),transparent 40%),linear-gradient(150deg,#17171c,#0d0d10)}
.shot .glyph{position:relative;color:#3a3a42;font-size:34px}
.shot .cap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);font-size:12px;color:#dcdce2;z-index:1}
.shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.login-hint{font-size:12px;color:#8b8b93;align-self:center}
.upload-preview{max-width:100%;max-height:240px;display:block;border:1px solid #2b2b31;background:#0c0c0f}
video.upload-preview{width:100%;height:auto}

/* video board */
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.vid{position:relative;border:1px solid #29292f;background:#0f0f12;aspect-ratio:16/10;overflow:hidden;display:grid;place-items:center}
.vid .ph{position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(232,0,22,.2),transparent 40%),linear-gradient(150deg,#17171c,#0d0d10)}
.vid .glyph{position:relative;color:#3a3a42;font-size:34px}
.vid .cap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);font-size:12px;color:#dcdce2;z-index:2;pointer-events:none}
.vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;z-index:1}

@media (max-width:900px){
  .info-grid,.guide-grid,.donate-tiers,.shot-grid,.video-grid{grid-template-columns:1fr 1fr}
  .rank-head,.rank-row{grid-template-columns:56px 1fr 130px}
}
@media (max-width:620px){
  .info-grid,.guide-grid,.donate-tiers,.shot-grid,.video-grid{grid-template-columns:1fr}
  .msv-form .two{grid-template-columns:1fr}
  .rank-head,.rank-row{grid-template-columns:48px 1fr 92px;padding:12px 14px}
  .rank-row .lv,.rank-head .h-lv{display:none}
  .board-head,.board-row{grid-template-columns:1fr 64px 56px}
  .board-head .h-no,.board-row .b-no,.board-head .h-date,.board-row .b-date{display:none}
  .board-search{width:100%}
  .board-search input{min-width:0;flex:1}
}
@media (max-width:380px){
  .rank-head,.rank-row{grid-template-columns:40px 1fr 76px;gap:8px;padding:11px 12px}
  .rank-row .pos{font-size:17px}
  .rank-row .name b{font-size:14px}
  .rank-row .score{font-size:13px}
}

/* ========== admin console (admin.html) ========== */
.btn-sm{padding:7px 12px;font-size:12px;letter-spacing:.02em}
.admin-bar{background:#0b0b0d;border-bottom:1px solid #1d1d21}
.admin-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;flex-wrap:wrap}
.admin-brand{display:flex;align-items:center;gap:12px}
.admin-tag{font:700 11px 'Oswald',sans-serif;letter-spacing:.16em;color:#ff5d6c;border:1px solid #5a2229;padding:3px 8px}
.admin-bar-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.admin-session{display:flex;align-items:center;gap:12px}
.admin-who{font-size:13px;color:#c4c4cc}.admin-who b{color:#fff}
.admin-login{max-width:460px;margin:0 auto}
.admin-login .eyebrow{margin-bottom:6px}
.admin-login h1{font-size:clamp(26px,3.6vw,38px);font-weight:900;letter-spacing:-.03em;margin:0 0 10px}
.admin-login-desc{color:#a7a7b0;font-size:14px;line-height:1.7;margin:0 0 24px}
.admin-login .auth-form{max-width:none}
#adminPreviewNote{border-top:1px solid #24242a;margin-top:8px;padding-top:16px;display:grid;gap:10px}

.admin-dash-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.admin-dash-head h1{font-size:clamp(26px,3.6vw,38px);font-weight:900;letter-spacing:-.03em;margin:4px 0 0}
.admin-preview-banner{margin:0;font-size:12px;color:#ffca6b;border:1px solid #4a3a1e;background:#17130b;padding:8px 14px}

.admin-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:30px}
.admin-stat{border:1px solid #29292f;background:linear-gradient(180deg,#151519,#111114);padding:18px 16px;display:flex;flex-direction:column;gap:6px}
.admin-stat-v{font:700 26px 'Oswald',sans-serif;color:#fff;line-height:1}
.admin-stat-l{font-size:12px;color:#8f8f98;letter-spacing:.02em}
.admin-stat.ok .admin-stat-v{color:#4ade80}
.admin-stat.bad .admin-stat-v{color:#ff5d6c}

.admin-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}
.admin-panel{border:1px solid #29292f;background:#0f0f12;padding:0 0 4px;margin-bottom:22px}
.admin-panel-h{font:600 15px 'Oswald',sans-serif;letter-spacing:.05em;color:#e6e6ea;margin:0;padding:16px 18px;border-bottom:1px solid #24242a}
.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #24242a}
.admin-panel-head .admin-panel-h{padding:0;border-bottom:0}
.admin-table{padding:6px 0}
.admin-thead,.admin-trow{display:grid;gap:10px;align-items:center;padding:11px 18px}
.admin-thead{font:600 11px 'Oswald',sans-serif;letter-spacing:.08em;color:#8f8f98;border-bottom:1px solid #1e1e23}
.admin-trow{font-size:13px;color:#d2d2d8;border-bottom:1px solid #18181c}
.admin-trow:last-child{border-bottom:0}
.admin-trow:hover{background:#141418}
.admin-cell-strong{color:#ececed;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-cell-strong.is-hidden{color:#6f6f78;text-decoration:line-through}
.admin-badge{font:600 11px 'Oswald',sans-serif;letter-spacing:.04em;color:#8f8f98;border:1px solid #33333b;padding:2px 8px;justify-self:start}
.admin-badge.open{color:#ffca6b;border-color:#4a3a1e}
.admin-badge.answered{color:#4ade80;border-color:#1f4a2e}
/* admin inquiry detail (message/contact visible + reply in same modal) */
.admin-inq-row{cursor:pointer}
.admin-inq-detail{margin-bottom:4px}
.admin-inq-detail .admin-kv{display:flex;gap:10px;padding:5px 0;border-bottom:1px solid #202027;font-size:13px}
.admin-kv-k{flex:0 0 92px;color:#8f8f98}
.admin-kv-v{color:#e0e0e5;word-break:break-word;overflow-wrap:anywhere}
.admin-kv-label{margin:12px 0 6px;font:600 12px 'Oswald',sans-serif;color:#8f8f98;letter-spacing:.04em}
.admin-reply{background:#171b22;border:1px solid #26303a;border-radius:5px;padding:9px 11px;margin-bottom:8px}
.admin-reply-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}
.admin-reply-admin{color:#7db8ff;font-size:12px;font-weight:600}
.admin-reply-date{color:#70707a;font-size:11px}
.admin-reply-body{color:#d7dbe0;font-size:13px;line-height:1.6;word-break:break-word;overflow-wrap:anywhere}
.admin-empty{padding:26px 18px;text-align:center;color:#77777f;font-size:13px}
.admin-news-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.admin-news-thumb{width:28px;height:28px;border-radius:4px;object-fit:cover;vertical-align:middle;margin-right:8px;border:1px solid #2b2b31}
/* news edit-mode media manager */
.news-mm{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.news-mm[aria-busy="true"]{opacity:.55}
.news-mm-loading,.news-mm-empty{color:#77777f;font-size:12px}
.news-mm-item{width:104px;border:1px solid #2b2b31;border-radius:7px;background:#141418;overflow:hidden;display:flex;flex-direction:column}
.news-mm-item.is-rep{border-color:var(--red)}
.news-mm-thumb{position:relative;width:100%;height:70px;background:#0d0d10;display:flex;align-items:center;justify-content:center;overflow:hidden}
.news-mm-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.news-mm-vid{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;text-shadow:0 1px 4px rgba(0,0,0,.7);pointer-events:none}
.news-mm-badge{position:absolute;top:4px;left:4px;background:var(--red);color:#fff;font:600 10px 'Oswald',sans-serif;letter-spacing:.04em;padding:1px 6px;border-radius:3px}
.news-mm-btns{display:flex;gap:4px;padding:5px;flex-wrap:wrap}
.btn-mini{flex:1;border:1px solid #33333b;background:#1b1b20;color:#c4c4cc;padding:4px 6px;cursor:pointer;font:600 11px 'Oswald',sans-serif;letter-spacing:.03em;border-radius:4px;white-space:nowrap}
.btn-mini:hover:not(:disabled){border-color:#55555f;color:#fff}
.btn-mini:disabled{opacity:.4;cursor:default}
.btn-mini-red:hover:not(:disabled){border-color:var(--red);color:#fff}
.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.admin-del:hover:not(:disabled){border-color:var(--red);color:#fff}
.admin-row-actions .btn:disabled,.admin-news-actions .btn:disabled{opacity:.4;cursor:default}
.admin-subtabs{display:flex;gap:6px;flex-wrap:wrap}
.admin-subtab{border:1px solid #33333b;background:#141418;color:#8f8f98;padding:5px 11px;cursor:pointer;font:600 12px 'Oswald',sans-serif;letter-spacing:.04em}
.admin-subtab:hover{color:#e6e6ea}
.admin-subtab.active{background:var(--red);border-color:var(--red);color:#fff}
.admin-log-filter{display:flex;gap:8px;align-items:center}
.admin-log-filter input{background:#0c0c0f;border:1px solid #35353b;color:#fff;padding:7px 10px;font:inherit;min-width:150px;max-width:200px}
.admin-cell-ip{font:600 13px 'Oswald',sans-serif;color:#cdd0d6;letter-spacing:.02em}
.admin-cell-mono{color:#9b9ba5;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media (max-width:900px){
  .admin-stats{grid-template-columns:repeat(3,1fr)}
  .admin-cols{grid-template-columns:1fr}
}
@media (max-width:620px){
  .admin-stats{grid-template-columns:repeat(2,1fr)}
  .admin-thead{display:none}
  .admin-trow{grid-template-columns:1fr auto!important;gap:6px 10px;padding:12px 16px}
  .admin-trow>span:nth-child(n+3){grid-column:1/-1;color:#85858e;font-size:12px}
}

/* ==========================================================================
   PREMIUM UPLIFT LAYER (interior pages) — uses tokens from styles.css :root.
   Angular gothic kept; hover lift/glow, unified red focus, refined tabs/rows.
   Additive/override; verified zero-regression across sub-pages.
   ========================================================================== */
/* informational & interactive cards: gentle lift + brighten + red glow */
.info-card,.guide-card,.tier{transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.info-card:hover,.guide-card:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--shadow-1),var(--glow-red)}
.info-card .ic{transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease),background var(--dur) var(--ease)}
.info-card:hover .ic{border-color:rgba(232,0,22,.55);color:#fff;background:rgba(232,0,22,.14)}
.tier:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--shadow-1)}
.tier.best:hover,.donate-tiers.single .tier:hover{box-shadow:0 0 0 1px rgba(232,0,22,.22),var(--shadow-2),var(--glow-red)}

/* screenshot / video tiles (clickable): lift + red ring on hover */
.shot,.vid{transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.shot:hover,.vid:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--shadow-1),0 0 0 1px rgba(232,0,22,.25)}

/* board & ranking & admin rows: smooth hover; board rows get a left red accent (no lift) */
.board-row,.rank-row,.admin-trow{transition:background var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.board-row:hover{box-shadow:inset 3px 0 0 var(--red)}
.rank-row:hover{background:#15151b}
.inq-item{transition:background var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.inq-item:hover{box-shadow:inset 3px 0 0 var(--red)}

/* tabs: smoother; glowing active underline */
.tab-btn,.admin-subtab{transition:color var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.tab-btn.active:after{box-shadow:0 0 10px rgba(232,0,22,.55)}

/* unify form focus to crisp brand red (matches home inputs) */
.msv-form input,.msv-form select,.msv-form textarea,.board-search input,.admin-log-filter input,.cmt-input{transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.msv-form input:focus,.msv-form select:focus,.msv-form textarea:focus,.board-search input:focus,.admin-log-filter input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(232,0,22,.14)}

/* pager buttons: smooth hover lift */
.pager button{transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease)}
.pager button:hover:not(:disabled){transform:translateY(-1px)}

/* reduced motion: no transforms/transitions */
@media (prefers-reduced-motion:reduce){
  .info-card,.guide-card,.tier,.shot,.vid,.board-row,.rank-row,.admin-trow,.inq-item,.tab-btn,.admin-subtab,.pager button{transition:none}
  .info-card:hover,.guide-card:hover,.tier:hover,.shot:hover,.vid:hover,.pager button:hover:not(:disabled){transform:none}
}
