/*
Theme Name: Địa Chỉ Mới
Theme URI: https://diachimoi.vn
Description: Theme con của Astra cho website tra cứu đơn vị hành chính Việt Nam
Author: Admin
Author URI: https://diachimoi.vn
Template: astra
Version: 1.0.0
Text Domain: diachimoi
*/

/* Theme customizations start here */
/* Các tùy chỉnh CSS chung */
body {
    font-family: 'Roboto', sans-serif;
}

/* Tùy chỉnh bố cục trang chủ */
.site-description {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 30px;
}

.search-box {
    margin-bottom: 30px;
    padding: 25px;
    background-color: #f5f5f5;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.search-box label {
    display: block;
    margin-bottom: 10px;
    font-weight: 500;
}

.search-box input[type="text"] {
    width: 100%;
    padding: 15px;
    font-size: 16px;
    border-radius: 4px;
    border: 1px solid #ddd;
    margin-bottom: 15px;
}

.search-box button.search-submit {
    background-color: #4caf50;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
}

.search-box button.search-submit:hover {
    background-color: #388e3c;
}

/* Tùy chỉnh các khối cấp hành chính trên trang chủ */
.administrative-levels {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px 30px;
}

.level-box {
    flex: 1;
    min-width: 300px;
    margin: 15px;
    padding: 25px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.level-box h3 {
    margin-top: 0;
    margin-bottom: 15px;
    color: #333;
    font-size: 24px;
}

.level-box p {
    margin-bottom: 20px;
}

.level-box .button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #2196f3;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 500;
}

.level-box .button:hover {
    background-color: #0b7dda;
}

/* Tùy chỉnh danh sách cập nhật gần đây */
.recent-updates {
    margin-bottom: 40px;
}

.recent-updates h2 {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}

ul.recent-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

ul.recent-list li {
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
}

ul.recent-list .post-type-label {
    display: inline-block;
    padding: 3px 8px;
    margin-right: 10px;
    background-color: #e1f5fe;
    color: #0277bd;
    border-radius: 3px;
    font-size: 14px;
}

ul.recent-list a {
    text-decoration: none;
    color: #333;
    font-weight: 500;
}

ul.recent-list a:hover {
    color: #2196f3;
}

ul.recent-list .updated-date {
    display: block;
    margin-top: 5px;
    font-size: 14px;
    color: #757575;
}

/* Tùy chỉnh danh sách tỉnh/thành phố */
.provinces-list {
    margin-bottom: 40px;
}

.provinces-list h3 {
    margin-bottom: 20px;
}

.provinces-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.provinces-list li {
    flex: 0 0 25%;
    padding: 8px 15px;
}

.provinces-list a {
    text-decoration: none;
    color: #333;
}

.provinces-list a:hover {
    color: #2196f3;
}

/* Tùy chỉnh trang chi tiết đơn vị hành chính */
.admin-unit-details {
    padding: 25px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.admin-unit-meta {
    margin: 20px 0;
    padding: 15px;
    background-color: #f9f9f9;
    border-radius: 4px;
}

.admin-unit-meta .meta-item {
    margin-bottom: 8px;
}

.admin-unit-status {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 4px;
    font-weight: 500;
    margin-left: 5px;
}

.status-active {
    background-color: #e8f5e9;
    color: #2e7d32;
}

.status-merged {
    background-color: #fff8e1;
    color: #f57f17;
}

.status-abolished {
    background-color: #ffebee;
    color: #c62828;
}

.address-info, .contact-info {
    margin-top: 25px;
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 4px;
}

.address-info h3, .contact-info h3 {
    margin-top: 0;
    margin-bottom: 15px;
    color: #333;
}

.address-item, .contact-item {
    margin-bottom: 10px;
}

.last-updated {
    margin-top: 20px;
    font-size: 14px;
    color: #757575;
}

.map-container {
    margin: 25px 0;
    border-radius: 8px;
    overflow: hidden;
}

.map-container h3 {
    margin-bottom: 15px;
}

.districts-list, .communes-list {
    margin-top: 30px;
}

.districts-list h3, .communes-list h3 {
    margin-bottom: 15px;
}

.districts-list ul, .communes-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.districts-list li, .communes-list li {
    flex: 0 0 33.33%;
    padding: 8px 15px;
}

.districts-list a, .communes-list a {
    text-decoration: none;
    color: #333;
}

.districts-list a:hover, .communes-list a:hover {
    color: #2196f3;
}

.social-sharing {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.social-sharing h4 {
    margin-bottom: 15px;
}

/* Tùy chỉnh trang tìm kiếm */
.search-filters {
    margin: 20px 0;
    padding: 20px;
    background-color: #f5f5f5;
    border-radius: 8px;
}

.filter-group {
    margin-bottom: 15px;
}

.filter-group label {
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
}

.checkbox-group label {
    flex: 0 0 auto;
    margin-right: 20px;
    font-weight: normal;
}

.filter-submit {
    background-color: #2196f3;
    color: white;
    padding: 10px 15px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 500;
}

.filter-submit:hover {
    background-color: #0b7dda;
}

.search-results-count {
    margin-bottom: 20px;
}

.search-result-item {
    margin-bottom: 20px;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.result-header {
    margin-bottom: 10px;
}

.result-type {
    display: inline-block;
    padding: 3px 8px;
    margin-right: 10px;
    background-color: #e1f5fe;
    color: #0277bd;
    border-radius: 3px;
    font-size: 14px;
}

.result-title {
    margin: 10px 0;
    font-size: 20px;
}

.result-title a {
    text-decoration: none;
    color: #333;
}

.result-title a:hover {
    color: #2196f3;
}

.result-meta {
    margin-bottom: 15px;
}

.result-address {
    margin-top: 10px;
}

.result-excerpt {
    margin-bottom: 15px;
}

.result-link {
    display: inline-block;
    padding: 8px 15px;
    background-color: #2196f3;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
}

.result-link:hover {
    background-color: #0b7dda;
}

.no-results {
    padding: 30px;
    text-align: center;
    background-color: #f9f9f9;
    border-radius: 8px;
}

.pagination {
    margin: 30px 0;
    text-align: center;
}

.pagination .page-numbers {
    display: inline-block;
    padding: 8px 15px;
    margin: 0 5px;
    background-color: #f5f5f5;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
}

.pagination .page-numbers.current {
    background-color: #2196f3;
    color: white;
}

.pagination .page-numbers:hover:not(.current) {
    background-color: #e0e0e0;
}

/* Tùy chỉnh trang archive */
.admin-units-filters {
    margin: 20px 0;
    padding: 20px;
    background-color: #f5f5f5;
    border-radius: 8px;
}

.admin-units-filters select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-bottom: 10px;
}

.admin-units-count {
    margin-bottom: 20px;
}

.admin-units-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.admin-unit-card {
    flex: 0 0 calc(33.33% - 30px);
    margin: 15px;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.admin-unit-header {
    margin-bottom: 15px;
}

.admin-unit-title {
    margin: 0 0 10px 0;
    font-size: 18px;
}

.admin-unit-title a {
    text-decoration: none;
    color: #333;
}

.admin-unit-title a:hover {
    color: #2196f3;
}

.admin-unit-province, .admin-unit-district {
    margin-bottom: 10px;
    font-size: 14px;
}

.admin-unit-excerpt {
    margin-bottom: 15px;
    font-size: 14px;
}

.admin-unit-link {
    display: inline-block;
    padding: 8px 15px;
    background-color: #2196f3;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
}

.admin-unit-link:hover {
    background-color: #0b7dda;
}

/* Responsive styles */
@media (max-width: 992px) {
    .admin-unit-card {
        flex: 0 0 calc(50% - 30px);
    }
    
    .provinces-list li,
    .districts-list li, 
    .communes-list li {
        flex: 0 0 33.33%;
    }
}

@media (max-width: 768px) {
    .administrative-levels {
        display: block;
    }
    
    .level-box {
        min-width: auto;
    }
    
    .provinces-list li {
        flex: 0 0 50%;
    }
    
    .districts-list li, 
    .communes-list li {
        flex: 0 0 50%;
    }
    
    .admin-unit-card {
        flex: 0 0 calc(100% - 30px);
    }
}

@media (max-width: 576px) {
    .provinces-list li,
    .districts-list li, 
    .communes-list li {
        flex: 0 0 100%;
    }
    
    .checkbox-group label {
        flex: 0 0 100%;
        margin-bottom: 10px;
    }
} 