feat: news/events pages, pagination, cookie banner, MONT→MONT rename, logo update, admin improvements, API endpoints, dynamic links by domain

This commit is contained in:
2026-06-01 17:44:25 +03:00
parent 7c0c2ea14a
commit b1fde8344e
117 changed files with 3993 additions and 70 deletions
+168 -1
View File
@@ -183,8 +183,163 @@
font-size: 16px;
}
.board {
/* ── Page layout: main content + news sidebar ── */
.page-layout {
margin-top: 18px;
display: grid;
grid-template-columns: 1fr 300px;
gap: 20px;
align-items: start;
}
.main-col {
min-width: 0;
}
.news-sidebar {
position: sticky;
top: 18px;
}
.news-widget {
background: #fff;
border-radius: var(--radius);
border: 1px solid #dfebff;
box-shadow: 0 10px 30px rgba(24, 56, 116, .08);
overflow: hidden;
}
.news-widget-head {
padding: 14px 16px 10px;
border-bottom: 1px solid #edf3ff;
display: flex;
align-items: center;
gap: 8px;
}
.news-all-link {
font-size: 12px; font-weight: 700; color: var(--brand-2);
text-decoration: none; white-space: nowrap;
padding: 3px 10px; border-radius: 999px;
background: #eef4ff; border: 1px solid #c8d8f7;
transition: .15s;
}
.news-all-link:hover { background: #dbe8ff; }
.news-widget-head h2 {
margin: 0;
font-size: 13px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 1px;
color: #234782;
display: flex;
align-items: center;
gap: 7px;
}
.news-widget-head h2::before {
content: "";
display: inline-block;
width: 3px;
height: 14px;
border-radius: 2px;
background: linear-gradient(180deg, #3978e0, #1f4ea3);
flex-shrink: 0;
}
.news-list {
display: flex;
flex-direction: column;
}
.news-card {
border-bottom: 1px solid #f0f5ff;
transition: background .15s;
overflow: hidden;
display: flex;
align-items: center;
text-decoration: none;
}
.news-card:last-child {
border-bottom: none;
}
.news-card:hover {
background: #f8fbff;
}
.news-card-img-wrap {
flex-shrink: 0;
width: 62px; height: 62px;
margin: 10px 0 10px 12px;
border-radius: 8px;
overflow: hidden;
background: #e8f0ff;
display: flex; align-items: center; justify-content: center;
}
.news-card-img {
width: 62px; height: 62px;
object-fit: cover;
display: block;
}
.news-card-no-img {
font-size: 22px;
line-height: 1;
}
.news-card-body {
padding: 10px 12px 10px 10px;
flex: 1;
min-width: 0;
display: flex;
flex-direction: column;
gap: 4px;
}
.news-card-date {
font-size: 10px;
font-weight: 700;
color: #b0c4df;
letter-spacing: .3px;
text-transform: uppercase;
}
.news-card-title {
margin: 0;
font-size: 12.5px;
font-weight: 700;
color: #1a3e79;
line-height: 1.4;
}
.news-card-btn {
display: inline-flex;
align-items: center;
font-size: 11px;
font-weight: 700;
color: var(--brand-2);
text-decoration: none;
margin-top: 2px;
transition: .15s;
}
.news-card-btn:hover {
color: var(--brand);
transform: translateX(2px);
}
.news-empty {
padding: 20px 16px;
font-size: 13px;
color: #9ab0d0;
margin: 0;
}
.board {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
@@ -538,12 +693,24 @@
transform: scale(1.04);
}
@media (max-width: 1100px) {
.page-layout { grid-template-columns: 1fr 260px; }
}
@media (max-width: 980px) {
.brand-logo { max-width: 160px; }
.board { grid-template-columns: 1fr; }
.hero { padding: 20px; }
.credit { right: 8px; bottom: 6px; }
#btn-contact-ruslan { font-size: 14px; }
.page-layout { grid-template-columns: 1fr; }
.news-sidebar { position: static; }
.news-list { flex-direction: column; }
}
@media (max-width: 640px) {
.news-list { flex-direction: column; }
.news-card { border-right: none; border-bottom: 1px solid #f0f5ff; }
}
@media (max-width: 768px) {