/* 页面整体样式 */
body { 
    padding: 20px; 
    background-color: white; 
    color: #333; 
}
h2 { 
    color: #004f51; 
    border-bottom: 1px solid #ccc; 
    padding-bottom: 10px; 
    margin-top: 0;
}

/* 图库网格布局 */
#gallery {
    display: grid;
    /* 适应屏幕宽度，最小宽度 200px */
    grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); 
    gap: 20px;
    margin-top: 20px;
}

/* 单个产品卡片 */
.card {
    /* border: 1px solid #f6f6f6; */
    /* border-radius: 3px; */
    overflow: hidden;
    /* box-shadow: 0 2px 5px rgba(0,0,0,0.05); */
    background-color: #fff;
    cursor: pointer; /* 表示可点击 */
}

/* 图片样式：强制 42:108 比例 */
.card img {
    width: 100%;
    /* 使用 aspect-ratio 属性来强制比例（现代浏览器支持） */
    aspect-ratio: 42 / 108; 
    object-fit: contain;
    display: block;
    background-color: #f8f8f8;
}
p{
    font-size: 0.6em;
}
.card h4, .card p {
    padding: 10 10px;
    margin: 5px 0;
    text-align: center;
    font-size: 0.75em;
}
.card p{
    color: #666;
}
.card-info {
    padding: 0 0 20px 0;
}
.card-info h4 {
    margin: 10px 0 5px 0;
    font-size: 0.85em;
    color: #333;
}
/* -------------------- 弹出窗口样式 -------------------- */
.modal {
    display: none; 
    position: fixed; 
    z-index: 1000; 
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto; 
    background-color: rgba(0,0,0,0.8); 
}

.modal-content {
    margin: 5% auto; /* 居中显示 */
    background-color: #fefefe;
    padding: 20px;
    border-radius: 8px;
    width: 80%; 
    max-width: 900px;
    display: flex;
    gap: 20px;
    justify-content: center;
}

.modal-image {
    max-width: 60%; 
    height: auto;
    object-fit: contain;
}

.modal-info {
    max-width: 40%;
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    position: absolute;
    top: 10px;
    right: 20px;
}

.close:hover,
.close:focus {
    color: #333;
    text-decoration: none;
    cursor: pointer;
}

.modal-info table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 15px;
}
.modal-info th, .modal-info td {
    padding: 8px;
    text-align: left;
    border-bottom: 1px solid #eee;
}
.modal-info th {
    font-weight: bold;
    width: 30%;
    color: #555;
}