| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671 |
- body{
- margin: 0;
- }
- .market-container {
- padding: 20px;
- margin-top: 10px;
- background: #fff;
- border-radius: 4px;
- box-shadow: 0 1px 3px rgba(0,0,0,0.1);
- }
- /* 顶部搜索和筛选区 */
- .market-header {
- background-color: #f8f9fa;
- padding: 1rem;
- border-radius: 4px;
- margin-bottom: 1.5rem;
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
- position: sticky;
- top: 0;
- z-index: 100;
- transition: box-shadow 0.3s ease;
- }
- /* 滚动时的样式增强 */
- .market-header.scrolled {
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
- }
- .search-filters-container {
- display: flex;
- align-items: center;
- flex-wrap: wrap;
- gap: 1rem;
- }
- .search-box {
- position: relative;
- flex: 1;
- min-width: 200px;
- }
- .search-icon {
- position: absolute;
- left: 10px;
- top: 50%;
- transform: translateY(-50%);
- color: #6c757d;
- font-size: 16px;
- }
- .search-box input {
- width: 100%;
- padding: 8px 15px 8px 35px;
- border: 1px solid #ced4da;
- border-radius: 4px;
- font-size: 16px;
- transition: all 0.3s;
- }
- .search-box input:focus {
- border-color: #4ca1af;
- box-shadow: 0 0 0 0.2rem rgba(76, 161, 175, 0.25);
- outline: none;
- }
- .filter-group {
- position: relative;
- min-width: 150px;
- }
- .filter-label {
- position: absolute;
- top: -22px;
- left: 0;
- font-size: 14px;
- color: #6c757d;
- font-weight: 500;
- }
- .filter-select {
- width: 100%;
- padding: 8px 10px;
- border: 1px solid #ced4da;
- border-radius: 4px;
- font-size: 14px;
- background-color: white;
- cursor: pointer;
- transition: all 0.3s;
- }
- .filter-select:focus {
- border-color: #4ca1af;
- box-shadow: 0 0 0 0.2rem rgba(76, 161, 175, 0.25);
- outline: none;
- }
- .view-toggle {
- display: flex;
- border: 1px solid #ced4da;
- border-radius: 4px;
- overflow: hidden;
- }
- .view-btn {
- padding: 8px 15px;
- font-size: 14px;
- background-color: white;
- cursor: pointer;
- transition: all 0.3s;
- color: #6c757d;
- }
- .view-btn:hover {
- background-color: #f1f1f1;
- }
- .view-btn.active {
- background-color: #4ca1af;
- color: white;
- }
- /* 主体内容区 */
- .market-content {
- display: flex;
- gap: 20px;
- margin-top: 20px;
- padding-top: 10px;
- position: relative;
- }
- /* 侧边栏样式 */
- .market-sidebar {
- width: 200px;
- flex-shrink: 0;
- position: sticky;
- top: 80px; /* 与顶部header保持一定距离 */
- max-height: calc(100vh - 100px); /* 设置最大高度,确保不会超出视窗 */
- overflow-y: auto; /* 内容过多时可滚动 */
- scrollbar-width: thin;
- scrollbar-color: #d0d0d0 #f4f4f4;
- transition: all 0.3s ease;
- }
- /* 侧边栏滚动条样式 */
- .market-sidebar::-webkit-scrollbar {
- width: 6px;
- }
- .market-sidebar::-webkit-scrollbar-track {
- background: #f4f4f4;
- border-radius: 3px;
- }
- .market-sidebar::-webkit-scrollbar-thumb {
- background-color: #d0d0d0;
- border-radius: 3px;
- border: 1px solid #f4f4f4;
- }
- .market-sidebar::-webkit-scrollbar-thumb:hover {
- background-color: #c0c0c0;
- }
- /* 暗黑模式下的侧边栏滚动条 */
- [data-theme='dark'] .market-sidebar {
- scrollbar-color: #555 #333;
- }
- [data-theme='dark'] .market-sidebar::-webkit-scrollbar-track {
- background: #2a2a2a;
- }
- [data-theme='dark'] .market-sidebar::-webkit-scrollbar-thumb {
- background-color: #555;
- border: 1px solid #2a2a2a;
- }
- [data-theme='dark'] .market-sidebar::-webkit-scrollbar-thumb:hover {
- background-color: #666;
- }
- /* 侧边栏section样式优化 */
- .sidebar-section {
- background: #fff;
- border-radius: 4px;
- padding: 15px;
- margin-bottom: 20px;
- box-shadow: 0 1px 3px rgba(0,0,0,0.1);
- transition: all 0.3s ease;
- }
- /* 滚动时的样式增强 */
- .market-sidebar.scrolled .sidebar-section {
- box-shadow: 0 2px 6px rgba(0,0,0,0.15);
- }
- .sidebar-section h4 {
- margin: 0 0 12px;
- padding-bottom: 12px;
- border-bottom: 1px solid #eee;
- font-size: 18px;
- color: #333;
- }
- .category-list li,
- .my-tools li {
- padding: 8px 10px;
- margin: 3px 0;
- cursor: pointer;
- border-radius: 4px;
- display: flex;
- justify-content: space-between;
- align-items: center;
- font-size: 14px;
- }
- .category-list li:hover,
- .my-tools li:hover {
- background: #f0f0f0;
- }
- .category-list li.active {
- background: #e6f7ff;
- color: #1890ff;
- }
- .count {
- font-size: 14px;
- color: #999;
- }
- /* 工具展示区 */
- .tools-grid {
- flex: 1;
- }
- /* 网格视图 */
- .tools-container.grid {
- display: grid;
- grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
- gap: 20px;
- }
- .tool-card {
- background: #fff;
- border-radius: 4px;
- padding: 15px;
- box-shadow: 0 1px 3px rgba(0,0,0,0.1);
- display: flex;
- flex-direction: column;
- gap: 10px;
- transition: transform 0.2s;
- }
- .tool-card:hover {
- transform: translateY(-2px);
- box-shadow: 0 4px 6px rgba(0,0,0,0.1);
- }
- .tool-icon {
- font-size: 32px;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- width: 48px;
- height: 48px;
- border-radius: 12px;
- margin-right: 12px;
- background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
- color: #2d3436;
- transition: all 0.3s ease;
- }
- .tool-card:hover .tool-icon {
- transform: scale(1.1);
- box-shadow: 0 4px 8px rgba(0,0,0,0.1);
- }
- /* 为不同类型的工具设置不同的背景色 */
- .tool-card[data-category="dev"] .tool-icon {
- background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
- }
- .tool-card[data-category="encode"] .tool-icon {
- background: linear-gradient(135deg, #d299c2 0%, #fef9d7 100%);
- }
- .tool-card[data-category="image"] .tool-icon {
- background: linear-gradient(135deg, #89f7fe 0%, #66a6ff 100%);
- }
- .tool-card[data-category="productivity"] .tool-icon {
- background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
- }
- .tool-card[data-category="calculator"] .tool-icon {
- background: linear-gradient(135deg, #84fab0 0%, #8fd3f4 100%);
- }
- .tool-info {
- flex: 1;
- display: flex;
- flex-direction: column;
- justify-content: center;
- }
- .tool-info h3 {
- margin: 0 0 10px;
- font-size: 18px;
- color: #333;
- display: flex;
- align-items: center;
- gap: 10px;
- }
- .tool-desc {
- margin: 0;
- font-size: 14px;
- color: #666;
- line-height: 1.5;
- }
- .tool-meta {
- display: flex;
- gap: 15px;
- margin-top: 10px;
- font-size: 12px;
- color: #999;
- }
- .tool-actions {
- display: flex;
- gap: 8px;
- margin-top: 10px;
- }
- /* 列表视图 */
- .tools-container.list .tool-card {
- flex-direction: row;
- align-items: center;
- margin-bottom: 10px;
- }
- .tools-container.list .tool-info {
- margin: 0 15px;
- }
- /* 调整列表视图中图标的大小 */
- .tools-container.list .tool-icon {
- width: 40px;
- height: 40px;
- font-size: 28px;
- margin-right: 16px;
- }
- /* 按钮样式 */
- .btn {
- padding: 8px 15px;
- border: none;
- border-radius: 4px;
- cursor: pointer;
- font-size: 14px;
- transition: all 0.3s;
- }
- .btn-xs {
- padding: 4px 8px;
- font-size: 13px;
- line-height: 1.5;
- border-radius: 3px;
- }
- .btn:hover {
- opacity: 0.9;
- }
- .btn:disabled {
- opacity: 0.6;
- cursor: not-allowed;
- }
- .x-progress {
- font-size: 13px;
- margin-left: 3px;
- }
- /* 为系统预装的工具添加提示样式 */
- .btn-disabled {
- background-color: #e0e0e0;
- color: #999;
- cursor: not-allowed;
- }
- .btn-disabled:hover {
- opacity: 1;
- }
- .btn-success {
- background: #52c41a;
- color: #fff;
- }
- .btn-danger {
- background: #ff4d4f;
- color: #fff;
- }
- .btn-info {
- background: #1890ff;
- color: #fff;
- }
- .btn-warning {
- background: #faad14;
- color: #fff;
- }
- .btn-default {
- background: #f0f0f0;
- color: #666;
- }
- .btn-default.active {
- background-color: #ff4757;
- color: white;
- border-color: #ff4757;
- }
- .btn-default.active:hover {
- background-color: #ff6b81;
- border-color: #ff6b81;
- }
- .favorite-icon {
- color: #ff4757;
- margin-right: 4px;
- transition: all 0.3s ease;
- }
- .btn-default:not(.active) .favorite-icon {
- color: #666;
- }
- .btn-default.active .favorite-icon {
- transform: scale(1.2);
- color: white;
- }
- /* 暗黑模式适配 */
- [data-theme='dark'] .market-container {
- background: #1f1f1f;
- }
- [data-theme='dark'] .market-header {
- background-color: #2a2a2a;
- }
- [data-theme='dark'] .sidebar-section,
- [data-theme='dark'] .tool-card {
- background: #2d2d2d;
- box-shadow: 0 1px 3px rgba(0,0,0,0.3);
- }
- [data-theme='dark'] .tool-info h3 {
- color: #fff;
- }
- [data-theme='dark'] .tool-desc {
- color: #bbb;
- }
- [data-theme='dark'] .category-list li:hover,
- [data-theme='dark'] .my-tools li:hover {
- background: #3d3d3d;
- }
- [data-theme='dark'] .category-list li.active {
- background: #177ddc;
- color: #fff;
- }
- [data-theme='dark'] .view-toggle span {
- background: #3d3d3d;
- color: #bbb;
- }
- [data-theme='dark'] .view-toggle span.active {
- background: #177ddc;
- color: #fff;
- }
- [data-theme='dark'] .btn-default {
- background: #3d3d3d;
- color: #bbb;
- }
- /* 暗黑模式下的图标样式调整 */
- [data-theme='dark'] .tool-icon {
- color: #ffffff;
- opacity: 0.9;
- }
- /* 推荐位和广告位样式 */
- .recommendation-container {
- margin-bottom: 20px;
- }
- .recommendation-section {
- display: grid;
- grid-template-columns: repeat(4, 1fr);
- gap: 15px;
- }
- .recommendation-card {
- display: flex;
- align-items: center;
- padding: 15px;
- background: #fff;
- border-radius: 6px;
- box-shadow: 0 2px 8px rgba(0,0,0,0.1);
- cursor: pointer;
- transition: all 0.3s ease;
- position: relative;
- }
- .recommendation-card:hover {
- transform: translateY(-3px);
- box-shadow: 0 6px 12px rgba(0,0,0,0.15);
- }
- .rec-icon {
- display: flex;
- align-items: center;
- justify-content: center;
- width: 60px;
- height: 60px;
- border-radius: 12px;
- background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
- font-size: 28px;
- margin-right: 15px;
- flex-shrink: 0;
- }
- .recommendation-card:nth-child(1) .rec-icon {
- background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
- }
- .recommendation-card:nth-child(2) .rec-icon {
- background: linear-gradient(135deg, #d299c2 0%, #fef9d7 100%);
- }
- .recommendation-card:nth-child(3) .rec-icon {
- background: linear-gradient(135deg, #89f7fe 0%, #66a6ff 100%);
- }
- .rec-content {
- flex: 1;
- }
- .rec-content h4 {
- margin: 0 0 8px;
- font-size: 18px;
- color: #333;
- }
- .rec-content p {
- margin: 0;
- font-size: 14px;
- color: #666;
- line-height: 1.4;
- }
- /* 广告卡片特殊样式 */
- .ad-card {
- position: relative;
- border: 1px solid #FFD700;
- background: linear-gradient(to right, #fff, #fffdf0);
- }
- .ad-icon {
- background: linear-gradient(135deg, #FFD700 0%, #FFA500 100%);
- }
- .ad-tag {
- position: absolute;
- top: 8px;
- right: 8px;
- background: rgba(255, 215, 0, 0.2);
- border: 1px solid #FFD700;
- border-radius: 4px;
- padding: 3px 8px;
- font-size: 12px;
- color: #997a00;
- }
- /* 必装标签样式 */
- .must-tag {
- position: absolute;
- top: 8px;
- right: 8px;
- background: rgba(82, 196, 26, 0.2);
- border: 1px solid #52c41a;
- border-radius: 4px;
- padding: 3px 8px;
- font-size: 12px;
- color: #52c41a;
- }
- /* 最新标签样式 */
- .new-tag {
- position: absolute;
- top: 8px;
- right: 8px;
- background: rgba(24, 144, 255, 0.2);
- border: 1px solid #1890ff;
- border-radius: 4px;
- padding: 3px 8px;
- font-size: 12px;
- color: #1890ff;
- }
- /* 推荐标签样式 */
- .recommend-tag {
- position: absolute;
- top: 8px;
- right: 8px;
- background: rgba(250, 84, 28, 0.2);
- border: 1px solid #fa541c;
- border-radius: 4px;
- padding: 3px 8px;
- font-size: 12px;
- color: #fa541c;
- }
- /* 暗黑模式适配 */
- [data-theme='dark'] .recommendation-card {
- background: #2d2d2d;
- box-shadow: 0 2px 8px rgba(0,0,0,0.3);
- }
- [data-theme='dark'] .rec-content h4 {
- color: #fff;
- }
- [data-theme='dark'] .rec-content p {
- color: #bbb;
- }
- [data-theme='dark'] .ad-card {
- background: linear-gradient(to right, #2d2d2d, #332e1f);
- border-color: #997a00;
- }
- [data-theme='dark'] .ad-tag {
- background: rgba(255, 215, 0, 0.15);
- color: #FFD700;
- }
- /* 暗黑模式下的必装标签 */
- [data-theme='dark'] .must-tag {
- background: rgba(82, 196, 26, 0.15);
- color: #73d13d;
- border-color: #52c41a;
- }
- /* 暗黑模式下的最新标签 */
- [data-theme='dark'] .new-tag {
- background: rgba(24, 144, 255, 0.15);
- color: #40a9ff;
- border-color: #1890ff;
- }
- /* 暗黑模式下的推荐标签 */
- [data-theme='dark'] .recommend-tag {
- background: rgba(250, 84, 28, 0.15);
- color: #ff7a45;
- border-color: #fa541c;
- }
- /* 轮播Banner区域 */
- /* 导航链接样式 */
- .x-nav-links {
- margin-right: 15px;
- }
- .x-nav-links a {
- color: #1890ff;
- text-decoration: none;
- margin-left: 15px;
- font-size: 14px;
- }
- .x-nav-links a:hover {
- color: #40a9ff;
- text-decoration: underline;
- }
- /* 设置弹窗样式 */
- .settings-modal {
- position: fixed;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- background-color: rgba(0, 0, 0, 0.5);
- z-index: 1000;
- display: flex;
- justify-content: center;
- align-items: center;
- backdrop-filter: blur(2px);
- }
- .settings-dialog {
- background-color: #fff;
- border-radius: 8px;
- box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
- width: 80%;
- max-width: 800px;
- max-height: 90vh;
- display: flex;
- flex-direction: column;
- animation: fadeIn 0.3s ease;
- overflow: hidden;
- }
- @keyframes fadeIn {
- from { opacity: 0; transform: translateY(-20px); }
- to { opacity: 1; transform: translateY(0); }
- }
- .settings-header {
- padding: 16px 20px;
- border-bottom: 1px solid #e8e8e8;
- display: flex;
- justify-content: space-between;
- align-items: center;
- position: sticky;
- top: 0;
- background-color: #fff;
- z-index: 10;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
- flex-shrink: 0;
- }
- .settings-header h3 {
- margin: 0;
- color: #333;
- font-size: 20px;
- font-weight: 600;
- }
- .close-btn {
- font-size: 28px;
- color: #999;
- cursor: pointer;
- transition: all 0.3s;
- width: 32px;
- height: 32px;
- display: flex;
- align-items: center;
- justify-content: center;
- border-radius: 50%;
- }
- .close-btn:hover {
- color: #666;
- background-color: #f0f0f0;
- }
- .settings-body {
- padding: 0 20px;
- overflow-y: auto;
- flex: 1;
- scrollbar-width: thin;
- scrollbar-color: #d0d0d0 #f4f4f4;
- }
- .settings-body label {
- font-weight: normal !important;
- display: inline-flex;
- align-items: center;
- }
- .settings-body label b,
- .settings-body label i,
- .settings-body label strong {
- font-weight: bold;
- }
- .settings-body::-webkit-scrollbar {
- width: 8px;
- }
- .settings-body::-webkit-scrollbar-track {
- background: #f4f4f4;
- border-radius: 4px;
- }
- .settings-body::-webkit-scrollbar-thumb {
- background-color: #d0d0d0;
- border-radius: 4px;
- border: 2px solid #f4f4f4;
- }
- .settings-body::-webkit-scrollbar-thumb:hover {
- background-color: #c0c0c0;
- }
- .settings-footer {
- padding: 16px 20px;
- border-top: 1px solid #e8e8e8;
- display: flex;
- justify-content: flex-end;
- gap: 12px;
- position: sticky;
- bottom: 0;
- background-color: #fff;
- z-index: 10;
- box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.05);
- flex-shrink: 0;
- }
- .settings-footer .btn {
- padding: 8px 20px;
- border-radius: 4px;
- font-size: 14px;
- font-weight: 500;
- transition: all 0.3s ease;
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
- }
- .settings-footer .btn-success {
- background: linear-gradient(135deg, #52c41a, #39a012);
- }
- .settings-footer .btn-success:hover {
- background: linear-gradient(135deg, #5bd81e, #43b515);
- box-shadow: 0 4px 8px rgba(0,0,0,0.15);
- transform: translateY(-1px);
- }
- .settings-footer .btn-danger {
- background: linear-gradient(135deg, #ff4d4f, #e02b2e);
- }
- .settings-footer .btn-danger:hover {
- background: linear-gradient(135deg, #ff6769, #ed3437);
- box-shadow: 0 4px 8px rgba(0,0,0,0.15);
- transform: translateY(-1px);
- }
- .dark-mode .settings-footer {
- border-top-color: #333;
- background-color: #1f1f1f;
- box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.2);
- }
- .dark-mode .settings-footer .btn {
- box-shadow: 0 2px 6px rgba(0,0,0,0.2);
- }
- .dark-mode .settings-footer .btn-success {
- background: linear-gradient(135deg, #49b616, #338c0f);
- }
- .dark-mode .settings-footer .btn-success:hover {
- background: linear-gradient(135deg, #52c41a, #39a012);
- }
- .dark-mode .settings-footer .btn-danger {
- background: linear-gradient(135deg, #e63e40, #cc2729);
- }
- .dark-mode .settings-footer .btn-danger:hover {
- background: linear-gradient(135deg, #ff4d4f, #e02b2e);
- }
- .a-btn {
- display: inline-block;
- background-color: #1890ff;
- color: white;
- padding: 2px 8px;
- border-radius: 3px;
- margin-left: 10px;
- font-size: 12px;
- text-decoration: none;
- }
- .a-btn:hover {
- background-color: #40a9ff;
- text-decoration: none;
- }
- .x-count-down {
- margin-left: 10px;
- font-size: 12px;
- color: #ff4d4f;
- }
- .x-tips {
- color: #666;
- font-size: 14px;
- margin-left: 5px;
- }
- /* 暗黑模式样式适配 */
- .dark-mode .settings-modal {
- background-color: rgba(0, 0, 0, 0.7);
- }
- .dark-mode .settings-dialog {
- background-color: #1f1f1f;
- color: #eee;
- box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
- }
- .dark-mode .settings-header {
- border-bottom-color: #333;
- background-color: #1f1f1f;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
- }
- .dark-mode .settings-header h3 {
- color: #eee;
- }
- .dark-mode .close-btn {
- color: #aaa;
- }
- .dark-mode .close-btn:hover {
- color: #eee;
- background-color: #333;
- }
- .dark-mode .settings-section h4 {
- color: #eee;
- }
- .dark-mode .box-config {
- background-color: #2a2a2a;
- }
- .dark-mode .box-inner {
- background-color: #333;
- }
- /* 导航栏样式 */
- .main-navbar {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding: 10px 15px;
- background: linear-gradient(to right, #2c3e50, #4ca1af);
- color: #fff;
- position: relative;
- }
- .navbar-brand {
- display: flex;
- align-items: center;
- }
- .brand-link {
- display: flex;
- align-items: center;
- color: #fff;
- text-decoration: none;
- font-weight: 500;
- font-size: 16px;
- transition: all 0.3s ease;
- }
- .brand-link:hover {
- opacity: 0.9;
- text-decoration: none;
- color: #fff;
- }
- .brand-link img {
- height: 20px;
- width: 20px;
- margin-right: 6px;
- }
- .brand-text {
- font-weight: 600;
- font-size: 16px;
- }
- .brand-subtitle {
- margin-left: 6px;
- font-size: 14px;
- opacity: 0.9;
- font-weight: normal;
- position: relative;
- padding-left: 8px;
- }
- .brand-subtitle::before {
- content: '';
- position: absolute;
- left: 0;
- top: 50%;
- transform: translateY(-50%);
- height: 70%;
- width: 1px;
- background-color: rgba(255, 255, 255, 0.5);
- }
- .navbar-actions {
- display: flex;
- align-items: center;
- gap: 15px;
- }
- .nav-item {
- position: relative;
- transition: all 0.3s ease;
- overflow: hidden;
- display: flex;
- align-items: center;
- justify-content: center;
- color: #fff;
- text-decoration: none;
- padding: 8px 15px;
- border-radius: 6px;
- font-size: 14px;
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
- min-width: 100px;
- text-align: center;
- }
- .nav-item:hover {
- background-color: rgba(255, 255, 255, 0.1);
- transform: translateY(-2px);
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
- color: #fff;
- text-decoration: none;
- }
- .nav-item:active {
- transform: translateY(0);
- box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
- }
- .nav-icon {
- display: inline-block;
- transition: all 0.3s ease;
- margin-right: 6px;
- font-size: 16px;
- }
- .nav-item:hover .nav-icon {
- transform: scale(1.2) rotate(10deg);
- }
- /* 波纹效果 */
- .nav-item::after {
- content: '';
- position: absolute;
- top: 50%;
- left: 50%;
- width: 5px;
- height: 5px;
- background: rgba(255, 255, 255, 0.3);
- opacity: 0;
- border-radius: 100%;
- transform: scale(1, 1) translate(-50%);
- transform-origin: 50% 50%;
- }
- .nav-item:hover::after {
- animation: ripple 0.6s ease-out;
- }
- /* 打赏鼓励按钮特殊效果 */
- .navbar-actions .donate-link {
- background: linear-gradient(135deg, #ff9a9e 0%, #fad0c4 99%, #fad0c4 100%);
- color: #333;
- position: relative;
- overflow: hidden;
- }
- .navbar-actions .donate-link:hover {
- background: linear-gradient(45deg, #ff7675, #d63031);
- transform: translateY(-3px);
- box-shadow: 0 5px 15px rgba(255, 105, 97, 0.4);
- color: #fff;
- }
- .navbar-actions .donate-link .nav-icon {
- color: #e74c3c;
- font-size: 18px;
- }
- .navbar-actions .donate-link:hover .nav-icon {
- animation: heartbeat 1.2s infinite;
- color: #fff;
- }
- /* 设置按钮特殊效果 */
- .navbar-actions .settings-link {
- position: relative;
- overflow: hidden;
- background-color: rgba(255, 255, 255, 0.15);
- }
- .navbar-actions .settings-link:hover {
- background: linear-gradient(45deg, #74b9ff, #0984e3);
- }
- .navbar-actions .settings-link .nav-icon {
- transition: transform 0.5s ease;
- }
- .navbar-actions .settings-link:hover .nav-icon {
- animation: rotate 2s linear infinite;
- }
- /* 动画关键帧 */
- @keyframes ripple {
- 0% {
- transform: scale(0, 0);
- opacity: 1;
- }
- 20% {
- transform: scale(25, 25);
- opacity: 1;
- }
- 100% {
- opacity: 0;
- transform: scale(40, 40);
- }
- }
- @keyframes heartbeat {
- 0% { transform: scale(1); }
- 25% { transform: scale(1.3); }
- 50% { transform: scale(1); }
- 75% { transform: scale(1.3); }
- 100% { transform: scale(1); }
- }
- @keyframes rotate {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(360deg); }
- }
- /* 响应式调整 */
- @media (max-width: 768px) {
- .navbar-actions {
- gap: 10px;
- }
-
- .nav-item {
- min-width: auto;
- padding: 8px 12px;
- }
-
- .version-info {
- padding: 6px 10px;
- }
-
- /* 搜索和筛选区域响应式 */
- .search-filters-container {
- flex-direction: column;
- align-items: stretch;
- }
-
- .filter-group {
- width: 100%;
- }
-
- .view-toggle {
- margin-top: 1rem;
- width: 100%;
- }
-
- .view-btn {
- flex: 1;
- text-align: center;
- }
-
- .market-content {
- flex-direction: column;
- }
-
- .market-sidebar {
- width: 100%;
- position: relative;
- top: 0;
- max-height: none;
- margin-bottom: 20px;
- }
- }
- @media (max-width: 600px) {
- .brand-subtitle {
- display: none;
- }
-
- .nav-item {
- padding: 6px 10px;
- }
-
- .nav-item span {
- display: none;
- }
-
- .nav-icon {
- margin-right: 0;
- font-size: 18px;
- }
-
- .version-info {
- padding: 4px 8px;
- }
-
- .donate-link span,
- .settings-link span {
- display: none;
- }
-
- .donate-link .nav-icon,
- .settings-link .nav-icon {
- margin-right: 0;
- }
- }
- /* 暗黑模式下搜索和筛选区样式 */
- .dark-mode .search-box input,
- .dark-mode .filter-select {
- background-color: #333;
- border-color: #444;
- color: #eee;
- }
- .dark-mode .filter-label {
- color: #aaa;
- }
- .dark-mode .view-toggle {
- border-color: #444;
- }
- .dark-mode .view-btn {
- background-color: #333;
- color: #aaa;
- }
- .dark-mode .view-btn.active {
- background-color: #4ca1af;
- color: white;
- }
- /* 版本号与更新提示 */
- .version-details {
- display: flex;
- flex-direction: column;
- align-items: flex-start;
- }
- .version-label {
- font-size: 12px;
- color: rgba(255,255,255,0.7);
- margin-bottom: 3px;
- }
- .current-version {
- font-size: 14px;
- font-weight: 600;
- color: #fff;
- padding: 2px 6px;
- background-color: rgba(24, 144, 255, 0.4);
- border-radius: 4px;
- letter-spacing: 0.5px;
- }
- .latest-version-text {
- font-size: 14px;
- font-weight: 600;
- color: #fff;
- padding: 2px 6px;
- background-color: rgba(82, 196, 26, 0.4);
- border-radius: 4px;
- letter-spacing: 0.5px;
- }
- .latest-version-container {
- height: 20px;
- display: flex;
- align-items: center;
- }
- .latest-version-img {
- height: 20px;
- transition: transform 0.2s ease;
- cursor: pointer;
- }
- .latest-version-img:hover {
- transform: scale(1.05);
- }
- .update-btn {
- background-color: #ff6b6b;
- color: white;
- border: none;
- padding: 5px 12px;
- border-radius: 4px;
- font-size: 14px;
- font-weight: 600;
- cursor: pointer;
- box-shadow: 0 2px 4px rgba(0,0,0,0.2);
- animation: pulse 1.5s infinite;
- transition: background-color 0.3s;
- }
- .update-btn:hover {
- background-color: #ff5252;
- }
- @keyframes pulse {
- 0% {
- box-shadow: 0 0 0 0 rgba(255, 107, 107, 0.7);
- }
- 70% {
- box-shadow: 0 0 0 6px rgba(255, 107, 107, 0);
- }
- 100% {
- box-shadow: 0 0 0 0 rgba(255, 107, 107, 0);
- }
- }
- .dark-mode .current-version {
- background-color: rgba(24, 144, 255, 0.5);
- color: #fff;
- }
- .dark-mode .latest-version-text {
- background-color: rgba(82, 196, 26, 0.5);
- color: #fff;
- }
- .dark-mode .version-label {
- color: #aaa;
- }
- .dark-mode .update-btn {
- background-color: #ff7676;
- }
- .dark-mode .update-btn:hover {
- background-color: #ff5e5e;
- }
- .version-latest {
- display: flex;
- align-items: center;
- font-size: 15px;
- font-weight: 600;
- color: #fff;
- gap: 8px;
- }
- .version-check-icon {
- color: #52c41a;
- font-size: 16px;
- text-shadow: 0 0 5px rgba(82, 196, 26, 0.5);
- }
- .dark-mode .version-latest {
- color: #f0f0f0;
- }
- .dark-mode .version-check-icon {
- color: #73d13d;
- }
- .version-number {
- background-color: rgba(0, 0, 0, 0.2);
- border-radius: 4px;
- padding: 2px 6px;
- margin-left: 4px;
- font-weight: 200;
- color: #fff;
- font-size: 14px;
- }
- .dark-mode .version-number {
- background-color: rgba(255, 255, 255, 0.15);
- color: #fff;
- }
- /* 暗黑模式滚动条 */
- .dark-mode .settings-body {
- scrollbar-color: #555 #333;
- }
- .dark-mode .settings-body::-webkit-scrollbar-track {
- background: #2a2a2a;
- }
- .dark-mode .settings-body::-webkit-scrollbar-thumb {
- background-color: #555;
- border: 2px solid #2a2a2a;
- }
- .dark-mode .settings-body::-webkit-scrollbar-thumb:hover {
- background-color: #666;
- }
- .dark-mode .settings-section {
- border-bottom-color: #333;
- }
- .settings-section {
- margin-bottom: 25px;
- padding-bottom: 15px;
- border-bottom: 1px dashed #eee;
- }
- .settings-section:last-child {
- margin-bottom: 0;
- padding-bottom: 0;
- border-bottom: none;
- }
- .settings-section h4 {
- margin-top: 0;
- margin-bottom: 15px;
- font-size: 18px;
- font-weight: 600;
- color: #333;
- }
- .box-config {
- background-color: #f9f9f9;
- border-radius: 4px;
- padding: 15px;
- }
- .st-item {
- margin-bottom: 15px;
- }
- .box-inner {
- margin-top: 10px;
- background-color: #f0f0f0;
- padding: 10px;
- border-radius: 4px;
- }
- .row-line {
- margin-bottom: 8px;
- }
- .x-disabled {
- opacity: 0.6;
- pointer-events: none;
- }
- /* 设置打赏按钮样式 */
- .donate-link:hover {
- transform: translateY(-3px);
- box-shadow: 0 5px 15px rgba(255, 105, 97, 0.4);
- background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 99%, #fecfef 100%);
- }
- .donate-link:active {
- transform: translateY(0);
- }
- .donate-link .nav-icon {
- color: #e74c3c;
- font-size: 18px;
- animation: heartbeat 1.3s ease-in-out infinite;
- }
- .donate-link:hover .nav-icon {
- animation: heartbeat 0.6s ease-in-out infinite;
- }
- @keyframes heartbeat {
- 0% {
- transform: scale(1);
- }
- 14% {
- transform: scale(1.3);
- }
- 28% {
- transform: scale(1);
- }
- 42% {
- transform: scale(1.3);
- }
- 70% {
- transform: scale(1);
- }
- }
- /* 打赏模态框样式 */
- .donate-modal .settings-dialog {
- max-width: 500px;
- }
- .donate-content {
- text-align: center;
- padding: 10px;
- }
- .donate-desc {
- font-size: 16px;
- margin-bottom: 20px;
- color: #666;
- line-height: 1.6;
- }
- .donate-qrcode {
- display: flex;
- flex-direction: column;
- align-items: center;
- margin-bottom: 20px;
- }
- .donate-image {
- max-width: 250px;
- border-radius: 10px;
- box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
- margin-bottom: 15px;
- transition: transform 0.3s ease;
- }
- .donate-image:hover {
- transform: scale(1.05);
- }
- .donate-text {
- font-size: 18px;
- font-weight: bold;
- color: #e74c3c;
- margin-top: 10px;
- }
- /* 暗黑模式下的打赏样式 */
- .dark-mode .donate-link {
- background: linear-gradient(135deg, #ff6b6b 0%, #f39c12 100%);
- color: #fff;
- }
- .dark-mode .donate-link:hover {
- background: linear-gradient(135deg, #ff6b6b 0%, #e74c3c 100%);
- }
- .dark-mode .donate-link .nav-icon {
- color: #fff;
- }
- .dark-mode .donate-desc {
- color: #ccc;
- }
- .dark-mode .donate-text {
- color: #ff6b6b;
- }
- /* 媒体查询-移动设备 */
- @media (max-width: 600px) {
- .donate-link span {
- display: none;
- }
-
- .donate-image {
- max-width: 180px;
- }
- }
- /* 确认对话框样式 */
- .confirm-modal .settings-dialog {
- max-width: 450px;
- }
- .confirm-content {
- display: flex;
- align-items: center;
- padding: 20px 10px;
- }
- .confirm-icon {
- font-size: 36px;
- color: #f39c12;
- margin-right: 20px;
- background: rgba(243, 156, 18, 0.1);
- width: 60px;
- height: 60px;
- border-radius: 50%;
- display: flex;
- justify-content: center;
- align-items: center;
- flex-shrink: 0;
- }
- .confirm-message {
- font-size: 16px;
- line-height: 1.6;
- color: #555;
- margin: 0;
- }
- /* 确认对话框动画 */
- .confirm-modal .settings-dialog {
- animation: bounceIn 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
- }
- @keyframes bounceIn {
- 0% {
- transform: scale(0.8);
- opacity: 0;
- }
- 70% {
- transform: scale(1.05);
- opacity: 1;
- }
- 100% {
- transform: scale(1);
- }
- }
- /* 黑暗模式下的确认对话框 */
- .dark-mode .confirm-icon {
- color: #f39c12;
- background: rgba(243, 156, 18, 0.2);
- }
- .dark-mode .confirm-message {
- color: #ddd;
- }
- /* 暗黑模式下的导航栏按钮样式 */
- .dark-mode .navbar-actions .settings-link {
- background-color: rgba(255, 255, 255, 0.08);
- box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
- }
- .dark-mode .navbar-actions .settings-link:hover {
- background: linear-gradient(45deg, #3498db, #2980b9);
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
- }
- .dark-mode .navbar-actions .donate-link {
- background: linear-gradient(135deg, #ff6b6b 0%, #f39c12 100%);
- color: #fff;
- }
- .dark-mode .navbar-actions .donate-link:hover {
- background: linear-gradient(45deg, #e74c3c, #c0392b);
- color: #fff;
- }
- /* 暗黑模式下的波纹效果 */
- .dark-mode .navbar-actions .nav-item::after {
- background: rgba(255, 255, 255, 0.4);
- }
- .dark-mode .navbar-actions .donate-link .nav-icon,
- .dark-mode .navbar-actions .settings-link .nav-icon {
- color: #fff;
- }
|