@import url('https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/tailwindcss/2.2.19/tailwind.min.css');

/* 亮色主题变量 */
:root[data-theme="light"] {
    --primary: 219, 234, 254;
    --background: 243, 244, 246;
    --text-color: 55, 65, 81;
    --nav-bg-image: radial-gradient(#3b82f638 1px, rgb(255 255 255) 1px);
    --nav-bg-color: #ffffffab;
    --nav-box-shadow: 0 5px 9px 0 #ffdada, 0 -1px 6px 0 #3b82f6;
    --bg-white-color: rgb(255 255 255 / 35%);
    --logo-color: 17, 24, 39;
    --preview-item-bg: 255, 255, 255;
    --button-hover-bg: 37, 99, 235;
    --loader-border: 243, 243, 243;
    --loader-top-border: 52, 152, 219;
    --toast-bg: rgba(0, 0, 0, 0.7);
    --step-circle-bg: 59, 130, 246;
    --step-line-bg: 147, 197, 253;
    --step-detail-color: 107, 114, 128;
    --input-border-hover: 147, 197, 253;
    --input-border-focus: 59, 130, 246;
    --toast-info-bg: 59, 130, 246;
    --toast-warning-bg: 245, 158, 11;
    --toast-error-bg: 239, 68, 68;
    --input-warning-border: 245, 158, 11;
    --inline-warning-bg: 255, 247, 237;
    --inline-warning-border: 245, 158, 11;
    --inline-warning-text: 154, 52, 18;
    --select--bg: #46464680;
    --select--color: #000000;
    --srk--color:#ffffff9f;
    --bg-white-border:rgba(255, 255, 255, 0.603);
    --text-gray-700--border-color:rgb(0, 0, 0);
    transition: all 0.3s ease; /* 添加过渡效果 */
}

/* 暗色主题变量 */
:root[data-theme="dark"] {
    --primary: 59, 130, 246;
    --background: 17, 24, 39;
    --text-color: 209, 213, 219;
    --nav-bg-image: radial-gradient(rgba(255, 255, 255, 0.22) 1px, rgb(12, 12, 12) 1px);
    --nav-bg-color: rgba(0, 0, 0, 0.67);
    --nav-box-shadow: rgb(255, 218, 218) 0px 5px 9px 0px, rgb(59, 130, 246) 0px -1px 6px 0px;
    --bg-white-color: rgba(0, 0, 0, 0.35);
    --logo-color: 255, 255, 255;
    --preview-item-bg: 255, 255, 255;
    --button-hover-bg: 37, 99, 235;
    --loader-border: 243, 243, 243;
    --loader-top-border: 52, 152, 219;
    --toast-bg: rgba(0, 0, 0, 0.7);
    --step-circle-bg: 59, 130, 246;
    --step-line-bg: 147, 197, 253;
    --step-detail-color: 229, 231, 235;
    --input-border-hover: 147, 197, 253;
    --input-border-focus: 59, 130, 246;
    --toast-info-bg: 59, 130, 246;
    --toast-warning-bg: 245, 158, 11;
    --toast-error-bg: 239, 68, 68;
    --input-warning-border: 245, 158, 11;
    --inline-warning-bg: 255, 247, 237;
    --inline-warning-border: 245, 158, 11;
    --inline-warning-text: 154, 52, 18;
    --select--bg: #fff;
    --select--color: #000000;
    --srk--color:rgba(0, 0, 0, 0.35);
    --bg-white-border:rgba(255, 255, 255, 0.1);
    --text-gray-700--border-color:rgb(255 135 1);
    transition: all 0.3s ease; /* 添加过渡效果 */
}

body {
    background-color: rgb(var(--background));
}

.container {
    max-width: 800px;
    margin: 0 auto;
}

.preview-item {
    background-color: rgb(var(--preview-item-bg));
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border-radius: 0.5rem;
    overflow: hidden;
    margin-bottom: 1.5rem;
    transition: all 0.3s ease;
}

.preview-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.preview-item img {
    width: 100%;
    height: auto;
    display: block;
}

.preview-item a {
    width: 100%;
    border-radius: 15px;
    background-color: hsl(var(--primary));
    background-image: url(https://tse4-mm.cn.bing.net/th/id/OIP-C.apkBajCIYADPRCIQWyJw-wHaEK?rs=1&pid=ImgDetMain);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    box-shadow: 1px 0px 50px 2px #7c916f;
}

.preview-item a:hover {
    background-color: #2563eb;
}

#colorPreview {
    transition: transform 0.2s;
}

#colorPreview:hover {
    transform: scale(1.1);
}

#processButton {
    width: 100%;
    border-radius: 15px;
    background-color: hsl(var(--primary));
    background-image: url(https://tse4-mm.cn.bing.net/th/id/OIP-C.apkBajCIYADPRCIQWyJw-wHaEK?rs=1&pid=ImgDetMain);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    box-shadow: 1px 0px 50px 2px #7c916f;
}

#previewContainer {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* .modal {
    display: flex;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.9);
    cursor: pointer;
}

.modal-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 80%;
    max-height: 80%;
    object-fit: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
} */

.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}
.modal-content {
    background-color: #fefefe;
    margin: 15% auto; 
    padding: 20px;
    border: 1px solid #888;
    width: 80%; 
    max-width: 600px; 
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.hidden {
    display: none;
}

.loader {
    border: 5px solid rgb(var(--loader-border));
    border-top: 5px solid rgb(var(--loader-top-border));
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.page-loader {
    position: fixed;
    top: 1rem;
    right: 1rem;
    width: auto;
    height: auto;
    background: none;
    z-index: 9999;
    opacity: 1;
    transition: opacity 0.3s ease-out;
    pointer-events: none;
}

.processing-loader {
    display: none;
    margin-top: 1rem;
    text-align: center;
}

.processing-loader .loader {
    margin: 0 auto;
    width: 36px;
    height: 36px;
    border-width: 3px;
}

.processing-loader p {
    margin-top: 0.5rem;
    color: #4a5568;
    font-size: 0.875rem;
}

#pasteArea span {
    color: #3b82f6 !important;
    font-weight: normal;
}

#pasteArea:hover span {
    color: #2563eb !important;
}

@media (max-width: 640px) {
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    #processButton,
    #resetButton {
        font-size: 0.875rem;
        padding: 0.5rem 1rem;
    }

    #watermarkDensity,
    #watermarkColor,
    #watermarkSize {
        font-size: 0.875rem;
    }

    .preview-item img {
        max-width: 100%;
        height: auto;
    }
}

.button-container {
    display: flex;
    width: 100%;
}

.process-button {
    flex: 1.618;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.reset-button {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

@media (max-width: 640px) {
    .process-button,
    .reset-button {
        font-size: 0.875rem;
        padding: 0.5rem 0.75rem;
    }
}

#imagePreviewArea {
    display: none;
}

#imagePreviewArea:not(:empty) {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

#imagePreviewArea img {
    width: 4rem;
    height: 4rem;
    object-fit: cover;
    border-radius: 0.25rem;
}

/* select:disabled {
    appearance: none;
    background-color: #f3f3f3;
    color: #999;
    cursor: not-allowed;
}

.select{
    background-color: var(--select--bg);
    border-radius: .95rem;
    color: var(--select--color);
} */


/* 选择框基础样式 */
select {
    appearance: none;
    background-color: var(--select--bg);
    color: var(--select--color);
    border: 1px solid var(--select--border);
    border-radius: 0.95rem;
    padding: 0.6rem 1.2rem;
    font-size: 0.9rem;
    line-height: 1.3rem;
    width: 100%;
    cursor: pointer;
    transition: all 0.3s ease;
    background-image: url('data:image/svg+xml;utf8,<svg fill="currentColor" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');
    background-repeat: no-repeat;
    background-position-x: calc(100% - 1rem);
    background-position-y: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* 选择框悬停样式 */
select:hover {
    border-color: var(--select--border-hover);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

/* 选择框聚焦样式 */
select:focus {
    outline: none;
    border-color: var(--select--border-focus);
    box-shadow: 0 0 0 2px rgba(var(--select--border-focus-rgb), 0.2);
}

/* 选择框禁用样式 */
select:disabled {
    background-color: #f3f3f3;
    color: #999;
    cursor: not-allowed;
    box-shadow: none;
}

/* 选择框选项样式 */
select option {
    background-color: var(--select--bg);
    color: var(--select--color);
    padding: 0.6rem 1.2rem;
    transition: background-color 0.3s ease;
}

select option:hover {
    background-color: var(--select-option-hover);
}

select option:checked {
    background-color: var(--select-option-checked);
    color: var(--select--color);
}

/* 深色主题下选择框相关样式 */
:root[data-theme="dark"] {
    --select--bg: #353535;
    --select--color: white;
    --select--border: rgba(255, 255, 255, 0.2);
    --select--border-hover: rgba(255, 255, 255, 0.4);
    --select--border-focus: rgba(255, 255, 255, 0.6);
    --select--border-focus-rgb: 255, 255, 255;
    --select-option-hover: #555;
    --select-option-checked: #2563eb;
}

/* 浅色主题下选择框相关样式 */
:root[data-theme="light"] {
    --select--bg: white;
    --select--color: #333;
    --select--border: #ccc;
    --select--border-hover: #999;
    --select--border-focus: #666;
    --select--border-focus-rgb: 102, 102, 102;
    --select-option-hover: #e5e5e5;
    --select-option-checked: #2563eb;
}

/* 隐藏原生select */
/* select {
    display: none;
} */

/* 自定义下拉框 */
.custom-select {
    position: relative;
    width: 100%;
    /* z-index: 1000; 设置一个较大的 z-index 值 */
}

.select-selected {
    /* display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    border-radius: 0.75rem;
    cursor: pointer;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px); */
    appearance: none;
    background-color: var(--select--bg);
    color: var(--select--color);
    border: 1px solid var(--select--border);
    border-radius: 0.95rem;
    padding: 0.6rem 1.2rem;
    font-size: 0.9rem;
    line-height: 1.3rem;
    width: 100%;
    cursor: pointer;
    transition: all 0.3s ease;
    background-image: url('data:image/svg+xml;utf8,<svg fill="currentColor" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');
    background-repeat: no-repeat;
    background-position-x: calc(100% - 1rem);
    background-position-y: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}



:root[data-theme="light"] .select-selected {
    background-color: var(--srk--color);
    border: 1px solid rgba(0, 0, 0, 0.9);
}

:root[data-theme="dark"] .select-selected {
    background-color: var(--srk--color);
    border: 1px solid var(--text-gray-700--border-color);
}
/* 选择框悬停样式 */
:root[data-theme="dark"] .select-selected:hover {
    border-color: var(--select--border-hover);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}



/* 选择框聚焦样式 */
:root[data-theme="dark"] .select-selected:focus {
    outline: none;
    border-color: var(--select--border-focus);
    box-shadow: 0 0 0 2px rgba(var(--select--border-focus-rgb), 0.2);
}

/* 选择框聚焦样式 */
.select-selected:focus {
    outline: none;
    border-color: var(--select--border-focus);
    box-shadow: 0 0 0 2px rgba(var(--select--border-focus-rgb), 0.2);
}

/* 选择框禁用样式 */
:root[data-theme="dark"] .select-selected:disabled {
    background-color: #f3f3f3;
    color: #999;
    cursor: not-allowed;
    box-shadow: none;
}


:root[data-theme="dark"] .select-selected:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.select-icon {
    transition: transform 0.3s ease;
}

.select-icon.open {
    transform: rotate(180deg);
}

/* 选项列表 */
.select-items {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0.2rem;
    border-radius: 0.75rem;
    max-height: 9.5rem;
    overflow-y: auto;
    z-index: 50;
    transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
    backdrop-filter: blur(0px);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    filter: blur(4px);
    position: relative; /* 确保 z-index 生效 */
    z-index: 1001; /* 设置一个较大的 z-index 值 */
}

.select-items.open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    backdrop-filter: blur(10px);
    filter: blur(0);
}

:root[data-theme="light"] .select-items {
    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(209, 213, 219, 0.9);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

:root[data-theme="dark"] .select-items {
    background-color: rgba(59, 73, 94, 0.8);
    border: 1px solid rgba(75, 85, 99, 0.9);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2), 0 4px 6px -2px rgba(0, 0, 0, 0.1);
}

/* 选项 */
.select-option {
    padding: 0.75rem 1.25rem;
    margin: 0.25rem 0.5rem;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

:root[data-theme="light"] .select-option:hover {
    background-color: rgba(236, 239, 241, 0.9);
}

:root[data-theme="dark"] .select-option:hover {
    background-color: rgba(84, 110, 122, 0.6);
}

.select-option.selected {
    font-weight: 600;
    position: relative;
    font-size: 1.6vh; /* 16px */
}

:root[data-theme="light"] .select-option.selected {
    background-color: rgba(129, 212, 250, 0.3);
    border: 1px solid rgba(3, 169, 244, 0.5);
}

:root[data-theme="dark"] .select-option.selected {
    background-color: rgba(3, 169, 244, 0.2);
    border: 1px solid rgba(3, 169, 244, 0.4);
}

/* 滚动条样式 */
.select-items::-webkit-scrollbar {
    width: 3px;
    margin-right: 2px;
}

:root[data-theme="light"] .select-items::-webkit-scrollbar-track {
    background: rgba(229, 231, 235, 0.5);
    border-radius: 4px;
    margin: 8px 2px;
}

:root[data-theme="dark"] .select-items::-webkit-scrollbar-track {
    background: rgba(75, 85, 99, 0.5);
    border-radius: 4px;
    margin: 8px 2px;
}

:root[data-theme="light"] .select-items::-webkit-scrollbar-thumb {
    background: rgba(156, 163, 175, 0.7);
    border-radius: 4px;
    width: 3px;
    transition: width 0.3s ease;
}

:root[data-theme="dark"] .select-items::-webkit-scrollbar-thumb {
    background: rgba(156, 163, 175, 0.5);
    border-radius: 4px;
    width: 3px;
    transition: width 0.3s ease;
}

.select-items::-webkit-scrollbar-thumb:hover {
    width: 6px;
}

/* 背景模糊效果 */
.select-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    backdrop-filter: blur(2px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 40;
    position: relative; /* 确保 z-index 生效 */
    z-index: 999; /* 设置一个较大的 z-index 值 */
}

.select-backdrop.open {
    opacity: 1;
    visibility: visible;
}


/* 标题容器固定样式 */
.title-container {
  padding-top: 0.5rem;
  min-height: 80px; /* 减小最小高度 */
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (max-width: 640px) {
  .title-container {
    padding-top: 0.25rem;
    min-height: 50px; /* 移动端更小的高度 */
  }
}

/* 标题响应式显示控制 */
.pc-title {
    display: none;
}

.mobile-title {
    display: block;
}

@media (min-width: 640px) {
    .pc-title {
        display: block;
        background: linear-gradient(138deg, #ff3737, #93c5fd, #3b82f6);
        background-size: 200% 200%;
        -webkit-background-clip: text;
        color: #ffffff52;
        animation: gradientAnimation 4s ease infinite;
    }

    .mobile-title {
        display: none;
    }
}

@keyframes gradientAnimation {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.button-group {
    display: flex;
    margin-top: 0.5rem;
}

.download-button,
.copy-button {
    flex: 1;
    padding: 0.5rem;
    text-align: center;
    color: white;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s;
}

.download-button {
    background-color: #3b82f6;
    border-radius: 0.25rem 0 0 0.25rem;
}

.copy-button {
    background-color: #1f2937;
    border-radius: 0 0.25rem 0.25rem 0;
}

.download-button:hover {
    background-color: #2563eb;
}

.copy-button:hover {
    background-color: #111827;
}

.copy-button {
    width: 100%;
    border-radius: 15px;
    background-color: hsl(var(--primary));
    background-image: url(https://imgxz.bizhi3.com/20240309/240309114920879.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    box-shadow: 1px 0px 50px 2px #7c916f;
}

.toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--toast-bg);
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    z-index: 1000;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.toast.show {
    opacity: 1;
}

.email-link {
    color: #3b82f6;
    text-decoration: none;
    transition: color 0.3s ease;
}

.email-link:hover {
    color: #2563eb;
    text-decoration: underline;
}

.step-container {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    min-width: 0;
}

.step-circle {
    width: 4rem;
    height: 4rem;
    background-color: rgb(var(--step-circle-bg));
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.75rem;
    flex-shrink: 0;
}

.step-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    line-height: 1.2;
    min-height: 1.5em;
}

.step-detail {
    font-size: 0.875rem;
    color: rgba(var(--step-detail-color), 1);
    line-height: 1.4;
    min-height: 1.4em;
}

.step-line {
    flex: 1;
    position: relative;
    max-width: 100px;
}

.step-line::before {
    content: '';
    position: absolute;
    top: 2rem;
    left: 0;
    right: 0;
    height: 2px;
    background-color: rgb(var(--step-line-bg));
}

@media (max-width: 640px) {
    .step-container {
        padding: 0 0.5rem;
    }

    .step-circle {
        width: 3rem;
        height: 3rem;
    }

    .step-title {
        font-size: 1rem;
        min-height: 1.2em;
    }

    .step-detail {
        font-size: 0.75rem;
        min-height: 1.2em;
    }

    .step-line {
        max-width: 40px;
    }
}

.group:hover .opacity-0 {
    opacity: 1;
}

.group .absolute {
    transition: opacity 0.2s ease-in-out;
}

.group button:hover {
    background-color: #ef4444;
    transform: scale(1.1);
}

@media (max-width: 640px) {
    .brand-name-full {
        display: none;
    }

    .brand-name-short {
        display: block;
    }

    .nav-container {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .nav-space {
        gap: 0.5rem;
    }
}

@media (min-width: 641px) {
    .brand-name-full {
        display: block;
    }

    .brand-name-short {
        display: none;
    }
}

.loader-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.loader {
    width: 20px;
    height: 20px;
    border: 2px solid rgb(var(--loader-border));
    border-top: 2px solid rgb(var(--loader-top-border));
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

.loader-text {
    color: #4a5568;
    font-size: 0.875rem;
    font-weight: 500;
}

.loader-progress {
    display: none;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.file-status-container {
    min-height: 1.5rem;
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
    font-size: 0.875rem;
    color: #4a5568;
    transition: all 0.2s ease;
}

#pasteArea {
    min-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    border: 3px dashed #3b82f6;
    transition: all 0.5s ease;
    position: relative;
    overflow: hidden;
    margin: 10px 18px;
    border-radius:20px;
}

#pasteArea.drag-over {
    border-color: #2563eb;
    background-color: rgba(59, 130, 246, 0.1);
    transform: scale(1.01);
}

#pasteArea.drag-over::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg,
            rgba(59, 130, 246, 0.1) 25%,
            rgba(59, 130, 246, 0.2) 25%,
            rgba(59, 130, 246, 0.2) 50%,
            rgba(59, 130, 246, 0.1) 50%,
            rgba(59, 130, 246, 0.1) 75%,
            rgba(59, 130, 246, 0.2) 75%);
    background-size: 20px 20px;
    animation: moveStripes 1s linear infinite;
    pointer-events: none;
}

@keyframes moveStripes {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: 20px 0;
    }
}

#imagePreviewArea {
    min-height: 2rem;
    margin-top: 0.25rem;
}

.mb-4 {
    margin-bottom: 1rem;
    backdrop-filter: blur(15px);
    border-radius: 45px;
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color: var(--bg-white-color);
}

.zjnahh {
    text-align: center;
}

.text-gray-700 {
    --tw-text-opacity: 1;
    border-radius: 15px;
    color: rgba(var(--text-color), var(--tw-text-opacity));
    border-color: var(--text-gray-700--border-color);
}

.bg-gray-500 {
    --tw-bg-opacity: 1;
    background-color: #ef4444;
    border-radius: 15px;
}

/* nav.bg-white {
    background-image: var(--nav-bg-image);
    background-size: 4px 4px;
    width: 51.6667%;
    top: 1rem;
    left: 24%;
    right: 0px;
    border-radius: 25px;
    background-color: var(--nav-bg-color);
    box-shadow: var(--nav-box-shadow);
}

@media (min-width: 640px) {
    nav.bg-white {
    background-image: var(--nav-bg-image);
    background-size: 4px 4px;
    width: 85.6667%;
    top: 1rem;
    left: 8%;
    right: 0px;
    border-radius: 25px;
    background-color: var(--nav-bg-color);
    box-shadow: var(--nav-box-shadow);
}
} */

/* 导航栏基础样式 */
nav.bg-white {
    background-image: var(--nav-bg-image);
    background-size: 4px 4px;
    top: 1rem;
    border-radius: 25px;
    background-color: var(--nav-bg-color);
    box-shadow: var(--nav-box-shadow);
    position: fixed;
    z-index: 999;
}

@media (min-width: 768px) {
    nav.bg-white {
        width: 51.6667%;
        left: 24%;
    }
}

/* @media (min-width: 768px) {
    nav.bg-white {
        width: 80.6667%;
        left: 10.1%;
    }
} */

/* 手机版样式 */
/* @media (max-width: 767px) {
    nav.bg-white {
        width: 85.6667%;
        left: 8%;
    }
} */

/* 手机版样式 */
@media (max-width: 767px) {
    nav.bg-white {
        width: 90%; /* 略微增加宽度以容纳按钮 */
        left: 5%;
    }
    
    .nav-content {
        padding: 0.5rem 0.7rem; /* 缩小内边距 */
    }
    
    .nav-links {
        gap: 0.8rem; /* 移动端间距缩小 */
    }
    
    .nav-link {
        padding: 0.4rem 0.8rem; /* 缩小链接内边距 */
    }
}


/* 导航栏内部元素样式 */
.nav-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 1rem;
}

/* 导航链接样式 */
.nav-links {
    display: flex;
    gap: 1.5rem;
}

.nav-link {
    color: #333;
    text-decoration: none;
    transition: color 0.3s;
}

.nav-link:hover {
    color: #5B8FF9;
}

/* 移动端菜单按钮 */
.menu-button {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
}

/* 移动端适配 */
@media (max-width: 767px) {
    .nav-links {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: white;
        border-radius: 0 0 25px 25px;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        padding: 1rem 0;
    }
    
    .nav-links.active {
        display: flex;
    }
    
    .menu-button {
        display: block;
    }
    
    .nav-link {
        padding: 0.5rem 1rem;
    }
}

.bg-whites {
    --tw-bg-opacity: 1;
    backdrop-filter: blur(15px);
    border-radius: 45px;
    background-color: var(--bg-white-color);
}

.bg-white {
    --tw-bg-opacity: 1;
    backdrop-filter: blur(15px);
    border-radius: 45px;
    background-color: var(--bg-white-color);
    border: 4px solid var(--bg-white-border);    
}

.srk {
    min-height: 38px;
    line-height: 22px;
    background-color: var(--srk--color);
}

.srkaaa{
    max-width: 680px;
    margin: 5px 10px 1px 9px;
}

.text-white {
    --tw-text-opacity: 1;
    color: rgba(255, 255, 255, var(--tw-text-opacity));
    width: 40%;
    border-radius: 15px;
    background-color: hsl(var(--primary));
    background-image: url(https://imgxz.bizhi3.com/20240309/240309114920879.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    box-shadow: 1px 0px 50px 2px #7c916f;
}

.logo-color {
    --tw-text-opacity: 1;
    color: rgb(var(--logo-color));
}

.text-gray-600 {
    --tw-text-opacity: 1;
    color: rgba(var(--step-detail-color), 1);
}

.preview-image:hover {
    transform: scale(1.02);
}

.preview-item input[type="text"] {
    transition: border-color 0.3s ease;
}

.preview-item input[type="text"]:hover {
    border-color: rgb(var(--input-border-hover));
}

.preview-item input[type="text"]:focus {
    border-color: rgb(var(--input-border-focus));
    box-shadow: 0 0 0 3px rgba(var(--input-border-focus), 0.1);
}

.toast-container {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.toast {
    padding: 8px 16px;
    border-radius: 4px;
    font-size: 14px;
    max-width: 300px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
    pointer-events: none;
}

.toast.show {
    opacity: 1;
    transform: translateY(0);
}

.toast.info {
    background-color: rgb(var(--toast-info-bg));
    color: white;
}

.toast.warning {
    background-color: rgb(var(--toast-warning-bg));
    color: white;
}

.toast.error {
    background-color: rgb(var(--toast-error-bg));
    color: white;
}

.input-warning {
    border-color: rgb(var(--input-warning-border)) !important;
    animation: shake 0.5s ease-in-out;
}

.warning-text {
    color: rgb(var(--input-warning-border));
    font-size: 12px;
    margin-top: 4px;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease;
}

.warning-text.show {
    opacity: 1;
    transform: translateY(0);
}

.upload-warning {
    border-color: rgb(var(--input-warning-border)) !important;
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes shake {
    0%,
    100% {
        transform: translateX(0);
    }
    25% {
        transform: translateX(-4px);
    }
    75% {
        transform: translateX(4px);
    }
}

@keyframes pulse {
    0%,
    100% {
        border-color: rgb(var(--input-warning-border));
    }
    50% {
        border-color: transparent;
    }
}

.inline-warning {
    background-color: var(--inline-warning-bg);
    border-left: 4px solid rgb(var(--inline-warning-border));
    color: var(--inline-warning-text);
    padding: 8px 12px;
    margin-top: 4px;
    font-size: 14px;
    border-radius: 0 4px 4px 0;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease;
}

.inline-warning.show {
    opacity: 1;
    transform: translateY(0);
}

footer h4 {
    font-weight: 600 !important;
}

@media (max-width: 640px) {
    footer h4 {
        font-weight: 600 !important;
    }
}

@media (max-width: 640px) {
    footer .grid {
        gap: 2rem;
    }

    footer h4 {
        margin-bottom: 0.75rem;
        font-size: 1rem;
    }
}

/* 更新提示组件 */
    /* 基础样式 */
    @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');
    

    
    /* 主题变量 */
    :root {
      /* 深色主题 (默认) */
      --card-bg: #353535;
      --text-color-dark: white;
      --link-color: #4285f4;
      --link-hover: #8ab4f8;
      --close-bg: rgba(255, 255, 255, 0.1);
      --close-bg-hover: rgba(255, 255, 255, 0.2);
      --yyk--ys:#ffffff;
    }
    
    /* 浅色主题 */
    .theme-light {
      --card-bg: white;
      --text-color-dark: #333;
      --link-color: #1a73e8;
      --link-hover: #4285f4;
      --close-bg: rgba(0, 0, 0, 0.1);
      --close-bg-hover: rgba(0, 0, 0, 0.2);
      --yyk--ys:#7c916f;
    }
    
    /* 更新提示组件样式 */
    .update-notification {
      position: fixed;
      z-index: 9999;
      font-family: 'Poppins', sans-serif;
      display: none;
    }
    
    /* 电脑版样式 */
    .update-notification-desktop {
      top: -100px;
      left: 50%;
      transform: translateX(-50%);
      animation: slideDown 0.5s forwards cubic-bezier(0.2, 0.8, 0.2, 1);
      width: 90%;
      max-width: 450px;
      box-shadow: 1px 0px 50px 2px var(--yyk--ys);
      border-radius: 25px;
    }
    
    @keyframes slideDown {
      0% {
        top: -100px;
        filter: blur(5px); /* 增加模糊度到5px */
        opacity: 0.8;
      }
      70% {
        filter: blur(1px);
      }
      100% {
        top: 20px;
        filter: blur(0);
        opacity: 1;
      }
    }
    
    /* 手机版样式 */
    .update-notification-mobile {
      top: 20px;
      right: -400px;
      animation: slideIn 0.5s forwards cubic-bezier(0.2, 0.8, 0.2, 1);
      width: 95%;
      max-width: 480px;
      box-shadow: 1px 0px 50px 2px var(--yyk--ys);
      border-radius: 25px;
    }
    
    @keyframes slideIn {
      to {
        right: 2.5%;
      }
    }
    
    /* 卡片样式 */
    .update-card {
      width: 100%;
      height: 70px;
      background: var(--card-bg);
      border-radius: 20px;
      display: flex;
      align-items: center;
      justify-content: left;
      backdrop-filter: blur(10px);
      transition: 0.5s ease-in-out;
      position: relative;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    }
    
    .update-card:hover {
      transform: scale(1.02);
    }
    
    .update-card-img {
      width: 50px;
      height: 50px;
      margin-left: 10px;
      border-radius: 10px;
      background-image: url('https://kozekiui.wntab.work/images/logo.jpg');
      background-size: cover;
      background-position: center;
    }
    
    .update-card-content {
      width: calc(100% - 90px);
      margin-left: 10px;
      color: var(--text-color-dark);
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
    
    .update-card-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-top: 3px;
      padding-right: 30px;
    }
    
    .update-card-title {
      font-size: 16px;
      font-weight: bold;
      margin: 0;
      color: var(--text-color-dark);
    }
    
    .update-card-date {
      font-size: 10px;
    }
    
    .update-card-version {
      font-size: 14px;
      margin: 2px 0;
    }
    
    .update-card-link {
      display: inline-block;
      font-size: 1.31vh;
      color: var(--link-color);
      text-decoration: none;
      transition: color 0.3s;
      margin-top: -2px;
    }
    
    .update-card-link:hover {
      color: var(--link-hover);
      text-decoration: underline;
    }
    
    /* 关闭按钮样式 */
    .close-btn {
      position: absolute;
      top: 5px;
      right: 5px;
      width: 24px;
      height: 24px;
      border-radius: 50%;
      background-color: var(--close-bg);
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      transition: opacity 0.3s, background-color 0.3s;
      cursor: pointer;
    }
    
    .close-btn:hover {
      background-color: var(--close-bg-hover);
    }
    
    .update-card:hover .close-btn {
      opacity: 1;
    }
    
    .close-icon {
      color: var(--text-color);
      font-size: 16px;
    }
    
    .close-icon::before {
      content: "X";
      font-weight: bold;
      font-family: Arial, sans-serif;
    }

    /*主题切换按钮样式*/
    /* From Uiverse.io by RiccardoRapelli */ 
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch #input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #2196f3;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 0;
  overflow: hidden;
}

.sun-moon {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: yellow;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#input:checked + .slider {
  background-color: black;
}

#input:focus + .slider {
  box-shadow: 0 0 1px #2196f3;
}

#input:checked + .slider .sun-moon {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
  background-color: white;
  -webkit-animation: rotate-center 0.6s ease-in-out both;
  animation: rotate-center 0.6s ease-in-out both;
}

.moon-dot {
  opacity: 0;
  transition: 0.4s;
  fill: gray;
}

#input:checked + .slider .sun-moon .moon-dot {
  opacity: 1;
}

.slider.round {
  border-radius: 34px;
}

.slider.round .sun-moon {
  border-radius: 50%;
}

#moon-dot-1 {
  left: 10px;
  top: 3px;
  position: absolute;
  width: 6px;
  height: 6px;
  z-index: 4;
}

#moon-dot-2 {
  left: 2px;
  top: 10px;
  position: absolute;
  width: 10px;
  height: 10px;
  z-index: 4;
}

#moon-dot-3 {
  left: 16px;
  top: 18px;
  position: absolute;
  width: 3px;
  height: 3px;
  z-index: 4;
}

#light-ray-1 {
  left: -8px;
  top: -8px;
  position: absolute;
  width: 43px;
  height: 43px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

#light-ray-2 {
  left: -50%;
  top: -50%;
  position: absolute;
  width: 55px;
  height: 55px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

#light-ray-3 {
  left: -18px;
  top: -18px;
  position: absolute;
  width: 60px;
  height: 60px;
  z-index: -1;
  fill: white;
  opacity: 10%;
}

.cloud-light {
  position: absolute;
  fill: #eee;
  animation-name: cloud-move;
  animation-duration: 6s;
  animation-iteration-count: infinite;
}

.cloud-dark {
  position: absolute;
  fill: #ccc;
  animation-name: cloud-move;
  animation-duration: 6s;
  animation-iteration-count: infinite;
  animation-delay: 1s;
}

#cloud-1 {
  left: 30px;
  top: 15px;
  width: 40px;
}

#cloud-2 {
  left: 44px;
  top: 10px;
  width: 20px;
}

#cloud-3 {
  left: 18px;
  top: 24px;
  width: 30px;
}

#cloud-4 {
  left: 36px;
  top: 18px;
  width: 40px;
}

#cloud-5 {
  left: 48px;
  top: 14px;
  width: 20px;
}

#cloud-6 {
  left: 22px;
  top: 26px;
  width: 30px;
}

@keyframes cloud-move {
  0% {
    transform: translateX(0px);
  }

  40% {
    transform: translateX(4px);
  }

  80% {
    transform: translateX(-4px);
  }

  100% {
    transform: translateX(0px);
  }
}

.stars {
  transform: translateY(-32px);
  opacity: 0;
  transition: 0.4s;
}

.star {
  fill: white;
  position: absolute;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  animation-name: star-twinkle;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

#input:checked + .slider .stars {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

#star-1 {
  width: 20px;
  top: 2px;
  left: 3px;
  animation-delay: 0.3s;
}

#star-2 {
  width: 6px;
  top: 16px;
  left: 3px;
}

#star-3 {
  width: 12px;
  top: 20px;
  left: 10px;
  animation-delay: 0.6s;
}

#star-4 {
  width: 18px;
  top: 0px;
  left: 18px;
  animation-delay: 1.3s;
}

@keyframes star-twinkle {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.2);
  }

  80% {
    transform: scale(0.8);
  }

  100% {
    transform: scale(1);
  }
}

/*主题过度动画*/
@keyframes blurTransition {
    0% {
        filter: blur(0);
    }
    50% {
        filter: blur(5px);
    }
    100% {
        filter: blur(0);
    }
}

/* 手机端主题切换按钮尺寸适配 */
/* @media (max-width: 767px) {
  .switch {
    width: 80px;
    height: 35px;
  }

  .sun-moon {
    height: 25px;
    width: 25px;
    left: 5px;
    bottom: 5px;
  }

  #input:checked + .slider .sun-moon {
    -webkit-transform: translateX(45px);
    -ms-transform: translateX(45px);
    transform: translateX(45px);
  }
} */

/*GitHub 链接按钮样式*/
.bookmarkBtn {
  width: 100px;
  height: 40px;
  border-radius: 40px;
  border: 1px solid rgba(255, 255, 255, 0.349);
  background-color: rgb(12, 12, 12);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition-duration: 0.3s;
  overflow: hidden;
}

.IconContainer {
  width: 30px;
  height: 30px;
  background: linear-gradient(to bottom, rgb(255 255 255), rgb(255 255 255));
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 2;
  transition-duration: 0.3s;
}

.text {
  height: 100%;
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  z-index: 1;
  transition-duration: 0.3s;
  font-size: 1.04em;
  font-size: 1.2vh;
}

.bookmarkBtn:hover .IconContainer {
  width: 90px;
  transition-duration: 0.3s;
}

.bookmarkBtn:hover .text {
  transform: translate(10px);
  width: 0;
  font-size: 0;
  transition-duration: 0.3s;
}

.bookmarkBtn:active {
  transform: scale(0.95);
  transition-duration: 0.3s;
}

/* 手机端按钮尺寸适配 */
@media (max-width: 767px) {
  .bookmarkBtn {
    width: 80px;
    height: 35px;
  }
  
  .IconContainer {
    width: 25px;
    height: 25px;
  }
  
  .text {
    width: 45px;
    font-size: 1vh;
  }
  
  .bookmarkBtn:hover .IconContainer {
    width: 70px;
  }
}


/* 语言选择器基础样式 */
#languageSelector {
  width: 100px;
  height: 40px;
  border-radius: 40px;
  border: 1px solid rgba(255, 255, 255, 0.349);
  background-color: rgb(12, 12, 12);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition-duration: 0.3s;
  overflow: hidden;
  padding: 0 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url('data:image/svg+xml;utf8,<svg fill="white" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');
  background-repeat: no-repeat;
  background-position-x: 90%;
  background-position-y: 50%;
}

#languageSelector option {
  background-color: rgb(12, 12, 12);
}

/* 手机端语言选择器尺寸适配 */
@media (max-width: 767px) {
  #languageSelector {
    width: 80px;
    height: 35px;
    font-size: 0.8rem;
    padding: 0 0.5rem;
    background-position-x: 85%;
  }
}


/* 按钮样式 */
.select-button {
  appearance: none;
  background-color: var(--select--bg);
  color: var(--select--color);
  border: 1px solid var(--select--border);
  border-radius: 0.95rem;
  padding: 0.6rem 1.2rem;
  font-size: 0.9rem;
  line-height: 1.3rem;
  width: auto;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.select-button:hover {
  border-color: var(--select--border-hover);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  transform: translateY(-2px);
}

/* 弹窗样式 */
.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
  background-color: var(--card-bg);
  margin: 15% auto;
  padding: 20px;
  border: 1px solid var(--select--border);
  border-radius: 0.95rem;
  width: 80%;
  max-width: 600px;
  position: relative;
}

.close {
  color: var(--text-color-dark);
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: var(--link-hover);
  text-decoration: none;
  cursor: pointer;
}

/* 选项网格布局 */
.option-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.option {
  cursor: pointer;
  transition: transform 0.3s ease;
}

.option:hover {
  transform: scale(1.05);
}

.option img {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
}

/* 帮助提示文本样式 */
.help-text {
  color: var(--text-color-dark);
  font-size: 0.8rem;
  margin-top: 1rem;
}

/*右上角消息框框样式*/
        /* 基础样式 */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Helvetica Neue', sans-serif;
        }
        
        /* body {
            min-height: 100vh;
            transition: background-color 0.3s ease;
            background-color: var(--body-bg);
            color: var(--text-primary);
            position: relative;
        } */
        
        /* 主题变量定义 - 暗色主题 */
        :root {
            --body-bg: #121212;
            --text-primary: #fff;
            --text-secondary: #888;
            --bg-primary: #2b2b2b;
            --bg-secondary: #161616;
            --bg-tertiary: #5e5e5e;
            --border-color: rgba(255, 255, 255, 0.1);
            --glass-bg: rgba(43, 43, 43, 0.7);
            --online-status: #00da00;
            --hover-bg: rgba(255, 255, 255, 0.05);
            --btn-primary-bg: #00da00;
            --btn-primary-color: #000;
            --btn-secondary-bg: #5e5e5e;
            --btn-secondary-color: #fff;
        }
        
        /* 亮色主题变量 */
        :root[data-theme="light"] {
            --body-bg: #f5f5f5;
            --text-primary: #333;
            --text-secondary: #666;
            --bg-primary: #f0f0f0;
            --bg-secondary: #e0e0e0;
            --bg-tertiary: #d0d0d0;
            --border-color: rgba(0, 0, 0, 0.1);
            --glass-bg: rgba(240, 240, 240, 0.7);
            --online-status: #008000;
            --hover-bg: rgba(0, 0, 0, 0.05);
            --btn-primary-bg: #4caf50;
            --btn-primary-color: #fff;
            --btn-secondary-bg: #d0d0d0;
            --btn-secondary-color: #333;
        }
        
        /* 消息通知按钮样式 */
        #btn-message {
            --font-size: 16px;
            --btn-transition: all 0.2s ease-out;
        }
        
        .button-message {
            display: flex;
            justify-content: center;
            align-items: center;
            font: 400 var(--font-size) Helvetica Neue, sans-serif;
            box-shadow: 0 0 2.17382px rgba(0,0,0,.049),0 1.75px 6.01034px rgba(0,0,0,.07),0 3.63px 14.4706px rgba(0,0,0,.091),0 22px 48px rgba(0,0,0,.14);
            background-color: var(--bg-primary);
            border-radius: 68px;
            cursor: pointer;
            padding: 6px 10px 6px 6px;
            width: fit-content;
            height: 40px;
            border: var(--border-color);
            overflow: hidden;
            position: fixed;
            right: 20px;
            top: 20px;
            z-index: 1000;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }
        
        @media (max-width: 768px) {
            .button-message {
                right: 20px;
                bottom: 20px;
                top: auto;
            }
        }
        
        .button-message:hover {
            height: 56px;
            padding: 8px 20px 8px 8px;
            background-color: var(--bg-secondary);
            transition: var(--btn-transition);
        }
        
        .button-message:active {
            transform: scale(0.99);
        }
        
        .content-avatar {
            width: 30px;
            height: 30px;
            margin: 0;
            transition: var(--btn-transition);
            position: relative;
        }
        
        .button-message:hover .content-avatar {
            width: 40px;
            height: 40px;
        }
        
        .avatar {
            width: 100%;
            height: 100%;
            border-radius: 50%;
            overflow: hidden;
            background-color: var(--bg-tertiary);
        }
        
        .user-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        
        .status-user {
            position: absolute;
            width: 6px;
            height: 6px;
            right: 1px;
            bottom: 1px;
            border-radius: 50%;
            outline: solid 2px var(--bg-primary);
            background-color: var(--online-status);
            transition: var(--btn-transition);
            animation: active-status 2s ease-in-out infinite;
        }
        
        .button-message:hover .status-user {
            width: 10px;
            height: 10px;
            right: 1px;
            bottom: 1px;
            outline: solid 3px var(--bg-secondary);
        }
        
        .notice-content {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: center;
            padding-left: 8px;
            text-align: initial;
            color: var(--text-primary);
        }
        
        .username {
            letter-spacing: -6px;
            height: 0;
            opacity: 0;
            transform: translateY(-20px);
            transition: var(--btn-transition);
        }
        
        .user-id {
            font-size: 12px;
            letter-spacing: -6px;
            height: 0;
            opacity: 0;
            transform: translateY(10px);
            transition: var(--btn-transition);
        }
        
        .lable-message {
            display: flex;
            align-items: center;
            opacity: 1;
            transform: scaleY(1);
            transition: var(--btn-transition);
        }
        
        .button-message:hover .username {
            height: auto;
            letter-spacing: normal;
            opacity: 1;
            transform: translateY(0);
            transition: var(--btn-transition);
        }
        
        .button-message:hover .user-id {
            height: auto;
            letter-spacing: normal;
            opacity: 1;
            transform: translateY(0);
            transition: var(--btn-transition);
        }
        
        .button-message:hover .lable-message {
            height: 0;
            transform: scaleY(0);
            transition: var(--btn-transition);
        }
        
        .lable-message, .username {
            font-weight: 600;
        }
        
        .number-message {
            display: flex;
            justify-content: center;
            align-items: center;
            text-align: center;
            margin-left: 8px;
            font-size: 12px;
            width: 16px;
            height: 16px;
            background-color: var(--bg-tertiary);
            border-radius: 20px;
        }
        
        /* 消息列表容器 */
        .message-container {
            position: fixed;
            right: 20px;
            top: 80px;
            width: 350px;
            background-color: var(--glass-bg);
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
            border: var(--border-color);
            overflow: hidden;
            max-height: 0;
            opacity: 0;
            transition: all 0.3s ease;
            z-index: 999;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }
        
        @media (max-width: 768px) {
            .message-container {
                right: 20px;
                bottom: 80px;
                top: auto;
            }
        }
        
        .message-container.active {
            max-height: 500px;
            opacity: 1;
            transition: all 0.3s ease;
        }
        
        .message-header {
            padding: 12px 16px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: var(--border-color);
        }
        
        .message-header h3 {
            color: var(--text-primary);
            font-size: 18px;
            font-weight: 600;
        }
        
        .message-header .close-btn {
            background: none;
            border: none;
            color: var(--text-secondary);
            font-size: 20px;
            cursor: pointer;
            opacity: 0.7;
        }
        
        .message-header .close-btn:hover {
            opacity: 1;
        }
        
        .message-list {
            max-height: 400px;
            overflow-y: auto;
        }
        
        .message-item {
            padding: 16px;
            border-bottom: var(--border-color);
            cursor: pointer;
            transition: background-color 0.2s;
        }
        
        .message-item:hover {
            background-color: var(--hover-bg);
        }
        
        .message-item:last-child {
            border-bottom: none;
        }
        
        .message-divider {
            height: 1px;
            background-color: var(--bg-tertiary);
            margin: 8px 0;
        }
        
        .message-time {
            font-size: 0.8vh;
            color: var(--text-secondary);
            margin-bottom: 4px;
        }
        
        .message-title {
            font-size: 2vh;
            font-weight: 600;
            margin-bottom: 4px;
        }
        
        .message-preview {
            font-size: 1.2vh;
            color: var(--text-primary);
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            margin-top: 4px;
        }
        
        /* 文章详情容器 */
        .article-container {
            position: fixed;
            right: 20px;
            top: 80px;
            width: 400px;
            background-color: var(--glass-bg);
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
            border: var(--border-color);
            overflow: hidden;
            max-height: 0;
            opacity: 0;
            transition: all 0.3s ease;
            z-index: 9999;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }
        
        @media (max-width: 768px) {
            .article-container {
                right: 20px;
                bottom: 80px;
                top: auto;
            }
        }
        
        .article-container.active {
            max-height: 700px;
            opacity: 1;
            transition: all 0.3s ease;
        }
        
        .article-header {
            padding: 12px 16px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: var(--border-color);
        }
        
        .article-header .back-btn {
            background: none;
            border: none;
            color: var(--text-secondary);
            font-size: 20px;
            cursor: pointer;
            opacity: 0.7;
        }
        
        .article-header .back-btn:hover {
            opacity: 1;
        }
        
        .article-time {
            font-size: 0.8vh;
            color: var(--text-secondary);
        }
        
        .article-content {
            padding: 20px;
            color: var(--text-primary);
        }
        
        .article-title {
            font-size: 2.2vh;
            font-weight: 600;
            text-align: center;
            margin-bottom: 16px;
        }
        
        .article-body {
            font-size: 1.2vh;
            line-height: 1.6;
        }
        
        .article-body p {
            margin-bottom: 16px;
        }
        
        .article-body img {
            max-width: 100%;
            border-radius: 8px;
            margin: 16px 0;
        }
        
        .article-body ul {
            margin-left: 20px;
            margin-bottom: 16px;
        }
        
        .article-body li {
            margin-bottom: 8px;
        }
        
        .copyright {
            font-size: 0.8vh;
            color: var(--text-secondary);
            text-align: center;
            margin-top: 20px;
            padding-top: 10px;
            border-top: var(--border-color);
        }
        
        /* 动画 */
        @keyframes active-status {
            0% {
                background-color: var(--online-status);
            }
            33.33% {
                background-color: #93e200;
            }
            66.33% {
                background-color: #93e200;
            }
            100% {
                background-color: var(--online-status);
            }
        }
        
        /* 用户名修改弹窗 */
        .username-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.5);
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 10000;
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
            background-color: var(--backdrop-bg);
        }
        
        .username-modal.active {
            opacity: 1;
            visibility: visible;
        }
        
        .modal-content {
            background-color: var(--glass-bg);
            border-radius: 12px;
            padding: 20px;
            width: 300px;
            border: var(--border-color);
            text-align: center;
        }
        
        .modal-header {
            margin-bottom: 15px;
        }
        
        .modal-header h3 {
            color: var(--text-primary);
            font-size: 18px;
            font-weight: 600;
        }
        
        .input-group {
            margin-bottom: 15px;
        }
        
        .input-group input {
            width: 100%;
            padding: 10px;
            background-color: var(--bg-primary);
            border: var(--border-color);
            border-radius: 6px;
            color: var(--text-primary);
            font-size: 16px;
        }
        
        .btn-group {
            display: flex;
            justify-content: space-between;
        }
        
        .btn {
            padding: 8px 15px;
            border-radius: 6px;
            cursor: pointer;
            border: none;
            font-size: 14px;
            font-weight: 500;
        }
        
        .btn-primary {
            background-color: var(--btn-primary-bg);
            color: var(--btn-primary-color);
        }
        
        .btn-secondary {
            background-color: var(--btn-secondary-bg);
            color: var(--btn-secondary-color);
        }
        
        /* 主题切换按钮样式 */
        .theme-toggle {
            position: fixed;
            top: 20px;
            left: 20px;
            z-index: 1000;
            background: var(--bg-primary);
            border: var(--border-color);
            border-radius: 50%;
            width: 40px;
            height: 40px;
            display: flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 0 2.17382px rgba(0,0,0,.049),0 1.75px 6.01034px rgba(0,0,0,.07),0 3.63px 14.4706px rgba(0,0,0,.091),0 22px 48px rgba(0,0,0,.14);
        }
        
        .theme-toggle:hover {
            background: var(--bg-secondary);
        }
        
        .theme-toggle i {
            font-size: 20px;
            color: var(--text-primary);
        }
        
        .theme-toggle[data-theme="dark"] i {
            content: "\f186"; /* 太阳图标 - 亮色主题 */
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
        }
        
        .theme-toggle[data-theme="light"] i {
            content: "\f185"; /* 月亮图标 - 暗色主题 */
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
        }

        /* 自定义滚动条容器 */
        .custom-scrollbar-container {
            position: relative;
        }
        
        /* 滚动条轨道 */
        .custom-scrollbar-track {
            position: absolute;
            top: 0;
            right: 0;
            width: 6px;
            height: 100%;
            background: rgba(0, 0, 0, 0.1);
            border-radius: 3px;
            opacity: 0;
            transition: opacity 0.3s ease;
        }
        
        /* 滚动条滑块 */
        .custom-scrollbar-thumb {
            position: absolute;
            right: 0;
            width: 6px;
            background: rgba(128, 128, 128, 0.5);
            border-radius: 3px;
            transition: background 0.2s ease, height 0.2s ease;
            min-height: 30px;
        }
        
        /* 鼠标悬停时显示滚动条 */
        .custom-scrollbar-container:hover .custom-scrollbar-track {
            opacity: 1;
        }
        
        /* 滚动条滑块悬停效果 */
        .custom-scrollbar-thumb:hover {
            background: rgba(128, 128, 128, 0.8);
        }
