/* 卡尼奶宝箱插件样式 */

/* 商城页面 */
.knn-box-shop {
    padding: 10px 0;
}

/* 页头 */
.knn-shop-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.knn-shop-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.knn-sh-bar {
    display: inline-block;
    width: 4px;
    height: 18px;
    background: #fd4c73;
    border-radius: 2px;
    flex-shrink: 0;
}
.knn-sh-title {
    font-size: 1.05em;
    font-weight: bold;
}
.knn-shop-header-right {
    display: flex;
    gap: 8px;
    align-items: center;
}
.knn-sh-btn {
    display: inline-flex;
    align-items: center;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none !important;
}
.knn-sh-btn-sort {
    border: 1px solid #3ecfb2;
    color: #3ecfb2 !important;
    background: transparent;
}
.knn-sh-btn-sort:hover,
.knn-sh-btn-sort.active {
    background: #3ecfb2;
    color: #fff !important;
}
.knn-sh-btn-notice {
    border: none;
    background: #fd4c73;
    color: #fff !important;
}
.knn-shop-desc {
    font-size: 13px;
    margin-bottom: 14px;
}

/* 网格：默认6列 */
.knn-shop-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
}

/* 卡片 */
.knn-shop-item {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.07);
    transition: transform 0.25s, box-shadow 0.25s;
}
.knn-shop-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.13);
}

/* 售罄卡片：灰度 + 虚线边框 */
.knn-item-soldout {
    filter: grayscale(70%);
    opacity: 0.82;
    outline: 2px dashed #c8a0b0;
    outline-offset: -2px;
}

/* 图片区 */
.knn-item-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f4f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.knn-item-img a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.knn-item-img img {
    width: 88%;
    height: 88%;
    object-fit: contain;
    transition: transform 0.3s;
}
.knn-shop-item:hover .knn-item-img img {
    transform: scale(1.06);
}
.knn-img-placeholder {
    color: var(--muted-2-color);
}

/* ribbon 横向标签（有货） */
.knn-item-ribbon {
    position: absolute;
    top: 10px;
    left: 0;
    width: auto;
    background: linear-gradient(90deg, #ff6b6b, #fd4c73);
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    text-align: center;
    padding: 3px 10px 3px 8px;
    border-radius: 0 10px 10px 0;
    box-shadow: 0 2px 6px rgba(253,76,115,0.45);
    letter-spacing: 1px;
    pointer-events: none;
    transform: none;
}

/* 悬浮徽章（已购买 / 待补货） */
.knn-item-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 12px;
    font-weight: bold;
    padding: 4px 14px;
    border-radius: 20px;
    white-space: nowrap;
    pointer-events: none;
}
.knn-badge-soldout {
    background: rgba(255,255,255,0.88);
    color: #999;
    border: 1px solid #ddd;
}
.knn-badge-bought {
    background: rgba(82,196,26,0.9);
    color: #fff;
}

/* 信息区 - 八角形边框包裹 */
.knn-item-info-outer {
    margin: 10px 8px 0;
    background: rgba(62, 207, 178, 0.38);
    clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
    padding: 1px;
}

/* 信息区 */
.knn-item-info {
    padding: 8px 10px 12px;
    text-align: center;
    background: rgba(235, 253, 249, 1);
    clip-path: polygon(7px 0, calc(100% - 7px) 0, 100% 7px, 100% calc(100% - 7px), calc(100% - 7px) 100%, 7px 100%, 0 calc(100% - 7px), 0 7px);
}
.knn-item-title {
    font-size: 0.82em;
    font-weight: bold;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--heading-color);
}
.knn-item-price {
    font-size: 0.92em;
    font-weight: bold;
    color: #fd4c73;
    margin-bottom: 8px;
}
.knn-item-soldout .knn-item-price {
    color: #aaa;
}
.knn-item-price small {
    font-size: 0.75em;
    font-weight: normal;
    color: var(--muted-2-color);
    margin-left: 3px;
}
.knn-item-stock {
    font-size: 11px;
    margin-top: 4px;
}
.knn-item-stock .c-green { color: #52c41a; }
.knn-item-stock .c-red   { color: #f56c6c; }
.knn-item-stock .ml8     { margin-left: 8px; }

/* 胶囊按钮 */
.knn-item-buy-btn {
    display: block;
    width: 80%;
    margin: 8px auto 10px;
    padding: 5px 0;
    border-radius: 20px;
    font-size: 12px;
    text-align: center;
    background: transparent;
    color: #3ecfb2 !important;
    border: 1px solid #3ecfb2;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none !important;
}
.knn-item-buy-btn:hover {
    background: #3ecfb2;
    color: #fff !important;
}
.knn-item-buy-btn.btn-bought {
    background: transparent;
    color: #52c41a !important;
    border-color: #52c41a;
    cursor: not-allowed;
}
.knn-item-buy-btn.btn-disabled {
    background: transparent;
    color: #bbb !important;
    border-color: #ddd;
    cursor: not-allowed;
}

/* 分页 */
.knn-shop-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 20px;
}
.knn-shop-pagination .but {
    min-width: 34px;
    text-align: center;
}

/* 响应式 */
@media (max-width: 1200px) {
    .knn-shop-grid { grid-template-columns: repeat(5, 1fr); }
}
@media (max-width: 992px) {
    .knn-shop-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
    .knn-shop-grid { grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .knn-shop-header-right { display: none; }
}
@media (max-width: 480px) {
    .knn-shop-grid { grid-template-columns: repeat(2, 1fr); gap: 6px; }
    .knn-item-info { padding: 6px 8px 10px; }
}

/* 文章页宝箱模块 */
.knn-box-module {
    margin: 20px 0;
    border: 1px solid rgba(220, 100, 100, 0.35) !important;
    background: rgba(255, 220, 220, 0.12) !important;
    border-radius: 6px;
    padding: 15px 18px;
}

/* 内层 flex：内容左，图片右 */
.knn-box-inner {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

/* 左侧内容区 */
.knn-box-content {
    flex: 1;
    min-width: 0;
}

/* 标题行 */
.knn-box-title {
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* 描述文字 */
.knn-box-desc {
    font-size: 0.9em;
    color: var(--muted-2-color);
    line-height: 1.6;
    margin-bottom: 10px;
}

/* 底部行：按钮 + 统计同行 */
.knn-box-footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

/* 按钮 */
.knn-btn-open {
    white-space: nowrap;
    background: linear-gradient(135deg, #d4a843 0%, #b8892a 100%) !important;
    border-color: #b8892a !important;
    color: #fff !important;
    padding: 7px 22px !important;
    min-width: 90px;
}

.knn-btn-open:hover {
    background: linear-gradient(135deg, #e0b84e 0%, #c89830 100%) !important;
    border-color: #c89830 !important;
    color: #fff !important;
}

/* 统计信息 */
.knn-box-stats {
    display: inline-flex;
    align-items: center;
    font-size: 0.875em;
    color: var(--muted-2-color);
    gap: 2px;
}

.knn-stat-down {
    color: #28a745;
}

/* 移动端隐藏"点此下载"及其后的分隔符 */
@media (max-width: 768px) {
    .knn-stat-down,
    .knn-stat-down + .knn-stat-sep {
        display: none;
    }
}

.knn-stat-sep {
    margin: 0 5px;
    opacity: 0.4;
}

.knn-stat-item {
    white-space: nowrap;
}

/* 右侧图片：固定 88px，不依赖 Zibll graphic */
.knn-box-thumb {
    flex-shrink: 0;
    width: 88px;
    align-self: flex-start;
}

.knn-box-img {
    display: block;
    width: 88px !important;
    height: 88px !important;
    max-width: 88px !important;
    max-height: 88px !important;
    object-fit: cover;
    border-radius: 8px;
}

/* 已开启下载区域 */
.knn-box-opened {
    margin: 20px 0;
    border-radius: 8px;
    border: 1px solid rgba(40, 167, 69, 0.3);
    background: rgba(40, 167, 69, 0.04);
    padding: 15px 20px;
}

.knn-opened-title {
    font-size: 1em;
}

.knn-down-list {
    flex-wrap: wrap;
}

/* 弹窗 */
.knn-buy-modal .knn-buy-info,
.knn-open-modal .knn-open-tips {
    padding: 10px;
    background: var(--muted-border-color);
    border-radius: 4px;
}

.knn-open-modal .knn-key-input {
    width: 100%;
    padding: 10px 15px;
    border: 1px solid var(--muted-border-color);
    border-radius: 4px;
    font-size: 1em;
    text-align: center;
    letter-spacing: 2px;
}

/* 用户中心钥匙列表 */
.knn-user-keys {
    padding: 10px 0;
}

.knn-keys-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.knn-key-item {
    padding: 15px;
    background: var(--body-bg-color);
    border-radius: 8px;
    border: 1px solid var(--muted-border-color);
}

.knn-key-thumb {
    width: 60px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
    background: var(--muted-border-color);
}

.knn-key-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.knn-key-name {
    font-weight: bold;
    margin-bottom: 4px;
}

.knn-key-code code {
    background: var(--muted-border-color);
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 0.9em;
}

/* 响应式 */
@media (max-width: 768px) {
    .knn-item-img {
        aspect-ratio: 1 / 1;
        height: auto;
    }

    .knn-box-actions .but {
        flex: 1;
        min-width: auto;
    }

    .knn-key-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .knn-key-item .text-right {
        text-align: left;
        margin-top: 10px;
        width: 100%;
        display: flex;
        align-items: center;
        gap: 10px;
    }
}

/* 开宝箱动画遮罩 */
.knn-open-anim-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(ellipse at center, rgba(20, 10, 40, 0.92) 0%, rgba(0, 0, 0, 0.96) 100%);
    animation: knnFadeIn 0.2s ease;
}

.knn-open-anim-overlay.knn-p-done {
    animation: knnFadeOut 0.5s ease forwards;
}

/* canvas 铺满 */
.knn-anim-canvas {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
}

/* 闪白层 */
.knn-flash-layer {
    position: absolute;
    inset: 0;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}

.knn-flash-layer.knn-flash-go {
    animation: knnFlash 0.5s ease forwards;
}

/* 宝箱容器 */
.knn-open-anim-box {
    position: relative;
    z-index: 3;
}

/* SVG 宝箱 */
.knn-chest-svg {
    width: 260px;
    height: 250px;
    filter: drop-shadow(0 0 18px rgba(200, 150, 10, 0.5));
}

/* 震动阶段 */
.knn-p-shake .knn-chest-svg {
    animation: knnHeavyShake 0.5s ease;
}

/* 开启阶段：盖子飞起 */
.knn-p-open .knn-lid-group {
    animation: knnLidFly 0.6s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
    transform-origin: center bottom;
}

.knn-p-open .knn-chest-svg {
    animation: knnBodyBounce 0.6s ease;
    filter: drop-shadow(0 0 40px rgba(255, 220, 50, 0.9));
}

.knn-p-open .knn-glow-el {
    animation: knnGlowEl 0.8s ease forwards;
}

/* 光线 */
.knn-rays-wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    z-index: 2;
    opacity: 0;
}

.knn-p-rays .knn-rays-wrap {
    opacity: 1;
}

.knn-ray {
    position: absolute;
    width: 3px;
    height: 0;
    background: linear-gradient(to top, rgba(255, 220, 50, 0.9), transparent);
    transform-origin: bottom center;
    border-radius: 2px;
}

.knn-ray:nth-child(1)  { transform: rotate(0deg);    }
.knn-ray:nth-child(2)  { transform: rotate(45deg);   }
.knn-ray:nth-child(3)  { transform: rotate(90deg);   }
.knn-ray:nth-child(4)  { transform: rotate(135deg);  }
.knn-ray:nth-child(5)  { transform: rotate(180deg);  }
.knn-ray:nth-child(6)  { transform: rotate(225deg);  }
.knn-ray:nth-child(7)  { transform: rotate(270deg);  }
.knn-ray:nth-child(8)  { transform: rotate(315deg);  }

.knn-p-rays .knn-ray {
    animation: knnRayGrow 1.2s ease forwards;
}

.knn-p-rays .knn-ray:nth-child(2) { animation-delay: 0.05s; }
.knn-p-rays .knn-ray:nth-child(3) { animation-delay: 0.1s;  }
.knn-p-rays .knn-ray:nth-child(4) { animation-delay: 0.07s; }
.knn-p-rays .knn-ray:nth-child(5) { animation-delay: 0.03s; }
.knn-p-rays .knn-ray:nth-child(6) { animation-delay: 0.08s; }
.knn-p-rays .knn-ray:nth-child(7) { animation-delay: 0.04s; }
.knn-p-rays .knn-ray:nth-child(8) { animation-delay: 0.06s; }

/* 结果文字 */
.knn-result-text {
    position: relative;
    z-index: 4;
    color: #FFD700;
    font-size: 2em;
    font-weight: 900;
    letter-spacing: 4px;
    text-shadow: 0 0 20px rgba(255, 200, 0, 0.9), 0 2px 8px rgba(0,0,0,0.8);
    margin-top: 20px;
    opacity: 0;
    transform: translateY(30px) scale(0.5);
}

.knn-p-result .knn-result-text {
    animation: knnResultIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

/* 关键帧 */
@keyframes knnFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes knnFadeOut {
    from { opacity: 1; }
    to   { opacity: 0; }
}

@keyframes knnFlash {
    0%   { opacity: 0; }
    20%  { opacity: 0.7; }
    100% { opacity: 0; }
}

@keyframes knnHeavyShake {
    0%,100%{ transform: translate(0,0) rotate(0deg); }
    10%    { transform: translate(-10px,0) rotate(-5deg); }
    20%    { transform: translate(10px,0) rotate(5deg); }
    30%    { transform: translate(-10px,2px) rotate(-5deg); }
    40%    { transform: translate(10px,-2px) rotate(5deg); }
    50%    { transform: translate(-8px,0) rotate(-3deg); }
    60%    { transform: translate(8px,0) rotate(3deg); }
    70%    { transform: translate(-5px,0) rotate(-2deg); }
    80%    { transform: translate(5px,0) rotate(2deg); }
    90%    { transform: translate(-2px,0) rotate(-1deg); }
}

@keyframes knnLidFly {
    0%   { transform: translateY(0) rotate(0deg); opacity: 1; }
    60%  { transform: translateY(-120px) rotate(-25deg); opacity: 1; }
    100% { transform: translateY(-200px) rotate(-35deg) scale(0.6); opacity: 0; }
}

@keyframes knnBodyBounce {
    0%,100%{ transform: scale(1); }
    30%    { transform: scale(1.18) translateY(-8px); }
    60%    { transform: scale(0.95) translateY(4px); }
}

@keyframes knnGlowEl {
    0%   { fill: rgba(255,200,50,0); }
    50%  { fill: rgba(255,220,80,0.5); }
    100% { fill: rgba(255,200,50,0); }
}

@keyframes knnRayGrow {
    0%   { height: 0;     opacity: 0.9; }
    60%  { height: 250px; opacity: 0.8; }
    100% { height: 300px; opacity: 0; }
}

@keyframes knnResultIn {
    0%   { opacity: 0; transform: translateY(30px) scale(0.5); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}

/* ================================================================
   用户中心 - 我的钥匙
================================================================ */

/* 筛选栏 */
.knn-filter-bar {
    gap: 8px;
    flex-wrap: wrap;
}

.knn-filter-select {
    width: 100px !important;
    height: 34px;
    padding: 4px 8px;
}

.knn-filter-input {
    width: 180px !important;
    height: 34px;
}

/* 表格容器：横向滚动 */
.knn-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* 钥匙表格 */
.knn-keys-table {
    min-width: 780px;
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.knn-keys-table th,
.knn-keys-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    vertical-align: middle;
}

.knn-keys-table thead th {
    font-weight: 600;
    font-size: 12px;
    white-space: nowrap;
    opacity: 0.75;
}

.knn-keys-table tbody tr:hover {
    background: rgba(74, 144, 226, 0.04);
}

/* 钥匙名称 */
.knn-key-name-cell {
    white-space: nowrap;
    font-weight: 500;
}

/* 绑定文章链接 */
.knn-post-link {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px dashed currentColor;
    opacity: 0.8;
}

.knn-post-link:hover {
    opacity: 1;
}

/* 密钥显示区 */
.knn-secret-cell {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.knn-key-secret {
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
    font-size: 11px;
    background: rgba(0, 0, 0, 0.05);
    padding: 2px 7px;
    border-radius: 4px;
    letter-spacing: 1px;
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    vertical-align: middle;
}

/* 复制按钮 */
.knn-copy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: 1px solid rgba(0,0,0,0.12);
    border-radius: 5px;
    background: transparent;
    cursor: pointer;
    font-size: 12px;
    transition: all 0.2s;
    flex-shrink: 0;
    padding: 0;
    color: #666;
}

.knn-copy-btn:hover {
    background: #4a90e2;
    border-color: #4a90e2;
    color: #fff;
}

.knn-copy-btn.copied {
    background: #4caf50;
    border-color: #4caf50;
    color: #fff;
}

/* 徽章 */
.knn-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
}

.knn-badge-blue   { background: #2196f3; color: #fff; }
.knn-badge-purple { background: #9c27b0; color: #fff; }
.knn-badge-green  { background: #4caf50; color: #fff; }
.knn-badge-orange { background: #ff9800; color: #fff; }

/* 时间列 */
.knn-time-cell {
    font-size: 12px;
    white-space: nowrap;
    opacity: 0.75;
}

/* 分页 */
.knn-pagination .but {
    padding: 4px 10px;
}

/* 移动端自适应 */
@media (max-width: 640px) {
    .knn-filter-input {
        width: 140px !important;
    }

    .knn-key-secret {
        max-width: 90px;
    }

    .knn-time-cell {
        font-size: 11px;
    }
}

/* ================================================================
   深色模式适配（Zibll body.dark-theme）
================================================================ */

/* 卡片背景 */
body.dark-theme .knn-shop-item {
    background: var(--main-bg-color);
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}
body.dark-theme .knn-shop-item:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.4);
}

/* 图片区背景 */
body.dark-theme .knn-item-img {
    background: var(--muted-bg-color);
}

/* 八角形信息框：外层边框色保持，内层背景改深色 */
body.dark-theme .knn-item-info-outer {
    background: rgba(62, 207, 178, 0.30);
}
body.dark-theme .knn-item-info {
    background: rgba(28, 42, 40, 1);
}

/* 售罄 badge：白底改为深色 */
body.dark-theme .knn-badge-soldout {
    background: rgba(40, 40, 40, 0.88);
    color: var(--muted-color);
    border-color: rgba(255,255,255,0.12);
}

/* 已售空按钮 */
body.dark-theme .knn-item-buy-btn.btn-disabled {
    color: var(--muted-3-color) !important;
    border-color: var(--muted-4-color);
}

/* 文章页宝箱模块 */
body.dark-theme .knn-box-module {
    border-color: rgba(220, 100, 100, 0.25) !important;
    background: rgba(255, 220, 220, 0.05) !important;
}

/* 已开启下载区域 */
body.dark-theme .knn-box-opened {
    border-color: rgba(40, 167, 69, 0.2);
    background: rgba(40, 167, 69, 0.06);
}

/* 表格边框 */
body.dark-theme .knn-keys-table th,
body.dark-theme .knn-keys-table td {
    border-bottom-color: rgba(255,255,255,0.06);
}
body.dark-theme .knn-keys-table tbody tr:hover {
    background: rgba(74, 144, 226, 0.08);
}

/* 密钥代码背景 */
body.dark-theme .knn-key-secret {
    background: rgba(255,255,255,0.08);
}

/* 复制按钮 */
body.dark-theme .knn-copy-btn {
    border-color: rgba(255,255,255,0.15);
    color: var(--muted-color);
}

/* 筛选输入框 */
body.dark-theme .knn-filter-select,
body.dark-theme .knn-filter-input {
    background: var(--muted-bg-color);
    border-color: var(--main-border-color);
    color: var(--main-color);
}

/* 搜索框 */
.knn-search-form {
    display: flex;
    align-items: center;
}
.knn-search-wrap {
    position: relative;
    display: flex;
    align-items: center;
}
.knn-search-icon {
    position: absolute;
    left: 9px;
    color: var(--muted-2-color);
    font-size: 12px;
    pointer-events: none;
}
.knn-search-input {
    height: 30px;
    padding: 0 28px 0 28px;
    border: 1px solid #3ecfb2;
    border-radius: 20px;
    font-size: 12px;
    background: transparent;
    color: inherit;
    width: 160px;
    outline: none;
    transition: width 0.2s, border-color 0.2s;
}
.knn-search-input:focus {
    width: 200px;
    border-color: #3ecfb2;
}
.knn-search-input::placeholder {
    color: var(--muted-2-color);
}
.knn-search-clear {
    position: absolute;
    right: 9px;
    color: var(--muted-2-color);
    font-size: 11px;
    line-height: 1;
    text-decoration: none !important;
}
.knn-search-clear:hover {
    color: #fd4c73;
}
/* 须知内容区域最大高度+滚动 */
.knn-notice-content {
    max-height: 60vh;
    overflow-y: auto;
    font-size: 14px;
    line-height: 1.8;
}
/* 深色：搜索框 */
body.dark-theme .knn-search-input {
    border-color: rgba(62, 207, 178, 0.5);
    background: rgba(255,255,255,0.04);
    color: var(--main-color);
}
body.dark-theme .knn-search-input:focus {
    border-color: #3ecfb2;
}
@media (max-width: 768px) {
    .knn-search-input { width: 120px; }
    .knn-search-input:focus { width: 140px; }
}
