.tab-bar[data-v-0a48ef74]{position:fixed;bottom:0;left:0;right:0;background:#fff!important;background-color:#fff!important;backdrop-filter:none;display:flex;box-shadow:0 -4px 12px rgba(0,0,0,.05);z-index:1000;padding:8px 0;height:60px}.tab-bar-item[data-v-0a48ef74]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px 0;color:var(--text-light);transition:all .2s ease;text-decoration:none;font-size:.75rem}.tab-bar-item.active[data-v-0a48ef74]{color:var(--primary);transform:translateY(-2px)}.tab-bar-item i[data-v-0a48ef74]{font-size:1.3rem;margin-bottom:4px}.tab-bar-item span[data-v-0a48ef74]{font-size:.75rem;font-weight:500}.tab-bar-item.active[data-v-0a48ef74]:after{content:"";position:absolute;bottom:5px;width:24px;height:3px;background:var(--primary);border-radius:2px}#app{min-height:100vh}.fade-enter-active,.fade-leave-active{transition:opacity .3s,transform .3s}.fade-enter,.fade-leave-to{opacity:0;transform:translateY(20px)}.page-content{padding-bottom:20px}.page-content.with-tabbar{padding-bottom:70px}.home-page[data-v-7a044952]{min-height:100vh;background:linear-gradient(135deg,#f5f7ff,#e6e9ff)}.header[data-v-7a044952]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header h1[data-v-7a044952]{font-size:1.2rem;font-weight:600}.header-actions[data-v-7a044952]{display:flex;gap:20px}.header-actions i[data-v-7a044952]{font-size:1.2rem;cursor:pointer}.banner-section[data-v-7a044952]{margin-bottom:20px;position:relative;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow)}.banner-carousel[data-v-7a044952]{position:relative;height:180px;overflow:hidden}.banner-item[data-v-7a044952]{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%;opacity:0;transition:opacity .5s ease;cursor:pointer}.banner-item.active[data-v-7a044952]{opacity:1}.banner-overlay[data-v-7a044952]{position:absolute;bottom:0;left:0;width:100%;height:60%;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent)}.banner-content[data-v-7a044952]{position:absolute;bottom:0;left:0;width:100%;padding:15px;color:#fff;z-index:2}.banner-tag[data-v-7a044952]{background:var(--accent);padding:3px 8px;border-radius:10px;font-size:.7rem;font-weight:600;margin-bottom:5px;display:inline-block}.banner-title[data-v-7a044952]{font-size:1.1rem;font-weight:600;margin-bottom:5px}.banner-info[data-v-7a044952]{font-size:.8rem;opacity:.9;display:flex;gap:10px}.banner-dots[data-v-7a044952]{display:flex;justify-content:center;gap:8px;padding:10px;background:#fff}.dot[data-v-7a044952]{width:8px;height:8px;border-radius:50%;background:#ddd;cursor:pointer;transition:all .3s ease}.dot.active[data-v-7a044952]{background:var(--primary);width:24px;border-radius:4px}.entry-grid[data-v-7a044952]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px}.entry-card[data-v-7a044952]{background:#fff;border-radius:var(--card-radius);padding:15px;text-align:center;box-shadow:var(--shadow);transition:all .3s ease;cursor:pointer}.entry-card[data-v-7a044952]:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.entry-card i[data-v-7a044952]{font-size:2rem;margin-bottom:10px;color:var(--primary)}.entry-card p[data-v-7a044952]{font-weight:600;color:var(--text-dark);font-size:.9rem}.progress-container[data-v-7a044952]{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}.progress-card[data-v-7a044952]{background:#fff;border-radius:var(--card-radius);padding:15px;box-shadow:var(--shadow)}.progress-title[data-v-7a044952]{font-weight:600;margin-bottom:10px;color:var(--primary);display:flex;align-items:center;gap:8px}.progress-bar[data-v-7a044952]{height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden;margin:8px 0}.progress-fill[data-v-7a044952]{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:4px}.progress-value[data-v-7a044952]{font-size:.85rem;color:var(--text-light);text-align:right}.message-list[data-v-7a044952]{background:#fff;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow)}.message-item[data-v-7a044952]{padding:12px 15px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .2s ease}.message-item[data-v-7a044952]:hover{background:#f9f9ff}.message-item[data-v-7a044952]:last-child{border-bottom:none}.message-icon[data-v-7a044952]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem;flex-shrink:0}.message-icon.info[data-v-7a044952]{background:linear-gradient(135deg,#6a5af9,#d66efd)}.message-icon.success[data-v-7a044952]{background:linear-gradient(135deg,#5affb8,#48e9bd)}.message-icon.warning[data-v-7a044952]{background:linear-gradient(135deg,#ff9a9e,#fad0c4)}.message-content[data-v-7a044952]{flex:1;min-width:0}.message-title[data-v-7a044952]{font-weight:600;font-size:.95rem;margin-bottom:3px}.message-desc[data-v-7a044952]{font-size:.8rem;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-time[data-v-7a044952]{font-size:.75rem;color:var(--text-light);white-space:nowrap}.modal-overlay[data-v-7a044952]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content[data-v-7a044952]{background:#fff;border-radius:var(--card-radius);width:90%;max-width:400px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-7a044952]{padding:15px 20px;background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-7a044952]{font-size:1.1rem;font-weight:600}.modal-header i[data-v-7a044952]{cursor:pointer;font-size:1.2rem}.modal-body[data-v-7a044952]{padding:10px;overflow-y:auto}.notification-item[data-v-7a044952]{display:flex;gap:12px;padding:12px;border-radius:10px;margin-bottom:8px;cursor:pointer;transition:background .2s ease}.notification-item[data-v-7a044952]:hover{background:#f9f9ff}.notification-icon[data-v-7a044952]{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;flex-shrink:0}.notification-content[data-v-7a044952]{flex:1}.notification-title[data-v-7a044952]{font-weight:600;font-size:.95rem;margin-bottom:4px}.notification-desc[data-v-7a044952]{font-size:.85rem;color:var(--text-light);margin-bottom:4px}.notification-time[data-v-7a044952]{font-size:.75rem;color:var(--text-light)}@media (max-width:380px){.entry-grid[data-v-7a044952],.progress-container[data-v-7a044952]{grid-template-columns:1fr}.banner-content[data-v-7a044952]{padding:12px}.banner-title[data-v-7a044952]{font-size:1rem}}.card[data-v-5ca14022]{background:#fff;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow);transition:all .3s ease;margin-bottom:15px}.card[data-v-5ca14022]:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.card-image[data-v-5ca14022]{width:100%;height:140px;background-size:cover;background-position:50%;position:relative}.card-badge[data-v-5ca14022]{position:absolute;top:10px;left:10px;background:var(--accent);color:#fff;padding:3px 8px;border-radius:12px;font-size:.7rem;font-weight:600}.card-content[data-v-5ca14022]{padding:15px}.card-header[data-v-5ca14022]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-title[data-v-5ca14022]{font-weight:600;font-size:1rem;color:var(--text-dark);flex:1;margin-right:10px}.card-status[data-v-5ca14022]{font-size:.75rem;padding:3px 8px;border-radius:10px;font-weight:600}.status-active[data-v-5ca14022]{background:rgba(72,233,189,.2);color:#48e9bd}.status-pending[data-v-5ca14022]{background:rgba(255,209,102,.2);color:#ffd166}.status-completed[data-v-5ca14022]{background:rgba(106,90,249,.2);color:var(--primary)}.card-info[data-v-5ca14022]{display:flex;gap:12px;font-size:.8rem;color:var(--text-light);margin-bottom:10px;flex-wrap:wrap}.card-info span[data-v-5ca14022]{display:flex;align-items:center;gap:4px}.card-description[data-v-5ca14022]{font-size:.85rem;color:var(--text-light);line-height:1.5;margin-bottom:10px}.card-progress[data-v-5ca14022]{display:flex;align-items:center;gap:10px;margin-top:10px}.progress-bar[data-v-5ca14022]{flex:1;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.progress-bar.small[data-v-5ca14022]{height:6px}.progress-fill[data-v-5ca14022]{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:4px;transition:width .5s ease}.progress-value[data-v-5ca14022]{font-size:.85rem;color:var(--text-light);font-weight:600;min-width:40px;text-align:right}.card-characters[data-v-5ca14022]{margin-top:12px;border-top:1px solid #f0f0f0;padding-top:10px}.character-item[data-v-5ca14022]{display:flex;align-items:center;gap:10px;padding:8px 0}.character-avatar[data-v-5ca14022]{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#ff9a9e,#fad0c4);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#fff;flex-shrink:0}.character-info[data-v-5ca14022]{flex:1;min-width:0}.character-name[data-v-5ca14022]{font-weight:600;font-size:.9rem;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.character-progress[data-v-5ca14022]{font-weight:600;color:var(--primary);font-size:.85rem;min-width:35px;text-align:right}.card.achievement[data-v-5ca14022]{text-align:center}.card.achievement .card-content[data-v-5ca14022]{display:flex;flex-direction:column;align-items:center}.card.achievement .card-title[data-v-5ca14022]{margin-top:10px}.card.achievement .achievement-icon[data-v-5ca14022]{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff;background:linear-gradient(135deg,var(--primary),var(--secondary));margin-bottom:8px}.card.achievement .achievement-level[data-v-5ca14022]{font-size:.8rem;color:var(--text-light);background:rgba(106,90,249,.1);padding:3px 8px;border-radius:10px;display:inline-block;margin-top:5px}.card.character-level[data-v-5ca14022]{text-align:center}.card.character-level .character-level-badge[data-v-5ca14022]{width:60px;height:60px;margin:10px auto;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;font-weight:700}.card.character-level .character-level-badge.bronze[data-v-5ca14022]{background:linear-gradient(135deg,#b08d57,#d6b487)}.card.character-level .character-level-badge.silver[data-v-5ca14022]{background:linear-gradient(135deg,silver,#e8e8e8)}.card.character-level .character-level-badge.gold[data-v-5ca14022]{background:linear-gradient(135deg,gold,#ffea8a)}.activity-page[data-v-03cece89]{min-height:100vh;background:#f8f9ff}.header[data-v-03cece89]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header h1[data-v-03cece89]{font-size:1.2rem;font-weight:600}.search-btn[data-v-03cece89]{width:40px;height:40px;border-radius:50%;background:hsla(0,0%,100%,.2);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-btn[data-v-03cece89]:hover{background:hsla(0,0%,100%,.3);transform:scale(1.05)}.activity-tabs[data-v-03cece89]{display:flex;background:#fff;border-radius:var(--card-radius);overflow:hidden;margin-bottom:15px;box-shadow:var(--shadow)}.tab-item[data-v-03cece89]{flex:1;text-align:center;padding:12px 0;font-size:.9rem;font-weight:600;color:var(--text-light);transition:all .3s ease;cursor:pointer}.tab-item.active[data-v-03cece89]{color:var(--primary);background:rgba(106,90,249,.1);position:relative}.tab-item.active[data-v-03cece89]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--primary)}.search-box[data-v-03cece89]{background:#fff;border-radius:var(--card-radius);padding:10px 15px;display:flex;align-items:center;gap:10px;margin-bottom:15px;box-shadow:var(--shadow)}.search-box input[data-v-03cece89]{flex:1;border:none;outline:none;font-size:.95rem;background:transparent}.search-box i[data-v-03cece89]{color:var(--text-light)}.clear-btn[data-v-03cece89]{background:none;border:none;color:var(--text-light);cursor:pointer;padding:5px;font-size:1rem}.empty-state[data-v-03cece89]{text-align:center;padding:40px 20px;color:var(--text-light)}.empty-state i[data-v-03cece89]{font-size:3rem;margin-bottom:15px;opacity:.3}.empty-state p[data-v-03cece89]{margin-bottom:15px;font-size:1rem}.modal-overlay[data-v-03cece89]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content[data-v-03cece89]{background:#fff;border-radius:var(--card-radius);width:90%;max-width:400px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-03cece89]{padding:15px 20px;background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-03cece89]{font-size:1.1rem;font-weight:600}.modal-header i[data-v-03cece89]{cursor:pointer;font-size:1.2rem}.modal-body[data-v-03cece89]{padding:15px;overflow-y:auto}.search-input-wrapper[data-v-03cece89]{display:flex;gap:10px;margin-bottom:15px}.search-input-wrapper input[data-v-03cece89]{flex:1;padding:12px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;outline:none;transition:border .3s ease}.search-input-wrapper input[data-v-03cece89]:focus{border-color:var(--primary)}.search-btn[data-v-03cece89]{padding:0 20px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:background .3s ease}.search-btn[data-v-03cece89]:hover{background:#5a4ae9}.search-results[data-v-03cece89]{display:flex;flex-direction:column;gap:10px}.search-result-item[data-v-03cece89]{display:flex;gap:12px;padding:10px;border-radius:10px;cursor:pointer;transition:background .2s ease;border:1px solid #f0f0f0}.search-result-item[data-v-03cece89]:hover{background:#f9f9ff;border-color:var(--primary)}.result-image[data-v-03cece89]{width:60px;height:60px;border-radius:8px;background-size:cover;background-position:50%;flex-shrink:0}.result-content[data-v-03cece89]{flex:1;min-width:0}.result-content h4[data-v-03cece89]{font-size:.95rem;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-content p[data-v-03cece89]{font-size:.8rem;color:var(--text-light);margin-bottom:2px;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:380px){.header h1[data-v-03cece89]{font-size:1.1rem}.tab-item[data-v-03cece89]{font-size:.8rem;padding:10px 0}.search-box[data-v-03cece89]{padding:8px 12px}.search-input-wrapper input[data-v-03cece89]{padding:10px}.search-btn[data-v-03cece89]{padding:0 15px}}.activity-detail-page[data-v-5b349382]{min-height:100vh;background:#f8f9ff}.header[data-v-5b349382]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:15px;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header i[data-v-5b349382]{font-size:1.2rem;cursor:pointer}.header h1[data-v-5b349382]{font-size:1.2rem;font-weight:600;flex:1}.activity-content[data-v-5b349382]{padding:20px;text-align:center;color:var(--text-light)}.create-page[data-v-fc45dd1c]{min-height:100vh;background:#f8f9ff}.header[data-v-fc45dd1c]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header h1[data-v-fc45dd1c]{font-size:1.2rem;font-weight:600}.form-card[data-v-fc45dd1c]{background:#fff;border-radius:var(--card-radius);padding:20px;box-shadow:var(--shadow)}.form-group[data-v-fc45dd1c]{margin-bottom:20px}.form-group label[data-v-fc45dd1c]{display:block;margin-bottom:8px;font-weight:600;font-size:.95rem;color:var(--text-dark)}.form-group label .required[data-v-fc45dd1c]{color:#e74c3c}.form-group input[data-v-fc45dd1c],.form-group select[data-v-fc45dd1c],.form-group textarea[data-v-fc45dd1c]{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:10px;font-size:.95rem;transition:all .3s ease;font-family:inherit}.form-group input[data-v-fc45dd1c]:focus,.form-group select[data-v-fc45dd1c]:focus,.form-group textarea[data-v-fc45dd1c]:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px rgba(106,90,249,.1)}.form-group textarea[data-v-fc45dd1c]{min-height:100px;resize:vertical}.image-upload[data-v-fc45dd1c]{border:2px dashed #e0e0e0;border-radius:12px;padding:20px;text-align:center;cursor:pointer;transition:all .3s ease;background:#fafafa}.image-upload[data-v-fc45dd1c]:hover{border-color:var(--primary);background:#f0f4ff}.upload-placeholder[data-v-fc45dd1c]{color:var(--text-light)}.upload-placeholder i[data-v-fc45dd1c]{font-size:2.5rem;margin-bottom:10px;color:var(--primary)}.upload-placeholder p[data-v-fc45dd1c]{font-weight:600;margin-bottom:5px}.upload-placeholder span[data-v-fc45dd1c]{font-size:.8rem}.image-preview[data-v-fc45dd1c]{width:100%;height:180px;background-size:cover;background-position:50%;border-radius:8px;position:relative;overflow:hidden}.image-overlay[data-v-fc45dd1c]{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);color:#fff;padding:10px;display:flex;justify-content:flex-end;gap:10px;opacity:0;transition:opacity .3s ease}.image-preview:hover .image-overlay[data-v-fc45dd1c]{opacity:1}.tags-input[data-v-fc45dd1c]{display:flex;flex-wrap:wrap;gap:8px;border:1px solid #e0e0e0;border-radius:10px;padding:8px;min-height:50px;align-items:center}.tags-input[data-v-fc45dd1c]:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(106,90,249,.1)}.tags-input input[data-v-fc45dd1c]{flex:1;min-width:120px;border:none;outline:none;padding:8px;font-size:.9rem}.tag[data-v-fc45dd1c]{background:rgba(106,90,249,.1);color:var(--primary);padding:4px 10px;border-radius:20px;font-size:.85rem;display:flex;align-items:center;gap:5px;font-weight:500}.tag i[data-v-fc45dd1c]{cursor:pointer;font-size:.7rem;opacity:.7}.tag i[data-v-fc45dd1c]:hover{opacity:1}.form-actions[data-v-fc45dd1c]{display:flex;gap:12px;margin-top:20px}.form-actions .btn[data-v-fc45dd1c]{flex:1}.btn-preview[data-v-fc45dd1c]{background:#fff;color:var(--primary);border:2px solid var(--primary)}.btn-preview[data-v-fc45dd1c]:hover{background:#f0f4ff}.modal-overlay[data-v-fc45dd1c]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content[data-v-fc45dd1c]{background:#fff;border-radius:var(--card-radius);width:90%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-fc45dd1c]{padding:15px 20px;background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-fc45dd1c]{font-size:1.1rem;font-weight:600}.modal-header i[data-v-fc45dd1c]{cursor:pointer;font-size:1.2rem}.modal-body[data-v-fc45dd1c]{padding:0;overflow-y:auto}.preview-body[data-v-fc45dd1c]{padding:20px}.modal-footer[data-v-fc45dd1c]{padding:15px 20px;border-top:1px solid #f0f0f0;background:#fafafa}.preview-card[data-v-fc45dd1c]{border:1px solid #e0e0e0;border-radius:12px;overflow:hidden}.preview-image[data-v-fc45dd1c]{width:100%;height:200px;background-size:cover;background-position:50%}.preview-content[data-v-fc45dd1c]{padding:20px}.preview-title[data-v-fc45dd1c]{font-size:1.3rem;font-weight:600;margin-bottom:15px;color:var(--text-dark)}.preview-info[data-v-fc45dd1c]{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px;font-size:.9rem;color:var(--text-light)}.preview-info div[data-v-fc45dd1c]{display:flex;align-items:center;gap:6px}.preview-description[data-v-fc45dd1c],.preview-notes[data-v-fc45dd1c],.preview-tags[data-v-fc45dd1c]{margin-top:15px;padding-top:15px;border-top:1px solid #f0f0f0}.preview-description h4[data-v-fc45dd1c],.preview-notes h4[data-v-fc45dd1c],.preview-tags h4[data-v-fc45dd1c]{font-size:1rem;margin-bottom:8px;color:var(--text-dark)}.preview-description p[data-v-fc45dd1c],.preview-notes p[data-v-fc45dd1c]{color:var(--text-light);line-height:1.6;font-size:.95rem}.tags-list[data-v-fc45dd1c]{display:flex;flex-wrap:wrap;gap:8px}.tags-list .tag[data-v-fc45dd1c]{background:#f0f0f0;color:var(--text-dark);padding:4px 10px;border-radius:15px;font-size:.85rem}@media (max-width:480px){.preview-info[data-v-fc45dd1c]{grid-template-columns:1fr}.form-actions[data-v-fc45dd1c]{flex-direction:column}.form-actions .btn[data-v-fc45dd1c]{width:100%}}@media (max-width:380px){.form-card[data-v-fc45dd1c]{padding:15px}.modal-content[data-v-fc45dd1c]{width:95%}.preview-content[data-v-fc45dd1c]{padding:15px}.preview-title[data-v-fc45dd1c]{font-size:1.1rem}}.achievement-page[data-v-6b3731de]{min-height:100vh;background:#f8f9ff}.header[data-v-6b3731de]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header h1[data-v-6b3731de]{font-size:1.2rem;font-weight:600}.achievement-grid[data-v-6b3731de],.character-grid[data-v-6b3731de]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px}.achievement-icon[data-v-6b3731de]{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff;background:linear-gradient(135deg,var(--primary),var(--secondary));margin-bottom:8px}.achievement-level[data-v-6b3731de]{font-size:.8rem;color:var(--text-light);background:rgba(106,90,249,.1);padding:3px 8px;border-radius:10px;display:inline-block;margin-top:5px}.achievement-progress[data-v-6b3731de]{margin-top:10px;width:100%}.achievement-progress .progress-value[data-v-6b3731de]{font-size:.8rem;margin-top:4px}.character-level-badge[data-v-6b3731de]{width:60px;height:60px;margin:10px auto;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;font-weight:700}.character-level-badge.bronze[data-v-6b3731de]{background:linear-gradient(135deg,#b08d57,#d6b487)}.character-level-badge.silver[data-v-6b3731de]{background:linear-gradient(135deg,silver,#e8e8e8)}.character-level-badge.gold[data-v-6b3731de]{background:linear-gradient(135deg,gold,#ffea8a)}.character-avatar[data-v-6b3731de]{font-size:2rem;margin-top:8px}.progress-overview[data-v-6b3731de]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px}.overview-card[data-v-6b3731de]{background:#fff;border-radius:12px;padding:15px;text-align:center;box-shadow:var(--shadow)}.overview-header[data-v-6b3731de]{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:10px;color:var(--primary)}.overview-header i[data-v-6b3731de]{font-size:1.2rem}.overview-header h3[data-v-6b3731de]{font-size:.9rem;font-weight:600;margin:0}.overview-value[data-v-6b3731de]{font-size:1.5rem;font-weight:700;color:var(--text-dark);margin-bottom:5px}.overview-sub[data-v-6b3731de]{font-size:.75rem;color:var(--text-light)}.modal-overlay[data-v-6b3731de]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content[data-v-6b3731de]{background:#fff;border-radius:var(--card-radius);width:90%;max-width:400px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-6b3731de]{padding:15px 20px;background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-6b3731de]{font-size:1.1rem;font-weight:600}.modal-header i[data-v-6b3731de]{cursor:pointer;font-size:1.2rem}.modal-body[data-v-6b3731de]{padding:20px;overflow-y:auto}.achievement-detail[data-v-6b3731de]{text-align:center}.achievement-detail-icon[data-v-6b3731de]{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;background:linear-gradient(135deg,var(--primary),var(--secondary));margin:0 auto 15px}.achievement-detail-title[data-v-6b3731de]{font-size:1.3rem;font-weight:600;margin-bottom:8px}.achievement-detail-level[data-v-6b3731de]{display:inline-block;background:rgba(106,90,249,.1);color:var(--primary);padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:15px}.achievement-detail-description[data-v-6b3731de]{color:var(--text-light);line-height:1.6;margin-bottom:20px}.achievement-detail-progress[data-v-6b3731de]{background:#f9f9ff;padding:15px;border-radius:12px;margin-bottom:20px}.achievement-detail-progress .progress-bar.large[data-v-6b3731de]{height:12px;margin-bottom:10px}.progress-detail[data-v-6b3731de]{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-light)}.achievement-rewards[data-v-6b3731de]{background:#fff9e6;border:1px solid #ffe08a;border-radius:10px;padding:15px;margin-bottom:20px;text-align:left}.achievement-rewards h4[data-v-6b3731de]{margin-bottom:10px;color:#e67e22}.rewards-list[data-v-6b3731de]{display:flex;flex-direction:column;gap:8px}.reward-item[data-v-6b3731de]{display:flex;align-items:center;gap:8px;color:#e67e22;font-weight:600}.unlocked-badge[data-v-6b3731de]{background:linear-gradient(135deg,#5affb8,#48e9bd);color:#fff;padding:12px;border-radius:10px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.character-detail[data-v-6b3731de]{text-align:center}.character-detail-badge[data-v-6b3731de]{width:70px;height:70px;margin:0 auto 15px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff;font-weight:700}.character-detail-badge.bronze[data-v-6b3731de]{background:linear-gradient(135deg,#b08d57,#d6b487)}.character-detail-badge.silver[data-v-6b3731de]{background:linear-gradient(135deg,silver,#e8e8e8)}.character-detail-badge.gold[data-v-6b3731de]{background:linear-gradient(135deg,gold,#ffea8a)}.character-detail-avatar[data-v-6b3731de]{font-size:3rem;margin-bottom:10px}.character-detail-title[data-v-6b3731de]{font-size:1.3rem;font-weight:600;margin-bottom:8px}.character-detail-description[data-v-6b3731de]{color:var(--text-light);margin-bottom:20px}.character-stats[data-v-6b3731de]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.stat-item[data-v-6b3731de]{background:#f9f9ff;padding:10px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:5px}.stat-item i[data-v-6b3731de]{color:var(--primary);font-size:1.2rem}.stat-item span[data-v-6b3731de]{font-size:.85rem;font-weight:600}.character-progress-info[data-v-6b3731de]{background:#f9f9ff;padding:15px;border-radius:12px}.character-progress-info .progress-title[data-v-6b3731de]{font-weight:600;margin-bottom:10px;text-align:left}.character-progress-info .progress-bar.large[data-v-6b3731de]{height:12px;margin-bottom:10px}@media (max-width:480px){.achievement-grid[data-v-6b3731de],.character-grid[data-v-6b3731de],.character-stats[data-v-6b3731de],.progress-overview[data-v-6b3731de]{grid-template-columns:1fr}}@media (max-width:380px){.modal-content[data-v-6b3731de]{width:95%}.modal-body[data-v-6b3731de]{padding:15px}.overview-card[data-v-6b3731de]{padding:12px}}.profile-page[data-v-023daa14]{min-height:100vh;background:#f8f9ff}.header[data-v-023daa14]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header h1[data-v-023daa14]{font-size:1.2rem;font-weight:600}.header-actions i[data-v-023daa14]{font-size:1.2rem;cursor:pointer}.profile-card[data-v-023daa14]{background:#fff;border-radius:var(--card-radius);padding:20px;box-shadow:var(--shadow);display:flex;gap:15px;align-items:center;margin-bottom:20px}.avatar[data-v-023daa14]{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.8rem;overflow:hidden;cursor:pointer;border:2px solid #fff;box-shadow:0 4px 10px rgba(0,0,0,.1);flex-shrink:0}.avatar img[data-v-023daa14]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.profile-info[data-v-023daa14]{flex:1;min-width:0}.profile-name[data-v-023daa14]{font-size:1.1rem;font-weight:600;color:var(--text-dark);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-id[data-v-023daa14]{font-size:.85rem;color:var(--text-light);margin-bottom:8px}.profile-stats[data-v-023daa14]{display:flex;gap:12px;font-size:.8rem;color:var(--text-light)}.profile-stats span[data-v-023daa14]{display:flex;align-items:center;gap:4px}.profile-level[data-v-023daa14]{text-align:right;min-width:80px}.level-bar[data-v-023daa14]{width:100%;height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden;margin-bottom:5px}.level-fill[data-v-023daa14]{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:3px;transition:width .5s ease}.level-text[data-v-023daa14]{font-size:.75rem;color:var(--text-light);white-space:nowrap}.stats-grid[data-v-023daa14]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.stat-card[data-v-023daa14]{background:#fff;border-radius:var(--card-radius);padding:15px;text-align:center;box-shadow:var(--shadow);cursor:pointer;transition:all .3s ease}.stat-card[data-v-023daa14]:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.stat-icon[data-v-023daa14]{font-size:1.5rem;color:var(--primary);margin-bottom:8px}.stat-value[data-v-023daa14]{font-size:1.3rem;font-weight:700;color:var(--text-dark);margin-bottom:4px}.stat-label[data-v-023daa14]{font-size:.8rem;color:var(--text-light)}.profile-menu[data-v-023daa14]{background:#fff;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:20px}.menu-item[data-v-023daa14]{display:flex;align-items:center;padding:15px;border-bottom:1px solid #f0f0f0;gap:15px;cursor:pointer;transition:background .2s ease}.menu-item[data-v-023daa14]:last-child{border-bottom:none}.menu-item[data-v-023daa14]:hover{background:#f9f9ff}.menu-icon[data-v-023daa14]{width:36px;height:36px;border-radius:10px;background:rgba(106,90,249,.1);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.1rem;flex-shrink:0}.menu-text[data-v-023daa14]{flex:1;font-weight:500;color:var(--text-dark)}.menu-count[data-v-023daa14]{background:var(--accent);color:#fff;border-radius:10px;padding:2px 8px;font-size:.7rem;font-weight:600;margin-right:10px}.menu-arrow[data-v-023daa14]{color:#ccc;font-size:.9rem}.logout-section[data-v-023daa14]{margin-top:20px}.btn-logout[data-v-023daa14]{background:#fff;color:#e74c3c;border:2px solid #e74c3c}.btn-logout[data-v-023daa14]:hover{background:#ffeaea}.modal-overlay[data-v-023daa14]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content[data-v-023daa14]{background:#fff;border-radius:var(--card-radius);width:90%;max-width:400px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-023daa14]{padding:15px 20px;background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-023daa14]{font-size:1.1rem;font-weight:600}.modal-header i[data-v-023daa14]{cursor:pointer;font-size:1.2rem}.modal-body[data-v-023daa14]{padding:20px;overflow-y:auto}.avatar-options[data-v-023daa14]{padding:15px}.avatar-grid[data-v-023daa14]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.avatar-option[data-v-023daa14]{border:2px solid #e0e0e0;border-radius:12px;padding:10px;text-align:center;cursor:pointer;transition:all .2s ease}.avatar-option[data-v-023daa14]:hover{border-color:var(--primary);transform:scale(1.05)}.avatar-option.selected[data-v-023daa14]{border-color:var(--primary);background:rgba(106,90,249,.1)}.avatar-option img[data-v-023daa14]{width:50px;height:50px;border-radius:50%;margin-bottom:5px}.avatar-name[data-v-023daa14]{font-size:.75rem;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar-upload[data-v-023daa14]{margin-top:15px}.version-info[data-v-023daa14]{padding:15px}.version-header[data-v-023daa14]{text-align:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #f0f0f0}.version-logo[data-v-023daa14]{font-size:1.3rem;font-weight:700;background:linear-gradient(90deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:5px}.version-number[data-v-023daa14]{font-size:.9rem;color:var(--text-light)}.version-details[data-v-023daa14]{background:#f9f9ff;border-radius:10px;padding:15px;margin-bottom:15px}.version-item[data-v-023daa14]{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:.9rem}.version-item[data-v-023daa14]:last-child{border-bottom:none}.version-item span[data-v-023daa14]:first-child{color:var(--text-light)}.version-changelog[data-v-023daa14]{margin-bottom:20px}.version-changelog h4[data-v-023daa14]{margin-bottom:10px;color:var(--text-dark)}.version-changelog ul[data-v-023daa14]{padding-left:20px;color:var(--text-light);line-height:1.6}@media (max-width:480px){.profile-card[data-v-023daa14]{flex-direction:column;text-align:center}.profile-level[data-v-023daa14]{width:100%;text-align:center}.stats-grid[data-v-023daa14]{grid-template-columns:1fr}.avatar-grid[data-v-023daa14]{grid-template-columns:repeat(2,1fr)}}@media (max-width:380px){.modal-content[data-v-023daa14]{width:95%}.profile-card[data-v-023daa14]{padding:15px}.avatar[data-v-023daa14]{width:60px;height:60px;font-size:1.5rem}.profile-name[data-v-023daa14]{font-size:1rem}}.settings-page[data-v-79b6b8d2]{min-height:100vh;background:#f8f9ff}.header[data-v-79b6b8d2]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:15px;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header i[data-v-79b6b8d2]{font-size:1.2rem;cursor:pointer}.header h1[data-v-79b6b8d2]{font-size:1.2rem;font-weight:600;flex:1}.settings-menu[data-v-79b6b8d2]{background:#fff;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow);margin-top:15px}.menu-item[data-v-79b6b8d2]{display:flex;align-items:center;padding:15px;border-bottom:1px solid #f0f0f0;gap:15px;cursor:pointer;transition:background .2s ease}.menu-item[data-v-79b6b8d2]:last-child{border-bottom:none}.menu-item[data-v-79b6b8d2]:hover{background:#f9f9ff}.menu-icon[data-v-79b6b8d2]{width:36px;height:36px;border-radius:10px;background:rgba(106,90,249,.1);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.1rem;flex-shrink:0}.menu-text[data-v-79b6b8d2]{flex:1;font-weight:500;color:var(--text-dark)}.menu-arrow[data-v-79b6b8d2]{color:#ccc;font-size:.9rem}.login-page[data-v-d0e57618]{min-height:100vh;background:linear-gradient(135deg,#f5f7ff,#e6e9ff);display:flex;flex-direction:column;justify-content:center;padding:20px}.login-header[data-v-d0e57618]{text-align:center;margin-bottom:40px}.login-header h1[data-v-d0e57618]{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:8px}.login-header p[data-v-d0e57618]{color:var(--text-light);font-size:1rem}.login-form[data-v-d0e57618]{background:#fff;border-radius:var(--card-radius);padding:30px;box-shadow:var(--shadow);max-width:400px;width:100%;margin:0 auto}.form-group[data-v-d0e57618]{margin-bottom:20px}.input-wrapper[data-v-d0e57618]{display:flex;align-items:center;border:1px solid #e0e0e0;border-radius:12px;padding:12px 15px;background:#fff;transition:all .3s ease}.input-wrapper[data-v-d0e57618]:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(106,90,249,.1)}.input-wrapper i[data-v-d0e57618]{color:var(--text-light);margin-right:12px;font-size:1.1rem}.input-wrapper input[data-v-d0e57618]{flex:1;border:none;outline:none;font-size:1rem;background:transparent}.remember-forgot[data-v-d0e57618]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:.9rem}.checkbox-label[data-v-d0e57618]{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-light)}.checkbox-label input[data-v-d0e57618]{width:16px;height:16px;accent-color:var(--primary)}.forgot-password[data-v-d0e57618]{color:var(--primary);cursor:pointer;font-weight:500}.btn[data-v-d0e57618]{width:100%;padding:14px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary[data-v-d0e57618]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 4px 15px rgba(106,90,249,.3);display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary[data-v-d0e57618]:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(106,90,249,.4)}.btn-primary[data-v-d0e57618]:active{transform:translateY(0)}.btn-primary[data-v-d0e57618]:disabled{opacity:.7;cursor:not-allowed;transform:none}.register-link[data-v-d0e57618]{text-align:center;margin-top:20px;color:var(--text-light);font-size:.9rem}.register-link span[data-v-d0e57618]{color:var(--primary);font-weight:600;cursor:pointer}@media (max-width:480px){.login-header h1[data-v-d0e57618]{font-size:1.8rem}.login-form[data-v-d0e57618]{padding:25px 20px}}@media (max-width:380px){.login-page[data-v-d0e57618]{padding:15px}.login-form[data-v-d0e57618]{padding:20px 15px}.login-header h1[data-v-d0e57618]{font-size:1.6rem}}.register-page[data-v-41129add]{min-height:100vh;background:#f8f9ff}.header[data-v-41129add]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:15px;box-shadow:0 4px 12px rgba(106,90,249,.2)}.header i[data-v-41129add]{font-size:1.2rem;cursor:pointer}.header h1[data-v-41129add]{font-size:1.2rem;font-weight:600;flex:1}.register-form[data-v-41129add]{background:#fff;border-radius:var(--card-radius);padding:20px;box-shadow:var(--shadow);margin-top:15px}.form-group[data-v-41129add]{margin-bottom:15px}.form-group label[data-v-41129add]{display:block;margin-bottom:6px;font-weight:600;font-size:.9rem;color:var(--text-dark)}.form-group input[data-v-41129add]{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:10px;font-size:.95rem;transition:border .3s ease}.form-group input[data-v-41129add]:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px rgba(106,90,249,.1)}.btn[data-v-41129add]{width:100%;padding:14px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary[data-v-41129add]{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 4px 15px rgba(106,90,249,.3)}.login-link[data-v-41129add]{text-align:center;margin-top:20px;color:var(--text-light);font-size:.9rem}.login-link span[data-v-41129add]{color:var(--primary);font-weight:600;cursor:pointer}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--primary:#6a5af9;--secondary:#d66efd;--accent:#ff7eb9;--bg-light:#f8f9ff;--bg-dark:#2d2b55;--text-dark:#333;--text-light:#777;--text-white:#fff;--card-radius:16px;--shadow:0 8px 24px hsla(210,8%,62%,.2);--shadow-hover:0 12px 30px rgba(106,90,249,.15)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:linear-gradient(135deg,#f5f7ff,#e6e9ff);color:var(--text-dark);padding-bottom:70px;-webkit-font-smoothing:antialiased}.container,body{overflow-x:hidden}.container{padding:15px;max-width:100%}.section-title{font-size:1.1rem;margin:20px 0 10px;color:var(--text-dark);font-weight:600;display:flex;align-items:center;justify-content:space-between}.section-title span{font-size:.8rem;color:var(--text-light);font-weight:400}.card{background:var(--white);border-radius:var(--card-radius);box-shadow:var(--shadow);transition:all .3s ease}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.btn{width:100%;padding:14px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background:linear-gradient(90deg,var(--primary),var(--secondary));color:var(--text-white);box-shadow:0 4px 15px rgba(106,90,249,.3)}.btn-primary:active{transform:scale(.98);box-shadow:0 2px 8px rgba(106,90,249,.3)}.page{animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.decoration{position:absolute;pointer-events:none;opacity:.1}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:3px}