/* ==========================================================
   Axinkai 主题补充样式
   依赖：Cstatic/css/style.css、Cstatic/css/pages.css
   ========================================================== */

/* ---------- Logo 图片 ---------- */
.logo .emoji.emoji-img {
    overflow: hidden;
    padding: 0;
}
.logo .emoji.emoji-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

/* ---------- 导航与按钮 ---------- */
.nav-right .icon-btn,
.nav-right .btn-primary {
    text-decoration: none;
}
.menu a.active {
    color: var(--green-dark);
    background: var(--green-soft);
}

/* ---------- 文章过期提醒 ---------- */
.overdue-tip {
    margin: 22px 34px 0;
    padding: 14px 18px;
    border-radius: 12px;
    background: #fff6e5;
    border: 1px solid #ffe0a3;
    color: #a1701a;
    font-size: 14px;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.overdue-tip .ti {
    margin-top: 3px;
    flex: none;
}

/* ---------- 版权声明 ---------- */
.copyright-box {
    margin: 0 34px 26px;
    padding: 18px 20px;
    border-radius: 14px;
    background: var(--green-soft);
    border: 1px solid #fff;
}
.copyright-box p {
    font-size: 14px;
    color: var(--text-soft);
    margin-bottom: 8px;
}
.copyright-box .kv {
    display: block;
}
.copyright-box .kv span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--text-soft);
}
.copyright-box code {
    padding: 2px 8px;
    border-radius: 6px;
    background: #fff;
    color: var(--green-dark);
    font-family: Consolas, Monaco, monospace;
    font-size: 12px;
    word-break: break-all;
}

/* ---------- 上下篇（适配 Typecho 输出结构） ---------- */
.post-nav .nav-item {
    padding: 16px;
    border-radius: 14px;
    border: 1px dashed rgba(108, 191, 132, .45);
    background: rgba(255, 255, 255, .5);
    transition: transform .2s ease, box-shadow .2s ease;
}
.post-nav .nav-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow);
}
.post-nav .nav-item::before {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--text-soft);
    margin-bottom: 4px;
}
.post-nav .nav-item.prev::before {
    content: "← 上一篇";
}
.post-nav .nav-item.next::before {
    content: "下一篇 →";
}
.post-nav .nav-item a {
    display: block;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.5;
}
.post-nav .nav-item a:hover {
    color: var(--green-dark);
}
.post-nav .nav-item.next {
    text-align: right;
}
.post-nav:empty {
    display: none;
}

/* ---------- 正文富文本 ---------- */
.post-body img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: 8px 0;
}
.post-body a {
    color: var(--green-dark);
    border-bottom: 1px dashed rgba(108, 191, 132, .6);
    word-break: break-all;
}
.post-body a:hover {
    color: var(--green);
}
.post-body ul,
.post-body ol {
    margin: 0 0 16px;
    padding-left: 22px;
    color: #46604f;
}
.post-body ul {
    list-style: disc;
}
.post-body ol {
    list-style: decimal;
}
.post-body li {
    padding: 3px 0;
}
.post-body ul.check-list {
    padding-left: 0;
    list-style: none;
}
.post-body code {
    padding: 2px 6px;
    border-radius: 6px;
    background: rgba(108, 191, 132, .14);
    color: var(--green-dark);
    font-family: Consolas, Monaco, monospace;
    font-size: 13px;
}
.post-body pre {
    margin: 16px 0;
    padding: 16px 18px;
    border-radius: 12px;
    background: #2f4a3a;
    color: #eafaf0;
    overflow-x: auto;
    font-size: 13px;
    line-height: 1.7;
}
.post-body pre code {
    background: transparent;
    color: inherit;
    padding: 0;
}
.post-body table {
    display: block;
    width: 100%;
    margin: 16px 0;
    overflow-x: auto;
    border-collapse: collapse;
    font-size: 14px;
}
.post-body th,
.post-body td {
    padding: 10px 12px;
    border: 1px solid rgba(108, 191, 132, .28);
    text-align: left;
}
.post-body th {
    background: var(--green-soft);
    color: var(--green-dark);
}
.post-body hr {
    margin: 24px 0;
    border: none;
    border-top: 1px dashed rgba(108, 191, 132, .35);
}
.post-body h2,
.post-body h3 {
    scroll-margin-top: 90px;
}

/* ---------- 目录子级缩进 ---------- */
.toc-list a.sub {
    padding-left: 26px;
    font-size: 13px;
}

/* ---------- 评论列表（Typecho 结构适配） ---------- */
.comments .comment-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.comments .comment-children {
    margin: 0;
    padding: 0;
}
.comments .comment-children {
    margin-left: 54px;
}
.comments .comment-item {
    border-bottom: 1px dashed rgba(108, 191, 132, .3);
}
.comments .comment-item:last-child {
    border-bottom: none;
}
.comments .comment-item.is-child {
    border-bottom: none;
}
.comments .text p {
    margin: 0 0 6px;
}
.comments .text p:last-child {
    margin-bottom: 0;
}
.comments .text img {
    max-width: 100%;
    border-radius: 10px;
}
.comments .acts a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--text-soft);
}
.comments .acts a:hover {
    color: var(--green-dark);
}
.comments .comment-item.is-author .ava-sm {
    background: var(--green);
    color: #fff;
}
.comments .comment-item.is-author .cat-badge {
    margin: 0;
}
.comments .comment-awaiting-moderation {
    font-style: normal;
    background: var(--green-soft);
    color: var(--green-dark);
    font-size: 12px;
    padding: 1px 8px;
    border-radius: 999px;
    margin-left: 6px;
}
.comment-pager {
    margin-top: 16px;
    font-size: 13px;
    color: var(--text-soft);
}
.comment-pager a {
    margin-right: 10px;
}
.cancel-comment-reply {
    margin-top: 10px;
    font-size: 13px;
}
.cancel-comment-reply a {
    color: var(--green-dark);
}

/* ---------- 评论表单 ---------- */
.form-card .form-title {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 18px;
    font-weight: 800;
    color: var(--green-dark);
    margin: 0 0 16px;
}
.form-card .form-user {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 16px;
    padding: 6px 14px;
    border-radius: 999px;
    background: var(--green-soft);
    border: 1px solid #fff;
    font-size: 13px;
    color: var(--text-soft);
}
.form-card .form-user a {
    color: var(--green-dark);
    font-weight: 700;
}
.form-card .form-user a:hover {
    color: var(--green);
}
.form-card .form-tip a {
    color: var(--green-dark);
}
.form-card .field + .field {
    margin-top: 14px;
}
.form-card .field input,
.form-card .field textarea {
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.form-card .field input:hover,
.form-card .field textarea:hover {
    border-color: rgba(108, 191, 132, .6);
}
.form-card .field input:focus,
.form-card .field textarea:focus {
    outline: none;
    border-color: var(--green);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(108, 191, 132, .16);
}
.form-card .field textarea {
    resize: vertical;
    min-height: 130px;
    line-height: 1.7;
}
.form-card .field input::placeholder,
.form-card .field textarea::placeholder {
    color: #9ab5a5;
}
.form-card .form-actions .form-tip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.form-card .cancel-comment-reply a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: 999px;
    background: var(--green-soft);
    color: var(--green-dark);
    font-size: 13px;
}

/* 友链页等非文章卡片位置的评论区容器 */
.comments-card {
    margin-top: 6px;
    padding: 26px 0 6px;
}
.comments-card .comments {
    padding: 0 26px 26px;
}
.comments-card .form-card {
    margin: 0 26px 26px;
    background: rgba(255, 255, 255, .72);
}

/* ---------- 分页（Typecho pageNav） ---------- */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 30px 0 0;
    flex-wrap: wrap;
}
.pagination:empty {
    display: none;
}
.pagination .page-navigator {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}
.pagination .page-navigator li {
    min-width: 38px;
    height: 38px;
    list-style: none;
}
.pagination .page-navigator li a {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    padding: 0 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .6);
    border: 1px solid #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-soft);
    text-decoration: none;
    transition: all .2s ease;
}
.pagination .page-navigator li a:hover {
    transform: translateY(-2px);
    color: var(--green-dark);
    background: var(--green-soft);
}
.pagination .page-navigator li.current a {
    background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%);
    color: #fff;
}
.pagination .page-navigator li.current a:hover {
    color: #fff;
}
.pagination .page-navigator .ti {
    font-size: 14px;
}

/* ---------- 缩略图修复 ----------
   这些容器都是 display:grid + place-items:center，行高由内容决定，
   子元素 height:100% 会失效导致图片按原始尺寸撑爆卡片，
   这里改用绝对定位铺满容器，配合 object-fit: cover 裁剪。 */
.featured .thumb,
.card .thumb,
.list-card .lc-thumb,
.link-card .lk-ava,
.post-sm .sm-thumb {
    position: relative;
    overflow: hidden;
}
.featured .thumb > img,
.card .thumb > img,
.list-card .lc-thumb > img,
.link-card .lk-ava > img,
.post-sm .sm-thumb > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ---------- 友链头像 ---------- */
.link-card .lk-ava img {
    border-radius: 14px;
}
.link-card .lk-tags:empty {
    display: none;
}

/* ---------- 侧栏按钮型分类 ---------- */
.cat-stat button.nm {
    background: none;
    border: none;
    text-align: left;
    cursor: pointer;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    padding: 0;
}
.cat-stat button.nm:hover {
    color: var(--green-dark);
}
.cat-stat button.nm.active {
    color: var(--green-dark);
}

/* ---------- 空状态里的内容 ---------- */
.empty-state .btn-primary {
    margin-top: 6px;
}
.no-result {
    display: block;
}

/* ---------- 标题与摘要防溢出 ---------- */
.card .post-title,
.list-card .post-title,
.featured .post-title,
.lk-name {
    word-break: break-word;
    overflow-wrap: anywhere;
}
.card .excerpt,
.list-card .excerpt,
.featured .excerpt {
    overflow-wrap: anywhere;
}

/* ---------- 评论表单三栏 ---------- */
.form-card .form-grid:has(.field:nth-child(3):last-child) {
    grid-template-columns: repeat(3, 1fr);
}
.form-card .field input,
.form-card .field textarea {
    min-width: 0;
}

/* ---------- 响应式 ---------- */
@media (max-width: 700px) {
    .overdue-tip,
    .copyright-box {
        margin-left: 20px;
        margin-right: 20px;
    }
    .comments .comment-children {
        margin-left: 20px;
    }
}
