/* Сессия 7: обычная страница форума — новости с табами по темам (без картинок), список форумов и топиков с последним сообщением, баннеры справа */
.pg-forum{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.fmain{display:flex;flex-direction:column;gap:16px;min-width:0}
.fside{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--hdr-h) + 26px);display:flex;flex-direction:column;gap:16px}
.fside .gad.tall{height:600px}.fside .gad.box{height:250px}
.fcrumb{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--g-faint);padding:4px 6px 0}
.fcrumb a{color:var(--g-dim);text-decoration:none}.fcrumb a:hover{color:#fff}
.fcrumb .ico{width:14px;height:14px}

/* --- новости --- */
.fnews{display:flex;flex-direction:column;gap:16px}
.fngrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fnc{--c:#d9d6d4;position:relative;isolation:isolate;display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:16px;background:var(--g-in);text-align:left;width:100%;
  border:1px solid transparent;transition:border-color .2s,transform .35s var(--spring);animation:artIn .45s var(--spring) both;animation-delay:calc(var(--i)*45ms)}
.fnc:hover{border-color:color-mix(in srgb,var(--c) 35%,transparent)}
.fnc::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;transition:opacity .25s;
  background:radial-gradient(120% 120% at 0% 0%,color-mix(in srgb,var(--c) 12%,transparent),transparent 60%)}
.fnc:hover::before{opacity:1}
.fnc:active{transform:scale(.985)}
.fnc-h{display:flex;align-items:center;gap:8px;min-width:0}
.fnc-h time{margin-left:auto;font-size:13px;font-weight:500;color:var(--g-faint);white-space:nowrap}
.fnc-pin{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--g-dim)}
.fnc-pin .ico{width:13px;height:13px}
.fnc h3{margin:0;font-size:16px;font-weight:600;line-height:1.3;color:var(--g-tx);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fnc p{margin:0;font-size:14px;font-weight:500;line-height:1.45;color:var(--g-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fnc-f{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:4px;font-size:13px;font-weight:500;color:var(--g-faint)}
.fnc-f .who{display:flex;align-items:center;gap:6px;min-width:0;color:var(--g-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fnc-f .who .gav{--s:20px}
.fnc-f>span:not(.who){display:flex;align-items:center;gap:4px;white-space:nowrap}
.fnc-f .ico{width:14px;height:14px}
.fnc-f .sp{flex:1}
.fnc.seen h3{color:rgba(234,226,222,.62)}
.fnempty{grid-column:1/-1;padding:28px;text-align:center;font-size:14px;color:var(--g-faint)}

/* --- форумы --- */
.fboard{display:flex;flex-direction:column;gap:16px}
.fstats{display:flex;gap:6px;flex-wrap:wrap}
.fstats span{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:9px;background:var(--g-in2);font-size:13px;font-weight:500;color:var(--g-dim);font-variant-numeric:tabular-nums}
.fstats b{color:var(--g-tx);font-weight:600}
.fstats i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}
.fsec{display:flex;flex-direction:column;gap:10px}
.fsec>h3{margin:4px 4px 0;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-faint)}
.ffor{border-radius:18px;background:var(--g-in);border:1px solid rgba(255,255,255,.05);overflow:hidden}
.ffh{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px;width:100%;text-align:left;transition:background-color .2s}
.ffh:hover{background:rgba(255,255,255,.025)}
.ffi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:var(--c,#d9d6d4);
  background:linear-gradient(145deg,color-mix(in srgb,var(--c,#d9d6d4) 22%,#202226),#141517);border:1px solid rgba(255,255,255,.07)}
.ffi .ico{width:20px;height:20px}
.ffn{min-width:0}
.ffn b{display:block;font-size:18px;font-weight:600;color:var(--g-tx);line-height:1.25}
.ffn small{display:block;margin-top:2px;font-size:14px;font-weight:500;color:var(--g-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ffc{display:flex;gap:4px}
.ffc span{display:flex;flex-direction:column;align-items:flex-end;min-width:92px;padding:5px 10px;border-radius:10px;background:rgba(255,255,255,.035);font-size:12px;font-weight:500;color:var(--g-faint)}
.ffc b{font-size:16px;font-weight:600;color:var(--g-tx);font-variant-numeric:tabular-nums}
.ffx{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:var(--g-dim);transition:transform .35s var(--spring),background-color .2s}
.ffh:hover .ffx{background:rgba(255,255,255,.06)}
.ffor.closed .ffx{transform:rotate(-90deg)}
.ffor.closed .ftl{display:none}
.ftl{border-top:1px solid rgba(255,255,255,.05)}
.ftr-row{display:grid;grid-template-columns:28px minmax(0,1fr) 190px 340px;align-items:center;gap:14px;padding:12px 16px;width:100%;text-align:left;transition:background-color .2s}
.ftr-row+.ftr-row{border-top:1px solid rgba(255,255,255,.04)}
.ftr-row:hover{background:rgba(255,255,255,.03)}
.fti{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:var(--g-faint);background:rgba(255,255,255,.04)}
.fti.pin{color:#e8c77f;background:rgba(212,174,98,.12)}.fti.hot{color:#ffb36b;background:rgba(255,179,107,.1)}.fti.lock{color:var(--g-faint)}
.fti .ico{width:15px;height:15px}
.ftt{min-width:0}
.ftt b{display:block;font-size:16px;font-weight:600;line-height:1.3;color:var(--g-tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ftr-row:hover .ftt b{color:#fff}
.ftt small{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:13px;font-weight:500;color:var(--g-faint);white-space:nowrap;overflow:hidden}
.ftt .tg{padding:1px 7px;border-radius:6px;background:rgba(255,255,255,.06);color:var(--g-dim);font-size:12px;font-weight:600}
.ftt .tg.new{background:rgba(95,211,168,.12);color:var(--ok)}
.ftn{display:flex;gap:16px;justify-content:flex-end;font-size:13px;font-weight:500;color:var(--g-faint)}
.ftn span{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.ftn b{font-size:14px;font-weight:600;color:var(--g-dim);font-variant-numeric:tabular-nums}
.ftlast{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.03);min-width:0}
.ftlast .gav{--s:32px}
.ftlast div{min-width:0}
.ftlast .n{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;white-space:nowrap}
.ftlast .n .nm{overflow:hidden;text-overflow:ellipsis}
.ftlast .n .ico{width:13px;height:13px;flex:none}
.ftlast .n time{margin-left:auto;font-weight:500;color:var(--g-faint);flex:none}
.ftlast p{margin:2px 0 0;font-size:14px;font-weight:500;color:var(--g-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ffm{display:flex;justify-content:center;padding:10px;border-top:1px solid rgba(255,255,255,.04)}
.ffm button{font-size:14px;font-weight:600;color:var(--g-dim);padding:6px 10px;border-radius:9px}
.ffm button:hover{color:#fff;background:rgba(255,255,255,.05)}
/* цвета ролей в последнем сообщении */
.rl-admin{color:#fd002f}.rl-mod{color:#4ba58a}.rl-vip{color:#d4ae62}.rl-prem{background:linear-gradient(90deg,#fb324d,#a732ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.rl-g{color:#e8c77f}.rl-s{color:#a9c6ec}.rl-u{color:var(--g-tx)}

.fad-m{display:none}
@media (max-width:1500px){.fngrid{grid-template-columns:repeat(2,minmax(0,1fr))}.ftr-row{grid-template-columns:28px minmax(0,1fr) 150px 300px}}
@media (max-width:1250px){
  .pg-forum{grid-template-columns:minmax(0,1fr)}
  .fside{display:none}
  .fad-m{display:flex;height:110px}
  .ftr-row{grid-template-columns:28px minmax(0,1fr) 280px}.ftn{display:none}
}
@media (max-width:900px){
  .fngrid{grid-template-columns:1fr}
  .ffh{grid-template-columns:44px minmax(0,1fr) auto}.ffc{display:none}
  .ftr-row{grid-template-columns:28px minmax(0,1fr)}
  .ftlast{grid-column:2}
}
@media (max-width:720px){
  .ffn b{font-size:16px}.ffn small{white-space:normal}
  .ftr-row{padding:12px}
  .fnews .gh,.fboard .gh{gap:10px}
}
