/* Base layout */
.mdc-catalog{max-width:1140px;margin:0 auto;padding:0 16px}
.mdc-header{margin:24px 0 18px}

/* Search */
.mdc-search{display:flex;gap:10px;align-items:center}
.mdc-search input{flex:1 1 auto;height:44px;padding:0 14px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}
.mdc-search input:focus{border-color:#9bb7ff;box-shadow:0 0 0 3px rgba(46,104,255,.12)}
.mdc-search button{height:44px;padding:0 16px;border-radius:10px;border:1px solid #e5e7ee;background:#1e73be;color:#fff;cursor:pointer;transition:filter .15s,background .15s}
.mdc-search button:hover{filter:brightness(.95)}

/* Two-column content */
.mdc-body{display:flex;gap:28px}
.mdc-sidebar{width:28%;min-width:260px}
.mdc-results{width:72%}

/* Filter cards */
.mdc-filter{background:#fff;border:1px solid #e8ebf2;margin-bottom:16px;padding:14px;border-radius:14px;box-shadow:0 3px 10px rgba(16,24,40,.04)}
.mdc-filter h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#0f172a}
.mdc-cats,.mdc-subcats{list-style:none;margin:8px 0 0 0;padding:0}
.mdc-cats label:hover, .mdc-filter label:hover{color: #DAAA00}
.mdc-cats .mdc-has-children{margin-bottom: 7px;}
.mdc-subcats{margin-left:12px}
.mdc-subcats li{margin-bottom: 5px;}
.mdc-filter label{display:flex;gap:8px;align-items:center;color:#243046;font-size:16px;line-height:1.2;cursor:pointer; margin-bottom: 7px;}
.mdc-filter input[type="checkbox"],.mdc-filter input[type="radio"]{width:18px;height:18px;border:1px solid #cfd6e4;border-radius:1px;appearance:none;display:inline-block;position:relative;background:#fff;transition:border-color .15s,box-shadow .15s}
.mdc-filter input[type="radio"]{border-radius:50%}
.mdc-filter input[type="checkbox"]:checked{background:#1e73be;border-color:#1e73be}
.mdc-filter input[type="radio"]:checked{background:#1e73be;border-color:#1e73be}
.mdc-filter input[type="checkbox"]:checked:after{content:"";position:absolute;left:6px;top:3px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* Year range */
.mdc-year-range{display:flex;align-items:center;gap:8px}
.mdc-year-input{flex:1 1 0;height:40px;padding:0 10px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;outline:none}
.mdc-year-input:focus{border-color:#9bb7ff;box-shadow:0 0 0 3px rgba(46,104,255,.12)}
.mdc-year-sep{color:#94a3b8}
.mdc-year-picker{background:#fff;border:1px solid #e8ebf2;border-radius:10px;padding:8px;width:260px;max-height:260px;overflow:auto;box-shadow:0 6px 16px rgba(16,24,40,.08)}
.mdc-year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.mdc-year-option{border:1px solid #e1e5ee;background:#f8fafc;border-radius:8px;padding:6px 0;cursor:pointer}
.mdc-year-option:hover{background:#eef5ff}

/* Result items */
.mdc-item{border:1px solid #e8ebf2;border-radius:14px;padding:16px;margin-bottom:14px;background:#fff;box-shadow:0 3px 10px rgba(16,24,40,.04)}
.mdc-item__title{margin:0 0 6px;font-size:18px;line-height:1.3}
.mdc-item__title a{color:#0f172a;text-decoration:none}
.mdc-item__title a:hover{text-decoration:underline}
.mdc-item__excerpt{color:#475569;font-size:14px}
.mdc-item__pdf{display:inline-block;margin-top:10px;padding:6px 10px;border-radius:8px;border:1px solid #dfe3ea;text-decoration:none;color:#1e73be;background:#f5f9ff}
.mdc-item__pdf:hover{background:#eef5ff}

/* Pagination */
.mdc-pagination{margin-top:18px}
.mdc-pagination .mdc-page{display:inline-block;padding:8px 12px;margin-right:6px;border:1px solid #e1e5ee;border-radius:10px;text-decoration:none;color:#0f172a;background:#fff}
.mdc-pagination .mdc-page:hover{background:#f6f8fc}
.mdc-pagination .is-active{background:#1e73be;color:#fff;border-color:#1e73be}

/* Categories grid */
.mdc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.mdc-grid-card{display:block;border:1px solid #e8ebf2;border-radius:14px;padding:16px;background:#fff;box-shadow:0 3px 10px rgba(16,24,40,.04);text-decoration:none;color:inherit;transition:transform .15s, box-shadow .15s, border-color .15s}
.mdc-grid-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(16,24,40,.08);border-color:#dfe3ea}
.mdc-grid-card-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.mdc-grid-card h3{margin:0;font-size:18px;line-height:1.2;color:#0f172a}
.mdc-grid-icon{width:40px;height:40px;background-size:cover;background-position:center;border-radius:10px;border:1px solid #e1e5ee;background-color:#f8fafc}
.mdc-grid-icon--placeholder{background-image:url('../img/category-default.svg');background-color:#f8fafc}
.mdc-subtitle{font-size:12px;color:#64748b;margin:4px 0;text-transform:uppercase;letter-spacing:.02em}
.mdc-grid-desc{color:#475569;font-size:14px;margin:6px 0 10px}
.mdc-grid-subcats{margin-top:10px; display: flex; flex-wrap: wrap; gap: .5rem;}
.mdc-chip{display:inline-block;background:#f5f9ff;border-radius:999px;padding: .125rem .625rem;font-size:12px;color:#1e3a8a;text-decoration:none}
.mdc-chip:hover{background:#edf0f3cc}
.mdc-grid-card__title-link{font-size: 1.125rem;line-height: 1.75rem;color: #3d3d3d;text-decoration: none!important;}
.mdc-grid-subcats .mdc-chip{text-decoration: none;}

/* Single page */
.mdc-single__header{padding:24px 0}
.mdc-single__meta{padding:24px 0}
.mdc-meta-list{list-style:none;padding:0;margin:0}
.mdc-meta-list li{margin-bottom:6px}

/* Loading state */
.mdc-loading{opacity:.6}

/* Responsive */
@media (max-width: 980px){
	.mdc-body{flex-direction:column}
	.mdc-sidebar,.mdc-results{width:100%}
}


/* ===== Accordion Styles START ===== */

/* 1. Делаем лейбл родителя кликабельным */
.mdc-cats .mdc-has-children > label {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px; /* відстань між чекбоксом і текстом */
    user-select: none; 
    font-size: 16px;
    line-height: 1.25;
}

/* Уніфікуємо відступи пунктів списку */
.mdc-cats li { margin-bottom: 4px; }

/* 2. Стиль для іконки (+/−) справа — однаковий розмір */
.mdc-cats .mdc-toggle {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: 1px solid #dfe3ea;
    border-radius: 4px;
    font-weight: 700;
    font-size: 12px; /* фіксований розмір символу */
    color: #1e73be;
    background: #f5f9ff;
    flex-shrink: 0; /* не стискати */
}

/* 3. Щоб чекбокс не "їхав" */
.mdc-cats .mdc-has-children > label input[type="checkbox"] { flex-shrink: 0; }

/* 4. Відступ для підкатегорій */
.mdc-subcats { margin-left: 16px; }

/* Вирівнювання блоків фільтрів */
.mdc-filter { padding: 16px; }
.mdc-filter h4 { margin: 0 0 8px; font-size: 16px; font-weight: 700; line-height: 1.25; }
.mdc-filter label { margin: 4px 0; display: flex; align-items: center; }

/* Підправляємо радіо й чекбокси в фільтрах */
.mdc-filter input[type="checkbox"],
.mdc-filter input[type="radio"] { margin-right: 8px; }

/* ===== Accordion Styles END ===== */

/* ====== Mobile Catalog ====== */
@media (max-width: 767px) {
  .mdc-catalog {
    padding: 0 10px;
    overflow-wrap: break-word;
    word-break: break-word;
  }

  .mdc-header h2 {
    font-size: 22px;
  }

  .mdc-search {
    flex-direction: column;
  }
  .mdc-search input,
  .mdc-search button {
    width: 100%;
  }

  .mdc-sidebar {
    min-width: unset;
  }

  .mdc-filter {
    padding: 12px;
    border-radius: 10px;
    margin-bottom: 12px;
  }
  .mdc-filter h4 {
    font-size: 15px;
  }
  .mdc-filter label {
    font-size: 14px;
  }

  .mdc-item {
    padding: 12px;
    border-radius: 10px;
    margin-bottom: 10px;
  }
  .mdc-item__title {
    font-size: 16px;
  }
  .mdc-item__excerpt {
    font-size: 13px;
  }

  .mdc-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .mdc-grid-card {
    padding: 14px;
  }

  .mdc-pagination .mdc-page {
    padding: 6px 10px;
    font-size: 14px;
  }

  .mdc-year-range {
    flex-wrap: wrap;
  }
  .mdc-year-input {
    min-width: 80px;
  }
}