@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&display=swap');
@import url('https://unpkg.com/boxicons@2.1.4/css/boxicons.min.css');

/* =========================================
   БАЗОВІ НАЛАШТУВАННЯ ТА ФОН
   ========================================= */
html {
    background-color: #0a0b10;
}

body {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    /* Один блок фону: градієнт + картинка + фіксація при скролі */
    background: 
        linear-gradient(rgba(10, 11, 16, 0.85), rgba(10, 11, 16, 0.85)), 
        url('https://images.unsplash.com/photo-1464802686167-b939a6910659?q=80&w=1920') no-repeat center center fixed;
    background-size: cover;
    font-family: 'JetBrains Mono', monospace;
    color: #a9b1d6;
    line-height: 1.6;
}

/* =========================================
   ЦЕНТРАЛЬНИЙ БЛОК
   ========================================= */
.container {
    max-width: 1200px;
    margin: 0 auto;
    background-color: #1a1b26; 
    min-height: 100vh; 
    padding: 40px;
    box-sizing: border-box;
    border-left: 1px solid #333;
    border-right: 1px solid #333;
    display: flex;
    flex-direction: column;
}

h1, h2, h3 {
    color: #c0caf5;
    font-weight: normal;
}

/* =========================================
   НАВІГАЦІЯ
   ========================================= */
.navigation {
    margin-bottom: 40px;
    padding-bottom: 15px;
    border-bottom: 1px solid #333;
}

.navigation a {
    color: #7aa2f7;
    text-decoration: none;
    margin-right: 15px;
}

.navigation a:hover, .navigation a.active {
    color: #9ece6a;
    font-weight: bold;
}

/* =========================================
   ЛЕЙАУТ (РОЗУМНИЙ FLEXBOX ЗАМІСТЬ GRID)
   ========================================= */
.layout-3col {
    display: flex;
    gap: 40px;
    flex-grow: 1;
    align-items: flex-start;
}

.sidebar-left, .sidebar-right { 
    width: 250px;
    flex-shrink: 0; /* Сайдбари не звужуються */
}

.sidebar-left { 
    border-right: 1px dashed #333; 
    padding-right: 20px; 
}

.sidebar-right { 
    border-left: 1px dashed #333; 
    padding-left: 20px; 
}

.main-content {
    flex-grow: 1;
    min-width: 0; /* Запобігає розриву flex-контейнера довгим текстом */
    padding-bottom: 60px; 
}

/* =========================================
   ВІДЖЕТИ ТА ІНШЕ
   ========================================= */
.sidebar-widget {
    background-color: #1f2335;
    padding: 15px;
    border: 1px solid #333;
    font-size: 14px;
    margin-bottom: 20px;
}

.sidebar-widget p { margin: 5px 0; }
.cmd-prompt { color: #9ece6a; }

.profile-photo {
    width: 100%;
    aspect-ratio: 1;
    background-color: #1f2335;
    border: 1px solid #333;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    overflow: hidden;
}

.profile-photo img { width: 100%; height: 100%; object-fit: cover; }

.social-links, .repo-list {
    list-style: none;
    padding: 0;
    margin: 0 0 30px 0;
}

.social-links li, .repo-list li { margin-bottom: 12px; }

.social-links a, .repo-list a {
    display: flex;
    align-items: center;
    color: #a9b1d6;
    text-decoration: none;
    transition: color 0.2s;
}

.social-links a i { font-size: 24px; margin-right: 10px; color: #7aa2f7; }
.repo-list i { margin-right: 8px; color: #565f89; }

.social-links a:hover { color: #9ece6a; }
.repo-list a:hover { color: #9ece6a; text-decoration: underline; }

@media (max-width: 1000px) {
    .layout-3col { flex-direction: column; }
    .sidebar-left, .sidebar-right { display: none; }
    .container { border: none; padding: 20px; }
}