/* === ЛИЧНЫЙ КАБИНЕТ === */
.cabinet-wrapper {
    display: flex;
    gap: 30px;
    margin-top: 30px;
    margin-bottom: 50px;
}

/* Сайдбар */
.cabinet-sidebar {
    width: 260px;
    flex-shrink: 0;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    padding: 20px;
}

.cabinet-user {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.cabinet-avatar img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin-right: 15px;
}

.cabinet-name { font-weight: bold; }
.cabinet-phone { font-size: 13px; color: #888; }

.cabinet-nav ul { list-style: none; }
.cabinet-nav li a {
    display: flex;
    justify-content: space-between;
    padding: 12px 10px;
    color: #333;
    text-decoration: none;
    border-radius: 5px;
}
.cabinet-nav li a:hover { background: #f5f5f5; color: #e53935; }
.cabinet-nav li.active a { background: #fff0f0; color: #e53935; font-weight: bold; }
.cabinet-nav .logout a { color: #888; margin-top: 20px; }

.menu-badge {
    background: #e0e0e0;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 10px;
}
.menu-badge.green { background: #e8f5e9; color: #2e7d32; }

/* Контент кабинета */
.cabinet-content { flex-grow: 1; }
.page-title { font-size: 28px; margin-bottom: 25px; }

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.dash-card {
    background: #fff;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    display: flex;
    align-items: flex-start;
    cursor: pointer;
    transition: transform 0.2s;
}
.dash-card:hover { transform: translateY(-3px); box-shadow: 0 5px 15px rgba(0,0,0,0.1); }

.dash-icon { font-size: 32px; margin-right: 20px; background: #f5f5f5; padding: 15px; border-radius: 50%; }
.dash-info h3 { font-size: 18px; margin-bottom: 5px; }
.dash-info p { font-size: 14px; color: #888; }
.dash-count { background: #e8f5e9; color: #2e7d32; padding: 2px 8px; border-radius: 4px; font-size: 12px; }

/* Адаптивность */
@media (max-width: 900px) {
    .cabinet-wrapper { flex-direction: column; }
    .cabinet-sidebar { width: 100%; }
    .dashboard-grid { grid-template-columns: 1fr; }
}
/* === ИСПРАВЛЕННАЯ ШАПКА === */
.top-bar {
    background-color: #f8f8f8;
    border-bottom: 1px solid #e0e0e0;
    padding: 8px 0;
    font-size: 13px;
    color: #777;
}
.top-bar .container { display: flex; justify-content: space-between; max-width: 1200px; margin: 0 auto; padding: 0 15px; }
.top-bar a { color: #777; text-decoration: none; }
.separator { margin: 0 10px; color: #ccc; }

.main-header {
    background-color: #fff;
    padding: 15px 0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.header-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.logo a { text-decoration: none; font-size: 28px; font-weight: bold; white-space: nowrap; }
.logo-art { color: #333; }
.logo-pdf { color: #e53935; }

.search-bar {
    flex-grow: 1;
    display: flex;
    border: 2px solid #e53935;
    border-radius: 4px;
    overflow: hidden;
    height: 44px;
}
.search-bar input { width: 100%; padding: 0 15px; border: none; outline: none; font-size: 15px; }
.search-btn { background-color: #e53935; color: #fff; border: none; padding: 0 25px; cursor: pointer; font-weight: bold; }
.search-btn:hover { background-color: #c62828; }

.user-actions { display: flex; gap: 15px; flex-shrink: 0; }
.action-item { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #333; font-size: 12px; position: relative; }
.action-item .icon { font-size: 22px; margin-bottom: 2px; }
.action-item:hover { color: #e53935; }
.cart .badge { position: absolute; top: -5px; right: -5px; background-color: #e53935; color: #fff; font-size: 10px; padding: 2px 5px; border-radius: 50%; }

.main-nav { background-color: #333; margin-bottom: 20px; }
.nav-menu { list-style: none; display: flex; margin: 0; padding: 0; max-width: 1200px; margin: 0 auto; }
.nav-menu li a { display: block; color: #fff; text-decoration: none; padding: 15px 20px; transition: background 0.2s; }
.nav-menu li a:hover { background-color: #444; }
.red-btn { background-color: #e53935; }
.red-btn:hover { background-color: #c62828 !important; }
