* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: Arial, sans-serif;
    background: #f2f2f2;
    line-height: 1.4;
}

a {
    color: #0044aa;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

.wrapper {
    max-width: 1200px;
    margin: 0 auto;
    background: #fff8dc;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

header {
    background: #ffe4b5;
    padding: 10px 20px;
    position: relative;
    z-index: 3;
}

header h1 {
    margin: 0;
    font-size: 26px;
}

header h2 {
    margin: 3px 0 10px;
    font-size: 18px;
    color: #555;
}

nav {
    margin-top: 5px;
    background: #b22222;
    position: relative;
    z-index: 3;
}

.nav-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.nav-menu li {
    margin: 0;
}

.nav-menu a {
    display: block;
    padding: 8px 15px;
    color: #fff;
    font-weight: bold;
}

.nav-menu a:hover,
.nav-menu a.active {
    background: #ff6347;
}

.layout {
    display: flex;
    flex: 1 1 auto;
    background: #fffad0;
    position: relative;
    z-index: 1;
}

aside.sidebar {
    width: 18%;
    padding: 10px;
    background: #ffc0cb;
    font-size: 14px;
    position: relative;
    z-index: 2;
}

main {
    width: 64%;
    padding: 15px;
    background: #90ee90;
    position: relative;
    z-index: 2;
}

/* ===== УБРАН float — он мешал кликам поверх ===== */
#profile-photo {
    max-width: 360px;
    margin: 8px auto 12px;
    border: 3px solid #666;
    border-radius: 6px;
    opacity: 0.97;
    display: block;
    position: relative;
    z-index: 2;
}

.btn {
    display: inline-block;
    padding: 5px 10px;
    margin: 4px 0;
    border-radius: 4px;
    background: #ff8c00;
    color: #fff;
    cursor: pointer;
    font-size: 13px;
    position: relative;
    z-index: 3; /* ← КНОПКИ СТАЛИ ПОВЕРХ ВСЕГО */
}

.btn-secondary {
    background: #555;
}

#content-tabs {
    background: #ffffffee;
    padding: 10px;
    border-radius: 6px;
    position: relative;
    z-index: 2;
}

/* ВАЖНО: вкладки теперь кликабельны */
#content-tabs .ui-tabs-nav {
    position: relative;
    z-index: 4 !important;
}

#content-tabs .ui-tabs-panel {
    position: relative;
    z-index: 3;
}

table.schedule {
    width: 100%;
    border-collapse: collapse;
    margin: 10px 0;
    font-size: 14px;
    position: relative;
    z-index: 2;
}

/* состояние "выделена" */
table.schedule.highlighted {
    background-color: #fff9c4;      /* ярко-жёлтый фон */
    border: 2px solid #ff8c00;      /* оранжевая рамка вокруг таблицы */
}

table.schedule.highlighted th {
    background-color: #ffd54f;      /* более яркий цвет заголовка */
}

table.schedule th,
table.schedule td {
    border: 1px solid #555;
    padding: 4px 6px;
    text-align: center;
}

table.schedule th {
    background: #f0e68c;
}

form#feedback-form {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 10px;
    position: relative;
    z-index: 2;
}

form#feedback-form input,
form#feedback-form select,
form#feedback-form textarea {
    padding: 4px 6px;
    border: 1px solid #999;
    border-radius: 4px;
    font-size: 14px;
}

form#feedback-form button {
    padding: 6px 12px;
    border: none;
    border-radius: 4px;
    background: #006400;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
}

form#feedback-form button:hover {
    background: #228b22;
}

/* Правая колонка (тоже кликабельная теперь) */
#faq,
#study-date {
    position: relative;
    z-index: 3;
}

footer {
    margin-top: auto;
    background: #ffe4b5;
    padding: 8px 15px;
    text-align: center;
    font-size: 14px;
    position: relative;
    z-index: 2;
}

@media (max-width: 900px) {
    .layout {
	flex-direction: column;
    }
    aside.sidebar,
    main {
	width: 100%;
    }
}

