/*
 * 51ziy.com
 * 版权所有，未经允许禁止复制！
 */
:root {
    --51ziy-main: #4c384f;
    --51ziy-white: #fff;
    --51ziy-fontcolor: #3C3C3C;
    --51ziy-secondtext: #a1a2b8;
    --51ziy-card-bg: #fff;
    --51ziy-background: #f7f9fe;
    --51ziy-secondbg: #f7f7f9;
    --51ziy-theme: #425aef;
    --51ziy-red: #d8213c;
    --51ziy-green: #57bd6a;
    --51ziy-blue: #3b82f6;
    --51ziy-purple: #8b5cf6;
    --51ziy-border-radius: 12px;
    --style-border: 1px solid #e3e8f7;
    --style-border-hover: 1px solid var(--51ziy-theme);
    --style-border-dashed: 1px dashed rgba(66, 89, 239, 0.137);
    --51ziy-shadow-border: 0 8px 16px -4px rgba(44, 45, 48, 0.047);
    --51ziy-shadow-red: 0 8px 12px -3px rgba(238, 125, 121, 0.212);
    --51ziy-shadow-green: 0 8px 12px -3px rgba(135, 238, 121, 0.212);
    --51ziy-shadow-main: 0 8px 12px -3px rgba(66, 89, 239, 0.137);
    --51ziy-shadow-blue: 0 8px 12px -3px rgba(59, 130, 246, 0.2);
    --51ziy-shadow-purple: 0 8px 12px -3px rgba(139, 92, 246, 0.2);
}

@keyframes donate_effcet {
    0% { opacity: 0; transform: translateY(-20px); }
    100% { opacity: 1; transform: translateY(0); }
}

#mcp-enhanced-copyright-wrapper { margin-top: 30px; }
.post-copyright {
    position: relative; margin-top: 40px; padding: 1rem 1.3rem;
    border: var(--style-border); border-radius: var(--51ziy-border-radius);
    background: var(--51ziy-card-bg); text-align: center;
    transition: background-color .3s, border-color .3s;
}
.copyright-icon-top-right {
    position: absolute; top: 10px; right: 15px; font-size: 8em;
    color: var(--51ziy-main); opacity: 0.08;
    z-index: 0; pointer-events: none; transition: color .3s;
}

.post-copyright__author_box { padding-top: 33px; position: relative; z-index: 1; }
.post-copyright__author_img {
    width: 66px; height: 66px; position: absolute;
    left: calc(50% - 33px); top: -33px;
    border-radius: 50%; transition: transform .5s;
}
.post-copyright__author_img:hover { transform: rotate(360deg); }
.post-copyright__author_img img {
    width: 100%; height: 100%; border-radius: 50%; object-fit: cover;
    border: 3px solid var(--51ziy-card-bg); transition: border-color .3s;
}
.post-copyright__author_name { font-size: 20px; font-weight: 700; color: var(--51ziy-fontcolor); transition: color .3s; }
.post-copyright__author_desc { font-size: 14px; color: #8a919f; margin-top: 4px; transition: color .3s; }

.post-copyright__post__info { 
    display: flex; align-items: center; justify-content: center; 
    margin: 1rem 0; position: relative; z-index: 1; gap: 0.6rem;
}
.post-copyright__original { 
    background: var(--51ziy-main); color: var(--51ziy-white) !important; 
    padding: 0.3rem 0.8rem;
    font-size: .8rem; 
    border-radius: 6px; 
    font-weight: 700; line-height: 1.4; 
    flex-shrink: 0;
    transition: background .3s, transform .3s;
}
.post-copyright__original:hover {
    transform: scale(1.05);
}
.post-copyright-title {
    font-weight: 500; color: var(--51ziy-fontcolor); position: relative;
    padding-bottom: 5px; transition: color .3s; line-height: 1.5;
}
.post-copyright-title:hover { color: var(--51ziy-theme); }
.post-copyright-title::after {
    content: ''; position: absolute; bottom: 0; left: 50%; width: 0%; height: 2px;
    background: linear-gradient(to right, var(--51ziy-green), var(--51ziy-theme));
    transition: all 0.4s ease; transform: translateX(-50%);
}
.post-copyright-title:hover::after { width: 100%; }

.post-copyright .post-tools {
    display: flex !important; justify-content: center !important;
    align-items: center !important; flex-wrap: wrap;
    margin-top: 1rem; position: relative; z-index: 1;
    gap: 10px 12px;
}
.post-reward { margin: 0; position: relative; }

.reward-button {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    height: 38px !important; border-radius: 8px !important; cursor: pointer !important;
    transition: all .3s cubic-bezier(.25,.8,.25,1) !important; text-decoration: none !important;
    box-sizing: border-box !important; padding: 0 1.1rem !important;
    color: var(--51ziy-white) !important; white-space: nowrap; font-weight: 500; font-size: 14px;
}
.reward-button i { font-size: 14px !important; line-height: 1 !important; margin-right: 6px; }

.reward-button.red { background: var(--51ziy-red); box-shadow: var(--51ziy-shadow-red); }
.reward-button.green { background: var(--51ziy-green); box-shadow: var(--51ziy-shadow-green); }
.reward-button.blue { background: var(--51ziy-blue); box-shadow: var(--51ziy-shadow-blue); }
.reward-button.purple { background: var(--51ziy-purple); box-shadow: var(--51ziy-shadow-purple); }
.post-reward:hover .reward-button, a.reward-button:hover { 
    transform: translateY(-2px); box-shadow: 0 5px 10px -3px rgba(0,0,0,.25) !important;
}
a.reward-button { color: var(--51ziy-white) !important; }

.reward-main {
    position: absolute; bottom: calc(100% + 10px); left: 50%; transform: translateX(-50%);
    z-index: 99; display: none; padding-bottom: 15px; width: max-content;
}
.reward-main .reward-all {
    border-radius: 12px; background: var(--51ziy-background); border: var(--style-border);
    padding: .8rem; display: flex; flex-direction: column; align-items: center;
    box-shadow: var(--51ziy-shadow-border); animation: donate_effcet .3s .1s ease both;
    transition: background-color .3s, border-color .3s;
}
.reward-title { font-weight: 700; color: var(--51ziy-red); white-space: nowrap; transition: color .3s; }
.reward-group { display: flex; list-style: none; padding: 0; margin-top: .5rem; }
.reward-item { padding: 0 8px; }
.post-qr-code-img {
    width: 130px !important; height: 130px !important; border-radius: 8px;
    border: 3px solid var(--51ziy-theme); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); display: block;
}
.post-qr-code-desc, .reward-dec { text-align: center; margin-top: 8px; margin-bottom: 0; font-size: 12px; transition: color .3s; }
#qrcode-enhanced { padding: 5px; background: #fff; border-radius: 8px; }

.reward-item.wechat-qr .post-qr-code-img {
    border-color: #57bd6a !important;
}

.post-copyright__notice {
    font-size: 13px; 
    line-height: 1.7; 
    width: 100%; border-top: var(--style-border-dashed);
    padding-top: 15px; margin-top: 1.5rem; text-align: center; position: relative; z-index: 1;
    transition: border-color .3s; color: var(--51ziy-secondtext);
}
.post-copyright-info, .post-copyright-extra-html {
    display: block; 
    margin-bottom: 8px;
}
.post-copyright-extra-html:last-child {
    margin-bottom: 0;
}
.post-copyright-info a, .post-copyright-extra-html a {
    color: var(--51ziy-main); text-decoration: none;
    border-bottom: 1px dashed var(--51ziy-main);
    transition: color .3s, border-color .3s;
}
.post-copyright-info a:hover, .post-copyright-extra-html a:hover { color: var(--51ziy-theme); border-bottom: 1px solid var(--51ziy-theme); }

.post-copyright-extra-html { color: inherit; } 
.post-copyright-extra-html .mcp-extra-info-title {
    color: var(--51ziy-fontcolor); font-weight: 500;
}
.post-copyright-extra-html .mcp-extra-info-link {
    text-decoration: none !important; transition: opacity .2s; border-bottom: none !important;
    margin: 0 2px;
}
.post-copyright-extra-html .mcp-extra-info-link:hover { opacity: 0.7; }
.post-copyright-extra-html .mcp-link-blue { color: #007bff !important; }
.post-copyright-extra-html .mcp-link-red { color: #ff0000 !important; }
.post-copyright-extra-html .mcp-extra-info-separator {
    color: #ccc; margin: 0 6px; font-size: 10px;
}
.post-copyright-extra-html svg {
    vertical-align: middle; position: relative; top: -1px;
    margin-right: 4px; width: 16px; height: 16px; fill: currentColor;
}

body.dark-theme .post-copyright { background: #2a2d33; border-color: #40454d; }
body.dark-theme .copyright-icon-top-right { color: #fff; opacity: 0.05; }
body.dark-theme .post-copyright__author_img img { border-color: #2a2d33; }
body.dark-theme .post-copyright__author_name { color: #e8ecf1; }
body.dark-theme .post-copyright__author_desc { color: #a0aec0; }
body.dark-theme .post-copyright__original { background: #4a5568; }
body.dark-theme .post-copyright-title { color: #e8ecf1; }
body.dark-theme .post-copyright-title:hover { color: #79b0ed; }
body.dark-theme .reward-main .reward-all { background: #333942; border-color: #4a5568; }
body.dark-theme .reward-title { color: var(--51ziy-red); }
body.dark-theme .reward-dec, body.dark-theme .post-qr-code-desc { color: #a0aec0; }
body.dark-theme .post-copyright__notice { border-top-color: #40454d; color: #a0aec0; }
body.dark-theme .post-copyright-info a { color: #79b0ed; border-bottom-color: #79b0ed; }
body.dark-theme .post-copyright-extra-html .mcp-extra-info-title { color: #e8ecf1 !important; }
body.dark-theme .post-copyright-extra-html .mcp-link-blue { color: #63b3ed !important; }
body.dark-theme .post-copyright-extra-html .mcp-link-red { color: #f87171 !important; }
body.dark-theme .post-copyright-extra-html .mcp-extra-info-separator { color: #555; }
body.dark-theme .reward-button.red, body.dark-theme .reward-button.green,
body.dark-theme .reward-button.blue, body.dark-theme .reward-button.purple { box-shadow: 0 4px 8px -2px rgba(0,0,0,0.3); }
body.dark-theme .post-reward:hover .reward-button, body.dark-theme a.reward-button:hover {
    transform: translateY(-2px); box-shadow: 0 6px 12px -3px rgba(0,0,0,0.4) !important;
}


#mcp-copyright-alert-wrapper {
    position: fixed; top: 20px; left: 50%; transform: translateX(-50%);
    z-index: 100001; pointer-events: none;
}
.mcp-copyright-alert {
    display: flex; align-items: center; padding: 12px 18px; border-radius: 8px;
    background-color: #2c3e50; color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); font-size: 14px;
    font-weight: 500; pointer-events: auto;
}
.mcp-alert-icon { margin-right: 10px; font-size: 18px; line-height: 1; }
.mcp-copyright-alert.success .mcp-alert-icon { color: #4CAF50; }
.mcp-copyright-alert.error .mcp-alert-icon { color: #f44336; }
.mcp-copyright-alert.info .mcp-alert-icon { color: #2196F3; }

/* 动画定义已移至 common-animations.css */
.mcp-alert-fade-in .mcp-copyright-alert { animation: mcp-fade-in-down 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) forwards; }
.mcp-alert-fade-out .mcp-copyright-alert { animation: mcp-fade-out-up 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) forwards; }

@media screen and (max-width: 768px) {
    .post-tools .mcp-hide-on-mobile {
        display: none !important;
    }
    .post-copyright__post__info {
        flex-direction: column; 
        gap: 0.5rem;        
        margin-bottom: 1.5rem;  
    }

    .post-copyright__original {
        font-size: 0.85rem;    
        padding: 0.4rem 0.9rem; 
    }
    
    .post-copyright-title {
        text-align: center; 
    }
}