/* css/style-capacities.css — extracted from informacija-o-moshhnostjahs.html */

/* ── Page heading ──────────────────────────────────────── */
  .page-heading {
    padding: 2.2rem 0 1rem;
    border-bottom: 1px solid #e9ecef;
  }
  .page-heading .page-icon { font-size: 2rem; line-height: 1; }
  .page-heading h1 {
    font-size: clamp(1.35rem, 3vw, 1.9rem);
    font-weight: 800;
    color: #0b3b5c;
    letter-spacing: -.3px;
    margin: .3rem 0 .25rem;
  }
  .page-heading .subtitle { font-size: .9rem; color: #6c757d; margin: 0; }

  /* ── Stats bar ─────────────────────────────────────────── */
  .stats-bar {
    background: #fff;
    border-bottom: 1px solid #e9ecef;
    padding: .8rem 0;
  }
  .stat-item {
    text-align: center;
    padding: .4rem 1.2rem;
    border-right: 1px solid #e9ecef;
  }
  .stat-item:last-child { border-right: none; }
  .stat-num { font-size: 1.4rem; font-weight: 800; color: #0b3b5c; line-height: 1; }
  .stat-label { font-size: .72rem; color: #6c757d; text-transform: uppercase; letter-spacing: .5px; }

  /* ── Search panel ──────────────────────────────────────── */
  .search-panel {
    background: #f8fafc;
    border-bottom: 1px solid #e9ecef;
    padding: 1.2rem 0;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
  }
  .search-panel .input-group {
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
    border-radius: 10px;
    overflow: hidden;
  }
  .search-panel .form-control {
    border: none;
    padding: .7rem 1rem;
    font-size: .95rem;
    background: #fff;
  }
  .search-panel .form-control:focus { box-shadow: none; }
  .search-panel .input-group-text {
    background: #fff;
    border: none;
    color: #0b3b5c;
    font-size: 1.1rem;
  }

  /* Year / type pills */
  .cat-pills { display: flex; flex-wrap: wrap; gap: .4rem; }
  .cat-pill {
    padding: .3rem .85rem;
    border-radius: 20px;
    font-size: .8rem;
    font-weight: 600;
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: all .2s ease;
    white-space: nowrap;
    background: transparent;
  }
  .cat-pill.active, .cat-pill:hover {
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0,0,0,.12);
  }
  .cat-pill[data-cat=""]         { background:#0b3b5c; color:#fff; border-color:#0b3b5c; }
  .cat-pill[data-cat="2025"]     { background:#e8f4fd; color:#0f6b9a; border-color:#0f6b9a; }
  .cat-pill[data-cat="2025"].active { background:#0f6b9a; color:#fff; }
  .cat-pill[data-cat="2024"]     { background:#eaf7f1; color:#27ae60; border-color:#27ae60; }
  .cat-pill[data-cat="2024"].active { background:#27ae60; color:#fff; }
  .cat-pill[data-cat="2023"]     { background:#fef9e7; color:#e67e22; border-color:#e67e22; }
  .cat-pill[data-cat="2023"].active { background:#e67e22; color:#fff; }
  .cat-pill[data-cat="Инвест"]   { background:#f3e8ff; color:#8e44ad; border-color:#8e44ad; }
  .cat-pill[data-cat="Инвест"].active { background:#8e44ad; color:#fff; }

  /* ── Cards grid ─────────────────────────────────────────── */
  .docs-grid { padding: 2rem 0; }

  .doc-card-wrap { transition: transform .25s ease, opacity .25s ease; }
  .doc-card-wrap.hidden { display: none; }

  .doc-card {
    background: #fff;
    border-radius: 14px;
    border: 1.5px solid #e9ecef;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    position: relative;
  }
  .doc-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(11,59,92,.14);
    border-color: #0f6b9a;
  }

  /* Left colour accent bar */
  .doc-card::before {
    content: "";
    position: absolute;
    top: 0; left: 0; bottom: 0;
    width: 4px;
    border-radius: 14px 0 0 14px;
  }
  .doc-card[data-year="2025"]::before   { background: #0f6b9a; }
  .doc-card[data-year="2024"]::before   { background: #27ae60; }
  .doc-card[data-year="2023"]::before   { background: #e67e22; }
  .doc-card[data-year="Инвест"]::before { background: #8e44ad; }

  .doc-card-body {
    padding: 1.2rem 1.2rem 1.2rem 1.5rem;
    display: flex;
    flex-direction: column;
    flex: 1;
  }

  .doc-icon-wrap {
    width: 40px; height: 40px;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
    margin-bottom: .75rem;
  }
  .doc-card[data-year="2025"]   .doc-icon-wrap { background: #e8f4fd; }
  .doc-card[data-year="2024"]   .doc-icon-wrap { background: #eaf7f1; }
  .doc-card[data-year="2023"]   .doc-icon-wrap { background: #fef9e7; }
  .doc-card[data-year="Инвест"] .doc-icon-wrap { background: #f3e8ff; }

  .doc-year-badge {
    font-size: .68rem;
    font-weight: 700;
    padding: .2rem .55rem;
    border-radius: 20px;
    letter-spacing: .3px;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: .5rem;
  }
  .doc-card[data-year="2025"]   .doc-year-badge { background:#e8f4fd; color:#0f6b9a; }
  .doc-card[data-year="2024"]   .doc-year-badge { background:#eaf7f1; color:#27ae60; }
  .doc-card[data-year="2023"]   .doc-year-badge { background:#fef9e7; color:#e67e22; }
  .doc-card[data-year="Инвест"] .doc-year-badge { background:#f3e8ff; color:#8e44ad; }

  .doc-title {
    font-size: .92rem;
    font-weight: 700;
    color: #0b3b5c;
    line-height: 1.4;
    margin-bottom: .4rem;
  }
  .doc-meta {
    font-size: .76rem;
    color: #94a3b8;
    margin-bottom: .4rem;
  }
  .doc-desc {
    font-size: .8rem;
    color: #6c757d;
    line-height: 1.5;
    flex: 1;
  }

  /* Inline metrics pills */
  .metric-row {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .65rem;
  }
  .metric-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: .73rem;
    font-weight: 600;
    background: #f0f7ff;
    color: #0b3b5c;
    border-radius: 6px;
    padding: .18rem .5rem;
    border: 1px solid #d0e8f8;
  }
  .metric-chip.gkns { background:#f0fdf4; color:#166534; border-color:#bbf7d0; }

  .doc-actions {
    display: flex;
    gap: .5rem;
    margin-top: 1rem;
    padding-top: .75rem;
    border-top: 1px solid #f0f2f5;
  }
  .btn-details {
    flex: 1;
    background: linear-gradient(90deg, #0b3b5c, #0f6b9a);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: .8rem;
    font-weight: 600;
    padding: .45rem .75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    cursor: pointer;
    transition: opacity .2s;
  }
  .btn-details:hover { opacity: .88; }
  .btn-details.collapsed .bi-chevron-up::before { content: "\f282"; }
  .btn-details:not(.collapsed) .bi-chevron-up::before { content: "\f286"; }

  .collapsing { transition: none !important; }

  .doc-more {
    font-size: .8rem;
    color: #475569;
    background: #f8fafc;
    border-radius: 8px;
    padding: .7rem .9rem;
    margin-top: .6rem;
    border-left: 3px solid #0f6b9a;
  }

  /* Empty state */
  .empty-state {
    text-align: center;
    padding: 4rem 1rem;
    display: none;
  }
  .empty-state .bi { font-size: 3rem; color: #cbd5e1; }
  .empty-state p { color: #94a3b8; margin-top: .5rem; }

  #result-count { font-size: .82rem; color: #94a3b8; padding: .3rem 0; }

  /* ── Pagination ─────────────────────────────────────────── */
  .custom-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .75rem;
    padding: 1.5rem 0;
  }
  .pagination-info {
    font-size: .8rem;
    color: #94a3b8;
    font-weight: 500;
    letter-spacing: .3px;
  }
  .pagination-controls {
    display: flex;
    align-items: center;
    gap: .35rem;
  }
  .pg-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    font-size: .88rem;
    font-weight: 700;
    text-decoration: none;
    border: 1.5px solid #e2e8f0;
    color: #475569;
    background: #fff;
    transition: all .2s ease;
  }
  .pg-num:hover {
    border-color: #0b3b5c;
    color: #0b3b5c;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(11,59,92,.12);
  }
  .pg-num.active {
    background: linear-gradient(135deg, #0b3b5c, #0f6b9a);
    border-color: transparent;
    color: #fff;
    box-shadow: 0 4px 14px rgba(11,59,92,.3);
  }
  .pg-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 .9rem;
    height: 38px;
    border-radius: 10px;
    font-size: .82rem;
    font-weight: 600;
    text-decoration: none;
    border: 1.5px solid #e2e8f0;
    color: #475569;
    background: #fff;
    cursor: pointer;
    transition: all .2s ease;
  }
  .pg-btn:hover:not(.disabled) {
    border-color: #0b3b5c;
    color: #0b3b5c;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(11,59,92,.12);
  }
  .pg-btn.disabled {
    opacity: .38;
    cursor: default;
    pointer-events: none;
  }
