/* ============================================================
   NEOBRIX — тема оформления в стиле Roblox образца 2012 года
   Синяя "стеклянная" шапка, светло-серый фон, белые панели
   с тонкой серой рамкой, объёмные градиентные кнопки.
   ============================================================ */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}

body {
    background-color: #E3E3E3;
    color: #333333;
    line-height: 1.5;
    font-size: 13px;
}

a { color: #0057B7; }
a:hover { color: #003E7E; }

h1, h2, h3 { color: #26456F; font-weight: bold; }

/* ============ ШАПКА / NAVBAR ============ */
.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5%;
    height: 62px;
    background: linear-gradient(180deg, #3E7FD1 0%, #1E4B8F 55%, #163D77 100%);
    border-bottom: 3px solid #0F2C58;
    box-shadow: 0 2px 6px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.25);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.logo {
    display: flex;
    align-items: center;
    gap: 12px;
}

.logo img {
    height: 38px;
    border-radius: 4px;
    border: 2px solid #ffffff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.4);
}

.logo span {
    font-size: 1.6rem;
    font-weight: 800;
    letter-spacing: 1px;
    color: #ffffff;
    font-style: italic;
    text-shadow: 0 1px 0 #0B2447, 0 2px 3px rgba(0,0,0,0.5);
}

.nav-links {
    list-style: none;
    display: flex;
    gap: 4px;
}

.nav-links a {
    text-decoration: none;
    color: #EAF2FF;
    font-weight: bold;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 8px 14px;
    border-radius: 3px;
    transition: background 0.15s;
    text-shadow: 0 1px 1px rgba(0,0,0,0.4);
}

.nav-links a:hover {
    background: rgba(255,255,255,0.18);
    color: #ffffff;
}

/* ============ СЕКЦИИ ============ */
section {
    padding: 40px 10% 60px;
    text-align: center;
}

.hero {
    background: linear-gradient(#dfeaf7, #dfeaf7);
    height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* ============ КНОПКИ (объёмные, как в 2012) ============ */
.btn {
    display: inline-block;
    background: linear-gradient(180deg, #6FB3F2 0%, #2D7BC7 50%, #1E62A8 100%);
    color: #ffffff;
    padding: 9px 22px;
    text-decoration: none;
    border: 1px solid #144C82;
    border-radius: 4px;
    margin-top: 14px;
    font-weight: bold;
    font-size: 0.82rem;
    text-shadow: 0 1px 1px rgba(0,0,0,0.35);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55), 0 1px 2px rgba(0,0,0,0.25);
    cursor: pointer;
    transition: filter 0.15s, transform 0.1s;
}

.btn:hover {
    filter: brightness(1.08);
}

.btn:active {
    transform: translateY(1px);
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.35);
}

/* ============ ИГРОВОЙ КОНТЕЙНЕР / КАРТОЧКИ ИГР ============ */
#game-container {
    width: 100%;
    max-width: 800px;
    height: 500px;
    margin: 20px auto;
    background: #ffffff;
    border: 1px solid #B9B9B9;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.15);
}

.placeholder {
    color: #8A8A8A;
    padding: 20px;
}

/* Карточки игр создаются через JS с классом .game-card */
.game-card {
    background: #ffffff !important;
    border: 1px solid #C7C7C7 !important;
    border-radius: 5px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
    color: #333333;
}

.game-card h3 { color: #1E4B8F; font-size: 1rem; }
.game-card a.btn { width: 100%; box-sizing: border-box; }

footer {
    text-align: center;
    padding: 18px;
    background: #163D77;
    color: #C9DCF5;
    font-size: 0.75rem;
    border-top: 3px solid #0F2C58;
}

/* ============================================================
   Компоненты в духе структуры реального Roblox 2012 года:
   StandardBox / DarkGradientBox / GameItem / жанровые иконки
   ============================================================ */

.top-strip {
    height: 22px;
    background: #0B2447;
    color: #9FBFE8;
    font-size: 11px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0 5%;
    gap: 10px;
}
.top-strip a { color: #9FBFE8; text-decoration: none; }
.top-strip a:hover { color: #ffffff; text-decoration: underline; }

/* "Standard Box" — универсальная светлая карточка-панель */
.standard-box {
    background: #ffffff;
    border: 1px solid #C7C7C7;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
}
.standard-box-header {
    background: linear-gradient(180deg, #F5F5F5 0%, #E4E4E4 100%);
    border-bottom: 1px solid #C7C7C7;
    padding: 8px 14px;
    font-weight: bold;
    color: #26456F;
    font-size: 0.85rem;
    border-radius: 4px 4px 0 0;
}
.standard-box-body { padding: 14px; }

/* Тёмно-синий градиентный блок логина как на старом Roblox */
.dark-gradient-box {
    background: linear-gradient(180deg, #4B4B4B 0%, #2A2A2A 100%);
    border-radius: 4px;
    padding: 16px;
    color: #ffffff;
    max-width: 260px;
}
.dark-gradient-box h3 {
    color: #ffffff;
    font-size: 0.85rem;
    text-transform: uppercase;
    margin-bottom: 10px;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding-bottom: 6px;
}
.dark-gradient-box label { display:block; font-size: 0.72rem; color: #C9C9C9; margin-top: 8px; }
.dark-gradient-box input {
    width: 100%; padding: 6px 8px; margin-top: 3px;
    border: 1px solid #1a1a1a; border-radius: 3px; font-size: 0.85rem;
}

/* Карточка игры в стиле GameItem с Games.aspx */
.rbx-game-item {
    width: 168px;
    text-align: left;
    display: inline-block;
    vertical-align: top;
}
.rbx-game-item img.thumb {
    width: 168px; height: 106px; object-fit: cover;
    border: 1px solid #C7C7C7; border-radius: 3px; display: block;
    background: #F2F2F2;
}
.rbx-game-item .game-title {
    font-weight: bold; font-size: 0.78rem; margin-top: 4px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.rbx-game-item .game-title a { color: #0057B7; text-decoration: none; }
.rbx-game-item .game-title a:hover { text-decoration: underline; }
.rbx-game-item .player-count { color: #CC0000; font-size: 0.72rem; float: left; }
.rbx-game-item .genre-row { float: right; display: flex; gap: 3px; }
.rbx-game-item .row-clear { clear: both; height: 4px; }

/* Жанровые иконки — небольшие оригинальные плоские значки 16x16 */
.genre-icon { width: 15px; height: 15px; display: inline-block; vertical-align: middle; }

/* Featured game блок на главной */
.featured-box {
    background: #ffffff; border: 1px solid #C7C7C7; border-radius: 4px;
    padding: 14px; display: flex; gap: 14px; align-items: flex-start;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
}
.featured-box img { width: 300px; height: 165px; object-fit: cover; border: 1px solid #C7C7C7; border-radius: 3px; }
.featured-box .play-btn-big {
    display:inline-block; margin-top:10px; background: linear-gradient(180deg,#7ED957,#3AA835);
    color:#fff; border:1px solid #256b1f; padding:8px 24px; border-radius:4px; font-weight:bold;
    text-decoration:none; text-shadow:0 1px 1px rgba(0,0,0,.3); box-shadow: inset 0 1px 0 rgba(255,255,255,.4);
}

/* Комментарии под играми */
.comment-item { display:flex; gap:10px; padding:10px 0; border-bottom:1px solid #EAEAEA; }
.comment-avatar { width:40px; height:40px; border-radius:3px; border:1px solid #C7C7C7; background:#DCE7F5; flex-shrink:0; }
.comment-body .comment-user { font-weight:bold; color:#0057B7; font-size:0.82rem; }
.comment-body .comment-date { color:#8A8A8A; font-size:0.7rem; margin-left:6px; }
.comment-body .comment-text { font-size:0.82rem; margin-top:2px; }

/* Каталог */
.catalog-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(140px,1fr)); gap:14px; }
.catalog-card { background:#fff; border:1px solid #C7C7C7; border-radius:4px; padding:10px; text-align:center; }
.catalog-card img { width:100%; border-radius:3px; background:#F2F2F2; }
.catalog-card .cname { font-size:0.78rem; font-weight:bold; margin-top:6px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.catalog-card .cprice { color:#FFC800; background:#333; display:inline-block; padding:2px 8px; border-radius:10px; font-size:0.72rem; font-weight:bold; margin-top:4px; }

/* Люди / профиль */
.people-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(120px,1fr)); gap:14px; }
.people-card { background:#fff; border:1px solid #C7C7C7; border-radius:4px; padding:10px; text-align:center; }
.people-card .p-avatar { width:80px; height:80px; margin:0 auto 6px; border-radius:3px; border:1px solid #C7C7C7; background:#DCE7F5; }
.people-card .p-name { font-size:0.8rem; font-weight:bold; color:#0057B7; }

/* Форум */
.forum-cat-header { background:linear-gradient(180deg,#3E7FD1,#1E4B8F); color:#fff; padding:8px 14px; font-weight:bold; border-radius:4px 4px 0 0; font-size:0.85rem; }
.forum-row { display:flex; justify-content:space-between; align-items:center; padding:10px 14px; border-bottom:1px solid #EAEAEA; background:#fff; font-size:0.85rem; }
.forum-row:last-child { border-bottom:none; }
.forum-row .f-title { color:#0057B7; font-weight:bold; text-decoration:none; }
.forum-row .f-meta { color:#8A8A8A; font-size:0.72rem; }
.forum-stats { display:flex; gap:18px; color:#8A8A8A; font-size:0.75rem; text-align:center; }

/* Блог */
.blog-post { background:#fff; border:1px solid #C7C7C7; border-radius:4px; padding:16px; margin-bottom:14px; text-align:left; }
.blog-post h3 { color:#0057B7; margin-bottom:4px; }
.blog-post .blog-date { color:#8A8A8A; font-size:0.75rem; margin-bottom:8px; }