/**
 * Kratos:Rebirth 自定义功能样式
 */

/* ========== Banner 标题上移 ========== */
/* 把标题+一言整体向上移动，不再卡在中间 */
.kratos-cover .desc.desc2 {
    top: 28%;
    margin-top: -70px;
}

/* ========== 一言 (Hitokoto) ========== */
.kr-hitokoto {
    margin-top: 20px;
    padding: 12px 20px;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    transition: all 0.3s ease;
}

.kr-hitokoto-content {
    font-size: 0.95em;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.92);
    min-height: 1.4em;
    word-break: break-word;
}

.kr-hitokoto-from {
    font-size: 0.85em;
    color: rgba(255, 255, 255, 0.7);
    margin-top: 8px;
    text-align: right;
    opacity: 0;
    transition: opacity 0.6s ease;
}

html[data-theme="dark"] .kr-hitokoto {
    background: rgba(255, 255, 255, 0.08);
}



/* ========== 划词翻译弹窗 ========== */
.kr-trans-popup {
    position: absolute;
    z-index: 99999;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
    padding: 8px;
    min-width: 120px;
    font-size: 13px;
    animation: krFadeIn 0.15s ease;
}

html[data-theme="dark"] .kr-trans-popup {
    background: #2d2d2d;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
}

@keyframes krFadeIn {
    from {
        opacity: 0;
        transform: translate(-50%, calc(-100% + 6px));
    }

    to {
        opacity: 1;
        transform: translate(-50%, -100%);
    }
}

.kr-trans-buttons {
    display: flex;
    gap: 4px;
    margin-bottom: 6px;
}

.kr-trans-btn,
.kr-trans-copy {
    padding: 4px 10px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    transition: all 0.2s ease;
    user-select: none;
    white-space: nowrap;
}

.kr-trans-btn {
    background: #f0f0f0;
    color: #333;
}

.kr-trans-btn:hover {
    background: #62b6e7;
    color: #fff;
}

html[data-theme="dark"] .kr-trans-btn {
    background: #3a3a3a;
    color: #ddd;
}

html[data-theme="dark"] .kr-trans-btn:hover {
    background: #62b6e7;
    color: #fff;
}

.kr-trans-copy {
    background: #e8e8e8;
    color: #666;
    margin-left: auto;
}

.kr-trans-copy:hover {
    background: #62b6e7;
    color: #fff;
}

html[data-theme="dark"] .kr-trans-copy {
    background: #3a3a3a;
    color: #aaa;
}

.kr-trans-result {
    padding: 6px 8px;
    background: #fafafa;
    border-radius: 4px;
    color: #333;
    line-height: 1.5;
    max-width: 320px;
    word-break: break-word;
    font-size: 13px;
    max-height: 120px;
    overflow-y: auto;
}

html[data-theme="dark"] .kr-trans-result {
    background: #222;
    color: #ddd;
}

/* ========== 移动端兼容修复 ========== */
@media (max-width: 767px) {

    /* --- 导航 --- */
    #kratos-mobile-topnav {
        display: block !important;
    }

    #kratos-desktop-topnav {
        display: none !important;
    }

    .kratos-nav-toggle {
        display: block !important;
    }

    #kratos-menu-wrap {
        display: none !important;
    }

    .color-logo {
        text-align: center !important;
        width: 100% !important;
        font-size: 25px !important;
        font-weight: 400 !important;
        height: 60px !important;
        padding: 7px !important;
    }

    .color-logo a,
    .color-logo a:hover {
        color: #fff !important;
    }

    .color-logo img {
        max-width: 175px !important;
        height: 35px !important;
    }

    /* --- 全局防溢出 --- */
    body {
        overflow-x: hidden !important;
    }

    #kratos-wrapper,
    #kratos-page {
        overflow-x: hidden !important;
    }

    .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* --- Banner / Cover --- */
    .kratos-start {
        height: auto !important;
        min-height: 0 !important;
    }

    .kratos-cover {
        height: auto !important;
        min-height: 280px !important;
        padding: 40px 0 !important;
        background-position: center 35% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .kratos-cover.kratos-cover-2.text-center {
        display: flex !important;
    }

    .kratos-overlay {
        display: block !important;
    }

    /* Banner 标题区域 - 移动端自然定位 */
    .kratos-cover .desc.desc2 {
        top: auto !important;
        margin-top: 0 !important;
        padding: 10px 15px !important;
        position: relative !important;
    }

    .kratos-cover .desc.desc2 h2 {
        font-size: 26px !important;
        margin-bottom: 5px !important;
    }

    .kratos-cover .desc.desc2 span {
        font-size: 14px !important;
    }

    /* --- 一言 (Hitokoto) --- */
    .kr-hitokoto {
        max-width: 88% !important;
        padding: 10px 14px !important;
        margin-top: 14px !important;
        border-radius: 6px !important;
    }

    .kr-hitokoto-content {
        font-size: 0.82em !important;
        line-height: 1.5 !important;
    }

    .kr-hitokoto-from {
        font-size: 0.75em !important;
        margin-top: 6px !important;
    }

    /* --- Header --- */
    #kratos-header {
        background: #16171ae6 !important;
    }

    /* --- 博客文章区 --- */
    #kratos-blog-post {
        padding: 1.5em 0 1em !important;
    }

    /* --- 文章卡片 --- */
    .kratos-entry-post-main {
        flex-direction: column !important;
        height: auto !important;
        padding: 12px !important;
        gap: 10px !important;
    }

    .kratos-entry-thumb {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        padding: 0 0 56.25% !important;
    }

    .kratos-entry-thumb img,
    .kratos-entry-thumb-img {
        padding: 0 !important;
        border: 0 !important;
        object-fit: cover !important;
        width: 100% !important;
        height: 100% !important;
    }

    /* 文章卡片内边距 */
    .kratos-entry-border {
        padding: 0 !important;
    }

    .kratos-hentry {
        margin-bottom: 16px !important;
    }

    /* 分类标签 */
    .kratos-entry-header .label-link {
        font-size: 11px !important;
        padding: 2px 8px !important;
    }

    /* 文章标题 */
    .kratos-entry-title {
        font-size: 17px !important;
        margin: 6px 0 !important;
        line-height: 1.35 !important;
    }

    .kratos-entry-title a {
        font-size: 17px !important;
    }

    /* 文章摘要 */
    .kratos-entry-content p {
        font-size: 13px !important;
        line-height: 1.5 !important;
        margin-bottom: 4px !important;
    }

    /* 文章 Meta 信息 */
    .kratos-entry-post-meta {
        padding: 6px 12px 10px !important;
        font-size: 11px !important;
    }

    .kratos-entry-post-meta .pull-left {
        font-size: 11px !important;
    }

    .kratos-entry-post-meta .read-more {
        margin-right: 8px !important;
        font-size: 12px !important;
    }

    .kratos-page-meta span {
        font-size: 9pt !important;
    }

    /* --- 页面标题 --- */
    h1.kratos-page-title.text-center {
        font-size: 26px !important;
        margin: 10px 0 !important;
        padding: 10px 15px !important;
    }

    .kratos-page-content embed {
        height: auto !important;
    }

    /* --- 页脚 --- */
    #footer .container .row {
        margin: 0 !important;
    }

    #footer .col-md-6.col-md-offset-3 {
        width: 100% !important;
        margin-left: 0 !important;
        padding: 0 10px !important;
    }

    /* 版权信息堆叠 */
    .kratos-copyright {
        display: flex !important;
        flex-direction: column !important;
        gap: 4px !important;
        margin-bottom: 10px !important;
    }

    .kratos-copyright div {
        display: block !important;
        text-align: center !important;
    }

    .kratos-copyright li {
        font-size: 11px !important;
        display: inline !important;
        padding: 0 !important;
    }

    .kratos-copyright li::after {
        content: "";
    }

    /* 社交图标 */
    #footer .kratos-social-icons {
        margin-bottom: 8px !important;
    }

    #footer .kratos-social-icons li {
        padding: 4px 10px !important;
    }

    #footer .kratos-social-icons li a {
        font-size: 16px !important;
    }

    /* --- KR 工具按钮 --- */
    .kr-tool .tool {
        bottom: 12px !important;
        right: 8px !important;
    }

    .kr-tool .box {
        width: 34px !important;
        height: 34px !important;
        margin-top: 6px !important;
        opacity: 0.75 !important;
    }

    .kr-tool .box span {
        font-size: 14px !important;
        line-height: 34px !important;
        display: table-cell !important;
        vertical-align: middle !important;
        width: 34px !important;
        height: 34px !important;
    }

    /* --- 归档页 --- */
    #archives .arc-t {
        width: 45% !important;
    }

    .hide_notice,
    .info {
        font-size: 12px !important;
    }

    /* --- 分类/标签页面 --- */
    .category-list-item a,
    .tag-clouds a {
        font-size: 13px !important;
    }

    /* --- 文章内页 --- */
    .kratos-page-inner {
        padding: 15px !important;
    }

    .kratos-page-inner header h1 {
        font-size: 22px !important;
    }

    .kratos-page-inner .kratos-post-meta span {
        font-size: 11px !important;
    }

    /* 代码块移动端滚动 */
    .kratos-page-inner pre,
    .kratos-page-inner code {
        font-size: 12px !important;
    }

    .kratos-page-inner figure,
    .kratos-page-inner .highlight {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* --- 模态框 --- */
    .kr-modal-content {
        width: 90% !important;
        max-width: 360px !important;
        margin: 10px !important;
    }

    /* --- 侧边栏(文章页) --- */
    .sticky-area {
        position: static !important;
        top: auto !important;
    }
}

/* --- 桌面端 --- */
@media (min-width: 768px) {
    #kratos-mobile-topnav {
        display: none !important;
    }
}

/* --- 中等屏幕 (平板竖屏) --- */
@media (min-width: 768px) and (max-width: 991px) {
    .container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .kratos-entry-post-main {
        height: auto !important;
    }
}