.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity 0.3s ease;}.modal-container{background-color:#fff;border-radius:8px;box-shadow:0 10px 25px rgba(0,0,0,0.2);width:400px;max-width:90%;max-height:90vh;overflow-y:auto;position:relative;}.modal-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;}.modal-header h2{font-size:20px;font-weight:500;color:#333;margin:0;}.modal-close{font-size:24px;color:#999;cursor:pointer;background:none;border:none;line-height:1;}.modal-body{padding:20px;}.modal-footer{text-align:center;margin-top:20px;font-size:14px;color:#666;}.modal-footer a{color:#ff6d3f;text-decoration:none;transition:color 0.3s;}.modal-footer a:hover{color:#ff5c26;}@media (max-width:768px){.modal-container{width:95%;max-width:350px;}}.modal-body .form-group{position:relative;margin-bottom:20px;}.modal-body .form-group label{position:absolute;top:-10px;left:10px;font-size:12px;background-color:white;padding:0 5px;color:#666;z-index:2;pointer-events:none;transition:all 0.3s ease;}.modal-body .form-group.focused label{color:#ff6d3f;}.modal-body .form-group input{width:100%;padding:12px 15px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;height:45px;transition:all 0.3s;}.modal-body .form-group input:focus{border-color:#ff6d3f;box-shadow:0 0 0 3px rgba(255,109,63,0.15);outline:none;}.form-checkbox{display:flex;align-items:center;margin-bottom:15px;}.form-checkbox input{margin-right:8px;width:16px;height:16px;}.form-checkbox label{font-size:14px;color:#666;cursor:pointer;}.form-submit{width:100%;background-color:#ff6d3f;color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color 0.3s;}.form-submit:hover{background-color:#ff5c26;}.form-optional{text-align:center;margin-top:15px;font-size:14px;color:#999;}.form-optional a{color:#ff6d3f;text-decoration:none;margin:0 5px;}.form-optional a:hover{text-decoration:underline;}.form-divider{display:flex;align-items:center;margin:20px 0;color:#999;font-size:14px;}.form-divider:before,.form-divider:after{content:'';flex:1;height:1px;background-color:#f0f0f0;margin:0 10px;}.login-options{display:flex;justify-content:center;gap:15px;margin-top:15px;}.login-option{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid #e0e0e0;color:#999;font-size:18px;cursor:pointer;transition:all 0.3s;}.login-option:hover{transform:translateY(-3px);box-shadow:0 5px 10px rgba(0,0,0,0.1);}.login-wechat{color:#2aae67;border-color:#2aae67;}.login-qq{color:#12b7f5;border-color:#12b7f5;}.login-weibo{color:#e6162d;border-color:#e6162d;}body.modal-open{overflow:hidden;padding-right:17px;}@media screen and (max-width:768px){.modal-container{padding:24px;width:360px;}.modal-title{font-size:22px;}}@media screen and (max-width:480px){.modal-container{padding:20px;width:320px;}.modal-title{font-size:20px;}}#cert-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:9999;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s ease;}#cert-modal.show{opacity:1;}#cert-modal .modal-container{background-color:#fff;border-radius:8px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:translateY(30px);transition:transform 0.3s ease;}#cert-modal.show .modal-container{transform:translateY(0);}.highlight-section{animation:highlight-pulse 2s ease-in-out;position:relative;}@keyframes highlight-pulse{0%{box-shadow:0 0 0 0 rgba(255,109,63,0.1);}50%{box-shadow:0 0 0 10px rgba(255,109,63,0.4);}100%{box-shadow:0 0 0 0 rgba(255,109,63,0.1);}}.highlight-section::before{content:'';position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border:2px solid #ff6d3f;border-radius:10px;opacity:0;animation:highlight-border 2s ease-in-out;pointer-events:none;}@keyframes highlight-border{0%{opacity:0;}25%{opacity:1;}75%{opacity:1;}100%{opacity:0;}}.cert-btn.certified{background-color:#e0e0e0;color:#666;cursor:default;}.cert-btn.certified:hover{background-color:#e0e0e0;}

/* 新闻模态框样式 */
.news-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.news-modal.show {
    display: flex;
    opacity: 1;
}

.news-modal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
}

.news-modal-content {
    position: relative;
    background: #fff;
    border-radius: 12px;
    max-width: 700px;
    width: 90%;
    max-height: 80vh;
    margin: auto;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    transform: translateY(30px);
    transition: transform 0.3s ease;
}

.news-modal.show .news-modal-content {
    transform: translateY(0);
}

.news-modal-header {
    padding: 25px 30px 20px;
    border-bottom: 1px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    background: white;
}

.news-header-content {
    flex: 1;
    margin-right: 20px;
}

.news-modal-header h3 {
    margin: 0 0 10px 0;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
    color: #333;
}

.news-modal-close {
    background: none;
    border: none;
    color: #999;
    font-size: 20px;
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-top: -4px;
}

.news-modal-close:hover {
    background-color: #f8f9fa;
    color: #666;
}

.news-modal-body {
    padding: 30px;
    overflow-y: auto;
    max-height: calc(80vh - 140px);
}

.news-modal-meta {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
}

.news-date {
    color: #666;
    font-size: 14px;
    display: flex;
    align-items: center;
}

.news-date::before {
    content: '发布时间：';
    color: #999;
    margin-right: 4px;
}

.news-content {
    font-size: 16px;
    line-height: 1.8;
    color: #333;
}

.news-content-text {
    text-align: justify;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

.news-content-text p {
    margin-bottom: 18px;
    text-indent: 2em;
    color: #333;
    font-size: 16px;
    line-height: 1.8;
}

.news-content-text p:first-child {
    margin-top: 0;
}

.news-content-text p:last-child {
    margin-bottom: 0;
}

.loading-text {
    text-align: center;
    color: #999;
    font-style: italic;
}

.modal-error {
    text-align: center;
    padding: 30px;
    color: #999;
}

.modal-error i {
    font-size: 48px;
    margin-bottom: 15px;
    color: #ff6b6b;
}

.error-btn {
    background: #ff6b6b;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    cursor: pointer;
    margin-top: 15px;
    transition: background-color 0.3s;
}

.error-btn:hover {
    background: #ff5252;
}

/* 首页新闻列表样式 - 保持原始简洁设计 */
.news-item {
    cursor: pointer;
    transition: color 0.3s ease;
}

.news-item:hover {
    color: #007bff;
}

.news-item:hover .news-text {
    color: #007bff;
}

.news-text {
    font-size: 14px;
    color: #333;
    line-height: 1.5;
    text-decoration: none;
    display: block;
}

.news-badge {
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 10px;
    margin-left: 5px;
    font-weight: 500;
}

.news-top {
    background: #ff6b6b;
    color: white;
}

.news-hot {
    background: #ffa500;
    color: white;
}

.news-meta {
    display: none;
}

.news-loading, .news-error, .news-empty {
    text-align: center;
    padding: 40px 20px;
    color: #999;
    font-size: 14px;
}

.news-loading i, .news-error i, .news-empty i {
    display: block;
    font-size: 24px;
    margin-bottom: 10px;
}

.retry-btn {
    background: #667eea;
    color: white;
    border: none;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    cursor: pointer;
    margin-top: 8px;
    transition: background-color 0.3s;
}

.retry-btn:hover {
    background: #5a6fd8;
}

/* 响应式设计 */
@media (max-width: 768px) {
    .news-modal-content {
        width: 95%;
        max-width: none;
        border-radius: 8px;
    }
    
    .news-modal-header {
        padding: 15px 20px;
    }
    
    .news-modal-header h3 {
        font-size: 18px;
    }
    
    .news-modal-body {
        padding: 20px;
    }
}