.header-glass[data-v-098c2fc9]{position:fixed;top:0;left:0;right:0;width:100%;height:var(--header-height, 72px);z-index:1000;background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--nav-border);transition:background var(--dur-base, .3s) ease,border-color var(--dur-base, .3s) ease,transform .2s ease;box-sizing:border-box}@media(max-width:768px){.header-glass[data-v-098c2fc9]{height:var(--header-height-mobile, 60px);min-height:var(--header-height-mobile, 60px);max-height:var(--header-height-mobile, 60px)}}.container[data-v-098c2fc9]{max-width:1400px;width:100%;margin:0 auto;height:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:0 clamp(12px,4vw,40px);box-sizing:border-box;position:relative;z-index:1}.logo-link[data-v-098c2fc9]{text-decoration:none;color:inherit}.logo-img[data-v-098c2fc9]{width:32px;height:32px;border-radius:50%;object-fit:cover}.logo-icon[data-v-098c2fc9]{color:var(--text-accent)}.logo-text[data-v-098c2fc9]{font-size:1.3rem}.desktop-nav[data-v-098c2fc9]{display:none;gap:24px}@media(min-width:768px){.desktop-nav[data-v-098c2fc9]{display:flex;justify-self:center}}.nav-item[data-v-098c2fc9]{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:color .2s ease}.nav-item[data-v-098c2fc9]:hover,.nav-item.router-link-active[data-v-098c2fc9]{color:var(--text-accent)}.right-actions[data-v-098c2fc9]{display:flex;align-items:center;justify-self:end;margin-left:auto}.theme-btn[data-v-098c2fc9],.mobile-menu-btn[data-v-098c2fc9]{background:none;border:none;cursor:pointer;font-size:1.2rem;color:var(--text-primary);padding:4px;border-radius:4px;transition:background .2s ease}.theme-btn[data-v-098c2fc9]:hover,.mobile-menu-btn[data-v-098c2fc9]:hover{background:#0000000d}.mobile-only[data-v-098c2fc9]{display:none}@media(max-width:768px){.mobile-only[data-v-098c2fc9]{display:block}.container[data-v-098c2fc9]{grid-template-columns:auto auto 1fr;gap:8px;padding:0 16px 0 12px;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.logo-area[data-v-098c2fc9]{display:flex;align-items:center;height:55px}.logo-link[data-v-098c2fc9]{display:flex;align-items:center}.logo-text[data-v-098c2fc9]{line-height:1;transform:none}.right-actions[data-v-098c2fc9]{margin-left:auto;gap:12px;padding-right:4px}.theme-btn[data-v-098c2fc9]{font-size:1rem;padding:4px;min-width:32px;display:flex;align-items:center;justify-content:center}.theme-btn[data-v-098c2fc9],.mobile-menu-btn[data-v-098c2fc9]{width:40px}.user-avatar[data-v-098c2fc9]{width:50px!important;height:50px!important}.login-btn[data-v-098c2fc9]{font-size:.9rem;padding:6px 12px;white-space:nowrap}.user-avatar-container[data-v-098c2fc9]{min-width:50px}}.user-menu-wrapper[data-v-098c2fc9]{position:relative}.user-avatar-container[data-v-098c2fc9]{cursor:pointer;display:flex;align-items:center;justify-content:center;width:56px}.user-dropdown[data-v-098c2fc9]{position:absolute;top:100%;right:0;margin-top:10px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:120px;overflow:hidden;z-index:1001}html.dark .user-dropdown[data-v-098c2fc9]{background:#0f172af2;border-color:#ffffff1a}.dropdown-item[data-v-098c2fc9]{padding:10px 16px;cursor:pointer;transition:background .2s;color:var(--text-primary);font-size:.9rem}.dropdown-item[data-v-098c2fc9]:hover{background:#0000000d}.dropdown-item.danger[data-v-098c2fc9]{color:var(--danger);border-top:1px solid var(--border-color)}.dropdown-item.danger[data-v-098c2fc9]:hover{background:#ef444414}.user-avatar[data-v-098c2fc9]{width:50px;height:50px;border-radius:50%;border:2px solid transparent;object-fit:cover;transition:transform .2s ease}.user-avatar[data-v-098c2fc9]:hover{transform:scale(1.1)}.login-btn[data-v-098c2fc9]{text-decoration:none;color:var(--text-primary);font-weight:600;padding:6px 12px;min-width:88px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;background:#0000000d;transition:background .2s}.login-btn[data-v-098c2fc9]:hover{background:#0000001a}.mobile-menu[data-v-098c2fc9]{position:absolute;top:100%;left:0;width:100%;background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid var(--nav-border);opacity:0;transform:translateY(-8px);visibility:hidden;pointer-events:none;transition:transform var(--dur-base) var(--ease-standard),opacity var(--dur-base) var(--ease-standard),visibility var(--dur-base);z-index:var(--z-drawer)}@media(min-width:769px){.mobile-menu[data-v-098c2fc9]{display:none}}.mobile-menu.is-open[data-v-098c2fc9]{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto}.mobile-nav-item[data-v-098c2fc9]{padding:12px 20px;text-decoration:none;color:var(--text-primary);border-bottom:1px solid rgba(0,0,0,.05)}.mobile-nav-item[data-v-098c2fc9]:last-child{border-bottom:none}.mobile-nav-item[data-v-098c2fc9]:hover{background:#00000005;color:var(--text-accent)}.toast-stack[data-v-70aa14c8]{position:fixed;top:calc(var(--header-height, 64px) + 12px);left:50%;transform:translate(-50%);z-index:3000;display:flex;flex-direction:column;align-items:center;gap:10px;width:min(92vw,460px);pointer-events:none}.toast-item[data-v-70aa14c8]{pointer-events:auto;display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:12px 14px;border-radius:12px;font-size:.9rem;font-weight:600;color:#fff;background:#171a26eb;border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 30px #00000059;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.toast-icon[data-v-70aa14c8]{font-size:1.25rem;flex-shrink:0}.toast-item.success .toast-icon[data-v-70aa14c8]{color:#4ade80}.toast-item.error .toast-icon[data-v-70aa14c8]{color:#f87171}.toast-item.info .toast-icon[data-v-70aa14c8]{color:#93c5fd}.toast-msg[data-v-70aa14c8]{flex:1;min-width:0;word-break:break-word}.toast-close[data-v-70aa14c8]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:8px;background:transparent;color:#ffffffbf;cursor:pointer;font-size:1rem}.toast-close[data-v-70aa14c8]:hover{background:#ffffff1f;color:#fff}.toast-enter-active[data-v-70aa14c8],.toast-leave-active[data-v-70aa14c8]{transition:opacity .24s ease,transform .24s ease}.toast-enter-from[data-v-70aa14c8],.toast-leave-to[data-v-70aa14c8]{opacity:0;transform:translateY(-10px) scale(.98)}@media(max-width:640px){.toast-stack[data-v-70aa14c8]{top:calc(var(--header-height, 64px) + 6px)}}.global-bg{position:fixed;top:0;left:0;width:200%;height:100%;z-index:-2;background:var(--hero-bg);background-size:100% 100%;animation:bg-pan 30s ease-in-out infinite alternate;will-change:transform;pointer-events:none;transform:translateZ(0)}@keyframes bg-pan{0%{transform:translateZ(0)}to{transform:translate3d(-50vw,0,0)}}@media(max-width:768px){.global-bg{width:100%;transform:none;animation:none}}html,body{margin:0;scrollbar-gutter:stable;width:100%;overflow-x:hidden}.page-container,.section-container,.content-container,.container{contain:layout style;transform:translateZ(0);will-change:auto}@keyframes fogMove{0%{background-position:0% 0%;opacity:.4}50%{background-position:100% 20%;opacity:.6}to{background-position:0% 0%;opacity:.4}}.site-footer{position:relative;margin-top:0;flex-shrink:0}.main-content{position:relative;overflow:visible;flex:1 1 auto;padding-top:calc(var(--header-height) + var(--space-md))}.main-content.admin-mode{padding-top:0}.app-root{display:flex;flex-direction:column;min-height:100vh}.fade-enter-active,.fade-leave-active{transition:opacity .28s ease,transform .28s ease;position:relative}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(-6px) scale(.995)}.footer-rain-effect{position:absolute;top:-24px;left:0;width:100%;height:48px;overflow-x:clip;overflow-y:visible;overflow:visible;pointer-events:none;z-index:20}.ripple{position:absolute;bottom:-2px;width:28px;height:4px;border-radius:50%;border:1px solid rgba(0,0,0,.28);animation:ripple-anim 1.2s ease-out infinite;opacity:0;transform:scale(0);will-change:transform,opacity;background:transparent}html.dark .ripple{border-color:#ffffff4d}@keyframes ripple-anim{0%{transform:scale(0) translateY(0);opacity:.75;border-width:1px}50%{opacity:.45}to{transform:scale(3) translateY(2px);opacity:0;border-width:0px}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.site-footer{--footer-height: 160px;background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--nav-border);padding:40px 20px;margin-top:auto;text-align:center;line-height:1.5;width:100%;margin-left:0;box-sizing:border-box}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:20px;align-items:center;line-height:1.2}@media(max-width:768px){.footer-content{margin-top:32px}}.beian-info{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;line-height:1.2;color:var(--text-secondary)}.beian-info a{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:1em;transition:color .2s}.beian-info a:hover{color:var(--text-accent)}.beian-sep{color:#999}.footer-links{display:flex;gap:20px}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--text-accent)}.social-icons{display:flex;gap:15px;font-size:1.5rem}.copyright{color:var(--text-secondary);font-size:.9rem;opacity:.7}.skeleton-grid[data-v-488fbbbd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-6);padding:var(--space-5) 0}.skeleton-item[data-v-488fbbbd]{animation:anim-rise-in var(--dur-base) var(--ease-out) backwards;animation-delay:calc(var(--i) * 50ms)}.sk-card[data-v-488fbbbd]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.sk-cover[data-v-488fbbbd]{position:relative;width:100%;padding-top:56.25%;background:var(--color-surface-sunken, rgba(128, 128, 128, .12))}.sk-body[data-v-488fbbbd]{padding:var(--space-4)}.sk-line[data-v-488fbbbd]{height:14px;border-radius:var(--radius-xs);background:var(--color-surface-sunken, rgba(128, 128, 128, .14));margin-bottom:var(--space-2)}.sk-line--title[data-v-488fbbbd]{height:18px;width:70%}.sk-line--short[data-v-488fbbbd]{width:45%}.sk-row[data-v-488fbbbd]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md)}.sk-thumb[data-v-488fbbbd]{flex-shrink:0;width:64px;height:64px;border-radius:var(--radius-sm);background:var(--color-surface-sunken, rgba(128, 128, 128, .14))}.sk-lines[data-v-488fbbbd]{flex:1}@media(max-width:767px){.skeleton-grid[data-v-488fbbbd]{grid-template-columns:1fr;gap:var(--space-4)}}.state-block[data-v-fdaa7bc4]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-4);text-align:center;width:100%;color:var(--text-secondary);animation:anim-rise-in var(--dur-base) var(--ease-out) backwards}.state-block__icon[data-v-fdaa7bc4]{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-full);background:var(--color-surface-sunken, rgba(128, 128, 128, .1));color:var(--text-accent)}.state-block__icon[data-v-fdaa7bc4] svg,.state-block__icon .iconify[data-v-fdaa7bc4]{width:34px;height:34px;font-size:34px}.state-block--error .state-block__icon[data-v-fdaa7bc4]{color:var(--danger)}.state-block__spinner[data-v-fdaa7bc4]{width:34px;height:34px;border:3px solid var(--color-surface-sunken, rgba(128, 128, 128, .2));border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.state-block__title[data-v-fdaa7bc4]{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--text-primary)}.state-block__desc[data-v-fdaa7bc4]{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);max-width:360px;line-height:var(--lh-snug)}.state-block__action[data-v-fdaa7bc4]{margin-top:var(--space-2);display:flex;gap:var(--space-2)}.state-block__retry[data-v-fdaa7bc4]{padding:10px 24px}@media(prefers-reduced-motion:reduce){.state-block[data-v-fdaa7bc4]{animation:none}}.global-bg[data-v-48d35ac9]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;background:var(--hero-bg);background-size:400% 400%;animation:bg-drift-48d35ac9 120s linear infinite}@keyframes bg-drift-48d35ac9{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.fog-overlay[data-v-48d35ac9]{position:fixed;top:0;left:0;width:100%;height:100%;background:#fffc;z-index:5;pointer-events:none;opacity:0;transition:opacity 1.5s ease-out}html.dark .fog-overlay[data-v-48d35ac9]{background:#000c}.fog-overlay.active[data-v-48d35ac9]{opacity:1}.content-wrapper[data-v-48d35ac9]{position:relative;z-index:10}.hero-section[data-v-48d35ac9]{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative}.hero-layout[data-v-48d35ac9]{display:grid;grid-template-columns:1fr;gap:18px;padding:0;max-width:900px;align-items:center}@media(min-width:768px){.hero-layout[data-v-48d35ac9]{display:flex;align-items:center;gap:60px;padding:0;max-width:1200px}}.hero-visual[data-v-48d35ac9]{flex-shrink:0}.hero-logo[data-v-48d35ac9]{width:clamp(96px,28vw,200px);height:auto;border-radius:18px;box-shadow:0 14px 40px #0000002e}.hero-info[data-v-48d35ac9]{text-align:left}.main-title[data-v-48d35ac9]{font-size:clamp(2.2rem,8vw,5rem);font-weight:800;margin:0 0 8px;background:var(--title-gradient);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px;line-height:1.08;min-height:5.4rem}.sub-title[data-v-48d35ac9]{font-size:1.8rem;color:var(--text-secondary);margin:0 0 30px;font-weight:300}.download-buttons[data-v-48d35ac9]{display:flex;gap:20px}.btn[data-v-48d35ac9]{padding:12px 32px;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .3s ease,background .3s ease,box-shadow .3s ease;border:none;text-decoration:none;display:inline-block}.primary-btn[data-v-48d35ac9]{background:var(--btn-bg);color:var(--btn-text);box-shadow:0 4px 15px #0003;transform:translate(-10px);border-radius:9999px}.primary-btn[data-v-48d35ac9]:hover{transform:translate(-10px,-2px);box-shadow:0 8px 25px #0000004d}@media(max-width:480px){.primary-btn[data-v-48d35ac9]{height:40px;min-height:40px;padding:6px 10px;border-radius:9999px;transform:translate(-8px);font-size:1.1rem;display:inline-flex;align-items:center;justify-content:center}.download-buttons[data-v-48d35ac9]{gap:12px}}.scroll-hint[data-v-48d35ac9]{position:absolute;bottom:40px;color:var(--text-secondary);animation:bounce-48d35ac9 2s infinite;cursor:pointer;transition:opacity .5s ease,transform .5s ease}.scroll-hint.hidden[data-v-48d35ac9]{opacity:0;pointer-events:none;transform:translateY(20px)}@keyframes bounce-48d35ac9{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.section-container[data-v-48d35ac9]{max-width:1200px;width:100%;margin:0 auto;padding:28px 16px}@media(min-width:768px){.section-container[data-v-48d35ac9]{padding:80px 20px;max-width:1600px}}.section-header[data-v-48d35ac9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.section-header h2[data-v-48d35ac9]{font-size:2rem;color:var(--text-primary)}.view-all[data-v-48d35ac9]{color:var(--text-accent);text-decoration:none;font-weight:600;margin-top:20px}.news-grid[data-v-48d35ac9]{display:grid;grid-template-columns:1fr;gap:30px}@media(min-width:768px){.news-grid[data-v-48d35ac9]{grid-template-columns:repeat(3,1fr)}}.news-grid[data-v-48d35ac9] .skeleton-grid{grid-template-columns:inherit!important;gap:30px!important;padding:0!important}.news-grid[data-v-48d35ac9] .skeleton-image{height:180px!important}@media(min-width:1400px){.news-grid[data-v-48d35ac9]{grid-template-columns:repeat(4,1fr)}}.news-card[data-v-48d35ac9]{display:flex;flex-direction:column;text-decoration:none;color:var(--text-primary);overflow:hidden;transition:transform .3s ease}.news-card[data-v-48d35ac9]:hover{transform:translateY(-5px)}.news-image[data-v-48d35ac9]{aspect-ratio:16 / 9;width:100%;overflow:hidden;border-radius:8px}.news-image.lazy[data-v-48d35ac9]{background:linear-gradient(180deg,#ffffff05,#ffffff03)}.news-image img[data-v-48d35ac9]{width:100%;height:100%;object-fit:cover;transition:transform .25s ease,opacity .2s ease;opacity:0;display:block}.news-image img.loaded[data-v-48d35ac9]{opacity:1}@media(min-width:768px){.news-image[data-v-48d35ac9]{aspect-ratio:16 / 9}}.news-card:hover .news-image img[data-v-48d35ac9]{transform:scale(1.05)}.news-info[data-v-48d35ac9]{padding:20px}.news-meta[data-v-48d35ac9]{display:flex;gap:10px;font-size:.85rem;color:var(--text-secondary);margin-bottom:10px}.tag[data-v-48d35ac9]{color:var(--text-accent);font-weight:600}.news-card h3[data-v-48d35ac9]{margin:0;font-size:1.2rem;line-height:1.4}.live-records[data-v-48d35ac9]{position:relative;overflow:hidden;padding:60px 0;--glass-bg: rgba(255, 255, 255, .25)}html.dark .live-records[data-v-48d35ac9]{--glass-bg: rgba(15, 23, 42, .4)}.marquee-container[data-v-48d35ac9]{overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent)}.marquee-content[data-v-48d35ac9]{display:inline-flex;gap:20px;animation:marquee-48d35ac9 30s linear infinite}@keyframes marquee-48d35ac9{0%{transform:translate(0)}to{transform:translate(-50%)}}.record-card[data-v-48d35ac9]{display:flex;align-items:center;gap:15px;padding:15px 25px;min-width:300px}.record-avatar[data-v-48d35ac9]{width:40px;height:40px;border-radius:50%;background:#ccc}.record-info[data-v-48d35ac9]{flex:1}.player-name[data-v-48d35ac9]{font-weight:700;font-size:.9rem}.song-name[data-v-48d35ac9]{font-size:.8rem;opacity:.8}.record-stats[data-v-48d35ac9]{text-align:right;font-size:.85rem}.level[data-v-48d35ac9]{display:block;color:#fbbf24}.score[data-v-48d35ac9]{display:block;font-family:monospace}.rank[data-v-48d35ac9]{font-weight:900;color:var(--text-accent)}.text-center[data-v-48d35ac9]{text-align:center}.mb-4[data-v-48d35ac9]{margin-bottom:1.5rem}.relative[data-v-48d35ac9]{position:relative}.page-container[data-v-a8cc3036]{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-16);max-width:1400px;width:90%;margin:0 auto}.header-section[data-v-a8cc3036]{text-align:center;margin-bottom:var(--space-10)}.page-title[data-v-a8cc3036]{font-size:var(--fs-2xl);margin:0 0 var(--space-2)}.subtitle[data-v-a8cc3036]{margin:0;color:var(--text-secondary)}.announcement-list[data-v-a8cc3036]{display:grid;grid-template-columns:1fr;gap:var(--space-5)}@media(min-width:1200px){.announcement-list[data-v-a8cc3036]{grid-template-columns:repeat(2,1fr)}}.announcement-card[data-v-a8cc3036]{display:flex;flex-direction:column;text-decoration:none;color:var(--text-primary);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;height:100%;border:1px solid var(--glass-border)}@media(min-width:640px){.announcement-card[data-v-a8cc3036]{flex-direction:row;height:180px}}.announcement-card[data-v-a8cc3036]:hover{transform:translateY(-4px);box-shadow:var(--shadow-strong)}.card-image[data-v-a8cc3036]{width:100%;height:200px;flex-shrink:0;position:relative}@media(min-width:640px){.card-image[data-v-a8cc3036]{width:320px;height:100%}}.card-image img[data-v-a8cc3036]{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease-smooth);will-change:transform}.card-image img[data-v-a8cc3036]:hover{transform:scale(1.02);box-shadow:0 8px 20px #00000014}.card-content[data-v-a8cc3036]{padding:20px;display:flex;flex-direction:column;justify-content:center}.card-meta[data-v-a8cc3036]{display:flex;gap:10px;font-size:.85rem;color:var(--text-secondary);margin-bottom:8px}.tag[data-v-a8cc3036]{color:#fff;font-weight:600;background:var(--text-accent);padding:4px 8px;border-radius:6px}.tag-overlay[data-v-a8cc3036]{position:absolute;top:8px;left:8px;z-index:5}.dark{color:var(--text-primary)}.card-title[data-v-a8cc3036]{margin:0 0 10px;font-size:1.4rem;line-height:1.3}.card-desc[data-v-a8cc3036]{color:var(--text-secondary);font-size:.95rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;line-height:1.5}.admin-note[data-v-a8cc3036]{font-size:var(--fs-sm);color:var(--text-secondary);margin-top:var(--space-2)}.edit-btn[data-v-a8cc3036]{font-size:var(--fs-sm);padding:var(--space-1) var(--space-3);min-height:36px}.page-container[data-v-4a6ed5c1]{min-height:100vh;padding-top:calc(var(--header-height) + var(--space-8))}.content-wrapper[data-v-4a6ed5c1]{max-width:900px;margin:0 auto;padding:0 var(--space-5) var(--space-16)}.article-card[data-v-4a6ed5c1]{padding:var(--space-10);border-radius:var(--card-radius);border:1px solid var(--glass-border)}.cover-image-wrapper[data-v-4a6ed5c1]{margin:calc(-1 * var(--space-10)) calc(-1 * var(--space-10)) var(--space-8) calc(-1 * var(--space-10));border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;max-height:400px}.cover-image[data-v-4a6ed5c1]{width:100%;height:100%;object-fit:cover}.title[data-v-4a6ed5c1]{font-size:var(--fs-2xl);margin:0 0 var(--space-4);color:var(--text-primary)}.meta-info[data-v-4a6ed5c1]{display:flex;gap:15px;color:var(--text-secondary);font-size:.9rem;align-items:center}.tag[data-v-4a6ed5c1]{background:var(--text-accent);color:#fff;padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600}.divider[data-v-4a6ed5c1]{height:1px;background:var(--glass-border);margin:30px 0}.article-body[data-v-4a6ed5c1]{line-height:1.8;font-size:1.1rem;color:var(--text-primary)}[data-v-4a6ed5c1] .article-body h1,[data-v-4a6ed5c1] .article-body h2,[data-v-4a6ed5c1] .article-body h3{margin-top:1.5em;margin-bottom:.5em;color:var(--text-primary)}[data-v-4a6ed5c1] .article-body p{margin-bottom:1.2em}[data-v-4a6ed5c1] .article-body img{max-width:100%;border-radius:8px;margin:10px 0}[data-v-4a6ed5c1] .article-body .article-img-wrap{position:relative;display:block;margin:10px 0;border-radius:8px;overflow:hidden}[data-v-4a6ed5c1] .article-body .article-img-wrap:not(.loaded){min-height:90px;background:var(--color-surface-sunken, rgba(0, 0, 0, .04))}[data-v-4a6ed5c1] .article-body .article-img-spinner{display:none;position:absolute;top:50%;left:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border:3px solid rgba(128,128,128,.25);border-top-color:var(--text-accent, #6c8cbf);border-radius:50%;animation:article-img-spin-4a6ed5c1 .8s linear infinite}[data-v-4a6ed5c1] .article-body .article-img-wrap.in-viewport:not(.loaded) .article-img-spinner{display:block}[data-v-4a6ed5c1] .article-body .article-img-wrap.loaded .article-img-spinner{display:none}[data-v-4a6ed5c1] .article-body img.article-img-loading{opacity:0;transition:opacity .3s ease}[data-v-4a6ed5c1] .article-body .article-img-wrap img{margin:0!important}@keyframes article-img-spin-4a6ed5c1{to{transform:rotate(360deg)}}[data-v-4a6ed5c1] .article-body a{color:var(--text-accent);text-decoration:none}[data-v-4a6ed5c1] .article-body blockquote{border-left:4px solid var(--text-accent);margin:0;padding-left:15px;color:var(--text-secondary)}[data-v-4a6ed5c1] .article-body code{background:var(--code-bg);padding:2px 5px;border-radius:4px;font-family:monospace}.play-overlay-btn[data-v-7731a56a]{position:absolute;top:48%;left:50%;transform:translate(-50%,-150%);width:60px;height:60px;border-radius:50%;background:#0009;color:#fff;border:2px solid white;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:transform .3s ease,box-shadow .3s ease,background .3s ease;z-index:20;margin:0;padding-left:0}.cover-box:hover .play-overlay-btn[data-v-7731a56a]{opacity:1;transform:translate(-50%,-150%)}.play-overlay-btn[data-v-7731a56a]:hover{background:var(--play-btn-hover-bg);border-color:var(--play-btn-hover-border);box-shadow:0 6px 20px #0000001f;transform:translate(-50%,-150%) scale(1.02)}@media(max-width:768px){.cover-box .play-overlay-btn[data-v-7731a56a]{opacity:1}}.page-container[data-v-7731a56a]{min-height:100vh;padding-top:100px}.content-wrapper[data-v-7731a56a]{max-width:1800px;width:95%;margin:0 auto;padding:0 2rem 4rem}.header-section[data-v-7731a56a]{margin-bottom:40px}.header-content[data-v-7731a56a]{display:flex;justify-content:space-between;align-items:center}.upload-btn[data-v-7731a56a]{text-decoration:none;padding:10px 24px;border-radius:50px}.page-title[data-v-7731a56a]{font-size:2.5rem;margin:0 0 10px;font-weight:800}.dark{background:none;-webkit-text-fill-color:initial;color:#fff;text-shadow:0 0 20px rgba(255,255,255,.2)}.subtitle[data-v-7731a56a]{color:var(--text-secondary);font-size:1.1rem}.charts-grid[data-v-7731a56a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:30px}.chart-card[data-v-7731a56a]{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:transform .3s ease,box-shadow .3s ease,background .3s ease;cursor:pointer}.chart-card[data-v-7731a56a]:hover{transform:translateY(-4px);box-shadow:0 12px 40px #1f268726}.dark{box-shadow:0 12px 40px #0009}.dark{background:#121212}.dark{color:var(--text);text-shadow:0 0 10px rgba(255,255,255,.1);font-weight:600}.dark{color:#e2e8f0}.load-more-btn[data-v-7731a56a]{background:transparent;border:1px solid var(--text-secondary);color:var(--text-primary)}.cover-box[data-v-7731a56a]{position:relative;width:100%;padding-top:56.25%;background:var(--glass-dim, rgba(255,255,255,.9));overflow:hidden}.cover-img[data-v-7731a56a]{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;z-index:1;display:block}.chart-card:hover .cover-img[data-v-7731a56a]{transform:scale(1.05)}.diff-badge[data-v-7731a56a]{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:6px;color:#fff;font-weight:700;font-size:.9rem;box-shadow:0 2px 5px #0000004d;z-index:10}.info-box[data-v-7731a56a]{padding:15px;flex:1;display:flex;flex-direction:column}.song-title[data-v-7731a56a]{font-size:1.1rem;margin:0 0 5px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;font-weight:700}.filter-bar[data-v-7731a56a]{display:flex;gap:15px;margin-top:20px}.search-input[data-v-7731a56a]{padding:10px 15px;border-radius:8px;border:1px solid var(--input-border);background:var(--select-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--select-text);outline:none;flex:1}.custom-select[data-v-7731a56a]{position:relative;width:140px;-webkit-user-select:none;user-select:none}.select-trigger[data-v-7731a56a]{padding:10px 15px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.arrow[data-v-7731a56a]{font-size:.7rem;opacity:.7}.select-options[data-v-7731a56a]{position:absolute;top:100%;left:0;width:100%;margin-top:8px;background:var(--select-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--select-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden;z-index:100}.dark{background:var(--select-bg);border-color:var(--select-border)}.option[data-v-7731a56a]{padding:10px 15px;cursor:pointer;transition:background .2s;color:var(--text-primary);font-size:.9rem}.option[data-v-7731a56a]:hover{background:#0000000d}.dark{background:#ffffff1a}.source-badge[data-v-7731a56a]{position:absolute;top:10px;left:10px;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:700;color:#fff;box-shadow:0 2px 5px #0000004d;z-index:10}.source-badge.local[data-v-7731a56a]{background:var(--primary-color)}.source-badge.phizone[data-v-7731a56a]{background:#8e44ad}.chart-author[data-v-7731a56a]{font-size:.85rem;color:var(--text-secondary);margin:0 0 15px}.meta-row[data-v-7731a56a]{margin-top:auto;display:flex;gap:15px;font-size:.85rem;color:var(--text-secondary)}.manage-bar[data-v-7731a56a]{margin-top:10px;display:flex;gap:8px}.manage-btn[data-v-7731a56a]{padding:4px 12px;border-radius:6px;font-size:.8rem;cursor:pointer;border:1px solid var(--glass-border, rgba(255,255,255,.25));background:transparent;color:var(--text-secondary);transition:background .2s,color .2s,border-color .2s}.manage-btn[data-v-7731a56a]:hover{background:#0000000f}.dark{background:#ffffff1f}.manage-btn-hide[data-v-7731a56a]{color:#d97706;border-color:#d9770673}.manage-btn-hide[data-v-7731a56a]:hover{background:#d977061f}.manage-btn-reject[data-v-7731a56a]{color:#dc2626;border-color:#dc262673}.manage-btn-reject[data-v-7731a56a]:hover{background:#dc26261f}.manage-btn-restore[data-v-7731a56a]{color:#16a34a;border-color:#16a34a73}.manage-btn-restore[data-v-7731a56a]:hover{background:#16a34a1f}.manage-btn-re-review[data-v-7731a56a]{color:#0ea5e9;border-color:#0ea5e973}.manage-btn-re-review[data-v-7731a56a]:hover{background:#0ea5e91f}.manage-status[data-v-7731a56a]{font-size:.8rem;color:var(--text-muted, #999);padding:4px 12px;border:1px dashed var(--glass-border, rgba(255,255,255,.25));border-radius:6px}.pagination-area[data-v-7731a56a]{margin-top:50px;text-align:center}.load-more-btn[data-v-7731a56a]{background:transparent;border:1px solid var(--text-secondary);color:var(--text-primary);padding:10px 30px;border-radius:50px;font-size:1rem;cursor:pointer;transition:transform .3s ease,background .3s ease,color .3s ease}.load-more-btn[data-v-7731a56a]:hover{background:var(--text-primary);color:var(--bg-primary)}.no-more[data-v-7731a56a],.loading-spinner[data-v-7731a56a]{color:var(--text-secondary);font-size:var(--fs-sm)}.loading-spinner[data-v-7731a56a]{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.spinner--sm[data-v-7731a56a]{width:22px;height:22px;border-width:3px}@media(max-width:767px){.page-container[data-v-7731a56a]{padding-top:var(--header-height)}.content-wrapper[data-v-7731a56a]{width:100%;padding:0 16px 2rem}.header-content[data-v-7731a56a]{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.upload-btn[data-v-7731a56a]{width:auto;padding:8px 14px;font-size:.9rem;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.page-title[data-v-7731a56a]{font-size:1.8rem;line-height:1.2}.subtitle[data-v-7731a56a]{font-size:1rem;line-height:1.4}.filter-bar[data-v-7731a56a]{flex-direction:column;gap:12px}.search-input[data-v-7731a56a],.source-select[data-v-7731a56a]{width:100%}.charts-grid[data-v-7731a56a]{grid-template-columns:1fr;gap:20px}.chart-card[data-v-7731a56a]{margin:0}.info-box[data-v-7731a56a]{padding:12px}.song-title[data-v-7731a56a]{font-size:1rem;line-height:1.3;margin-bottom:8px}.chart-author[data-v-7731a56a]{font-size:.85rem;line-height:1.4;margin-bottom:6px}.meta-row[data-v-7731a56a]{font-size:.8rem;margin-top:8px}.diff-badge[data-v-7731a56a]{font-size:.85rem;padding:3px 8px}.play-overlay-btn[data-v-7731a56a]{width:50px;height:50px;font-size:20px}.load-more-btn[data-v-7731a56a]{width:100%;max-width:300px}}.page-container[data-v-0fe5ea88]{padding-top:calc(var(--header-height) + var(--space-8));padding-bottom:var(--space-16);max-width:1600px;width:95%;margin:0 auto}.header-section[data-v-0fe5ea88]{text-align:center;margin-bottom:var(--space-10)}.page-title[data-v-0fe5ea88]{font-size:var(--fs-2xl);margin:0 0 var(--space-5)}.filters[data-v-0fe5ea88]{display:flex;justify-content:center;gap:var(--space-2);flex-wrap:wrap}.filter-btn[data-v-0fe5ea88]{background:transparent;border:1px solid var(--color-border-strong);color:var(--text-secondary);padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);cursor:pointer;min-height:44px;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.filter-btn.active[data-v-0fe5ea88],.filter-btn[data-v-0fe5ea88]:hover{background:var(--text-accent);border-color:var(--text-accent);color:var(--color-text-on-brand)}.masonry-grid[data-v-0fe5ea88]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-5);grid-auto-rows:12px}.creation-card[data-v-0fe5ea88]{display:block;width:100%;overflow:hidden;position:relative;cursor:pointer}.creation-card img[data-v-0fe5ea88]{width:100%;height:auto;display:block;border-radius:12px;transition:transform .28s ease;object-fit:cover}.card-content[data-v-0fe5ea88]{box-sizing:border-box}.text-card[data-v-0fe5ea88]{padding:18px;min-height:96px;display:flex;flex-direction:column;gap:8px;justify-content:center}.creation-card img[data-v-0fe5ea88]{max-height:520px;width:100%;height:auto;display:block;object-fit:cover;border-radius:12px}.card-sep[data-v-0fe5ea88]{height:1px;background:#ffffff0f;border:none;margin:8px 0}.card-snippet[data-v-0fe5ea88]{color:#ffffffe6;font-size:.95rem;max-height:3.4em;overflow:hidden;text-overflow:ellipsis}.creation-card:hover img[data-v-0fe5ea88]{transform:scale(1.03)}.card-overlay[data-v-0fe5ea88]{position:absolute;left:0;right:0;bottom:0;padding:8px 12px;border-radius:0 0 12px 12px;background:linear-gradient(to top,#000000b3,#0000);color:#fff;opacity:1;transform:none;transition:none;display:flex;justify-content:flex-start;align-items:center;gap:10px;box-sizing:border-box;overflow:hidden}.creation-card:focus-within .card-overlay[data-v-0fe5ea88]{outline:none}.card-overlay-inner[data-v-0fe5ea88]{display:flex;flex-direction:column;gap:6px}.card-title[data-v-0fe5ea88]{margin:0;font-size:1.05rem;font-weight:700;color:#fff;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;text-shadow:none}.card-author[data-v-0fe5ea88]{margin:0;font-size:.85rem;color:#ffffffeb;opacity:.95;max-width:calc(100% - 100px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-type[data-v-0fe5ea88]{background:#ffffff14;padding:6px 10px;border-radius:999px;font-size:.75rem;color:#fff;align-self:flex-start;flex-shrink:0;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-author[data-v-0fe5ea88]{margin:0;font-size:.85rem;color:#ffffffeb}.card-type[data-v-0fe5ea88]{background:#ffffff14;padding:6px 10px;border-radius:999px;font-size:.75rem;color:#fff;align-self:flex-start}.creation-card[data-v-0fe5ea88]:hover{transform:none;box-shadow:none}@media(max-width:640px){.card-overlay[data-v-0fe5ea88]{opacity:1;transform:none;padding:14px;border-radius:0 0 10px 10px}.creation-card[data-v-0fe5ea88]{margin-bottom:18px}}[data-v-0fe5ea88] .markdown-body img{max-width:100%;border-radius:8px;margin:8px 0}[data-v-0fe5ea88] .markdown-body p{margin-bottom:.9em;color:var(--text-secondary)}[data-v-0fe5ea88] .markdown-body code{background:var(--code-bg);padding:2px 6px;border-radius:4px;font-family:monospace}.author-avatar[data-v-0fe5ea88]{width:40px;height:40px;border-radius:50%;object-fit:cover}.image-area[data-v-0fe5ea88]{flex:2;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-area img[data-v-0fe5ea88]{max-width:100%;max-height:100%;object-fit:contain}.info-area[data-v-0fe5ea88]{flex:1;padding:30px;display:flex;flex-direction:column;gap:20px;overflow-y:auto}.author-info[data-v-0fe5ea88]{display:flex;align-items:center;gap:10px;font-weight:600}.avatar-placeholder[data-v-0fe5ea88]{width:40px;height:40px;border-radius:50%;background:#ccc}.description[data-v-0fe5ea88]{color:var(--text-secondary);line-height:1.6}.actions[data-v-0fe5ea88]{margin-top:auto}.fade-enter-active[data-v-0fe5ea88],.fade-leave-active[data-v-0fe5ea88]{transition:opacity .3s ease}.fade-enter-from[data-v-0fe5ea88],.fade-leave-to[data-v-0fe5ea88]{opacity:0}.page-container[data-v-8cdf6fe2]{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-16);max-width:1000px;margin:0 auto}.hero-section[data-v-8cdf6fe2]{text-align:center;margin-bottom:var(--space-10)}.page-title[data-v-8cdf6fe2]{font-size:var(--fs-2xl);margin:0 0 var(--space-2)}.subtitle[data-v-8cdf6fe2]{color:var(--text-secondary)}.download-cards[data-v-8cdf6fe2]{display:grid;grid-template-columns:1fr;gap:var(--space-6);margin-bottom:var(--space-16)}@media(min-width:768px){.download-cards[data-v-8cdf6fe2]{grid-template-columns:1fr 1fr}}.card[data-v-8cdf6fe2]{padding:var(--space-10);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}.icon[data-v-8cdf6fe2]{font-size:4rem;margin-bottom:var(--space-2);color:var(--text-accent)}.version[data-v-8cdf6fe2],.status[data-v-8cdf6fe2]{color:var(--text-secondary);font-size:var(--fs-md)}.actions[data-v-8cdf6fe2]{display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:220px}.actions .btn-primary[data-v-8cdf6fe2],.actions .btn-outline[data-v-8cdf6fe2]{width:100%;display:inline-flex;align-items:center;justify-content:center;min-height:44px}.link-sub[data-v-8cdf6fe2]{color:var(--text-accent);text-decoration:none;font-size:var(--fs-sm)}.changelog-section[data-v-8cdf6fe2]{max-width:800px;margin:0 auto}.section-title[data-v-8cdf6fe2]{text-align:center;margin:0 0 var(--space-10);font-size:var(--fs-xl)}.timeline[data-v-8cdf6fe2]{position:relative;padding-left:var(--space-8);border-left:2px solid var(--glass-border)}.timeline-item[data-v-8cdf6fe2]{position:relative;margin-bottom:var(--space-10)}.timeline-marker[data-v-8cdf6fe2]{position:absolute;left:calc(-1 * var(--space-8) - 7px);top:var(--space-5);width:12px;height:12px;background:var(--text-accent);border-radius:var(--radius-full);box-shadow:0 0 0 4px var(--color-bg)}.timeline-content[data-v-8cdf6fe2]{padding:var(--space-5)}.log-header[data-v-8cdf6fe2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);border-bottom:1px solid var(--glass-border);padding-bottom:var(--space-3)}.version-tag[data-v-8cdf6fe2]{font-weight:700;font-size:var(--fs-md);color:var(--text-accent)}.date[data-v-8cdf6fe2]{color:var(--text-secondary);font-size:var(--fs-sm)}.log-list[data-v-8cdf6fe2]{list-style:disc;padding-left:var(--space-5);color:var(--text-primary)}.log-list li[data-v-8cdf6fe2]{margin-bottom:var(--space-1)}@media(max-width:480px){.card[data-v-8cdf6fe2]{padding:var(--space-6)}.timeline[data-v-8cdf6fe2]{padding-left:var(--space-6)}.timeline-marker[data-v-8cdf6fe2]{left:calc(-1 * var(--space-6) - 7px)}}.disabled-link[data-v-b872d5fc]{pointer-events:none;text-decoration:none;color:inherit}.page-container[data-v-b872d5fc]{padding-top:calc(var(--header-height) + var(--space-8));padding-bottom:var(--space-16);max-width:1000px;margin:0 auto}.header-section[data-v-b872d5fc]{text-align:center;margin-bottom:var(--space-10)}.page-title[data-v-b872d5fc]{font-size:var(--fs-2xl);margin:0 0 var(--space-2)}.team-group[data-v-b872d5fc]{margin-bottom:var(--space-12)}.group-title[data-v-b872d5fc]{text-align:center;margin:0 0 var(--space-6);font-size:var(--fs-xl);color:var(--text-secondary)}.members-grid[data-v-b872d5fc]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-6)}.member-card[data-v-b872d5fc]{padding:var(--space-8);text-align:center;display:flex;flex-direction:column;align-items:center}.member-card a[data-v-b872d5fc]{text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center}.avatar[data-v-b872d5fc]{width:100px;height:100px;border-radius:var(--radius-full);object-fit:cover;margin-bottom:var(--space-4);border:3px solid var(--glass-border);transition:transform var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.member-card a:hover .avatar[data-v-b872d5fc]{transform:scale(1.05)}.avatar-disabled[data-v-b872d5fc]{border-color:var(--color-border);filter:grayscale(1) opacity(.9)}.role[data-v-b872d5fc]{color:var(--text-accent);font-weight:600;margin:var(--space-2) 0 var(--space-1)}.desc[data-v-b872d5fc]{font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-snug)}@media(max-width:480px){.members-grid[data-v-b872d5fc]{grid-template-columns:1fr}}.callback-container[data-v-382f690f]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height));padding:var(--space-5)}.callback-box[data-v-382f690f]{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);max-width:360px}.callback-icon[data-v-382f690f]{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:var(--radius-full);margin-bottom:var(--space-2)}.callback-icon[data-v-382f690f] svg{width:40px;height:40px}.callback-icon.success[data-v-382f690f]{background:#22c55e1f;color:var(--color-success)}.callback-icon.error[data-v-382f690f]{background:#ef44441f;color:var(--color-danger)}.callback-spinner[data-v-382f690f]{width:56px;height:56px;border:4px solid var(--color-surface-sunken);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:anim-spin .8s linear infinite;margin-bottom:var(--space-2)}.callback-title[data-v-382f690f]{margin:0;font-size:var(--fs-xl);font-weight:700;color:var(--text-primary)}.callback-desc[data-v-382f690f]{margin:0;color:var(--text-secondary);font-size:var(--fs-base)}.callback-box .btn-primary[data-v-382f690f]{margin-top:var(--space-4)}.gh-callback[data-v-72ef7a28]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height));padding-top:var(--header-height)}.gh-card[data-v-72ef7a28]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:44px 36px;max-width:420px;width:100%;text-align:center}.spinner[data-v-72ef7a28]{width:34px;height:34px;border-radius:50%;border:3px solid var(--glass-border);border-top-color:var(--text-accent);animation:gh-spin-72ef7a28 .9s linear infinite}@keyframes gh-spin-72ef7a28{to{transform:rotate(360deg)}}.gh-card h2[data-v-72ef7a28]{margin:4px 0 0;font-size:1.2rem;font-weight:700;color:var(--text-primary)}.err-icon[data-v-72ef7a28]{font-size:2.2rem;color:#f87171}.hint[data-v-72ef7a28]{margin:0;font-size:.88rem;color:var(--text-secondary);word-break:break-word}.gh-actions[data-v-72ef7a28]{display:flex;justify-content:center;gap:10px;margin-top:10px}.btn.primary[data-v-72ef7a28]{margin-top:10px;padding:10px 24px;border:none;border-radius:999px;background:var(--primary-color, #6c8cbf);color:#fff;font-weight:600;cursor:pointer}.settings-page[data-v-63e98e83]{padding-top:calc(var(--header-height) + 32px);min-height:100vh;background:transparent;color:var(--text-primary)}.container[data-v-63e98e83]{max-width:680px;margin:0 auto;padding:0 20px 48px}.settings-header[data-v-63e98e83]{display:flex;align-items:center;gap:16px;margin-bottom:28px}.header-icon[data-v-63e98e83]{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:var(--fs-xl);color:var(--color-text-on-brand);background:linear-gradient(135deg,var(--color-brand-400),var(--color-brand-600))}.settings-header .page-title[data-v-63e98e83]{margin:0;font-size:var(--fs-lg);font-weight:700;color:var(--text-primary)}.settings-header .subtitle[data-v-63e98e83]{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary)}.section[data-v-63e98e83]{padding:26px;margin-bottom:20px}.section-head[data-v-63e98e83]{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--glass-border)}.section-icon[data-v-63e98e83]{font-size:1.3rem;color:var(--text-accent)}.section-head h2[data-v-63e98e83]{margin:0;font-size:1.15rem;font-weight:700}.avatar-upload[data-v-63e98e83]{display:flex;align-items:center;gap:24px}.current-avatar[data-v-63e98e83]{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid var(--glass-border)}.upload-btn[data-v-63e98e83]{display:inline-flex;align-items:center;padding:9px 18px;background:var(--primary-color, #6c8cbf);color:#fff;border-radius:10px;cursor:pointer;font-size:.88rem;font-weight:600;transition:opacity .18s ease,transform .18s ease}.upload-btn[data-v-63e98e83]:hover{opacity:.92;transform:translateY(-1px)}.upload-btn input[data-v-63e98e83]{display:none}.hint[data-v-63e98e83]{font-size:.8rem;color:var(--text-secondary);margin-top:6px}.hint-warn[data-v-63e98e83]{color:var(--warning, #f59e0b)}.email-current[data-v-63e98e83]{margin:0 0 16px;font-size:.88rem;color:var(--text-secondary)}.email-current strong[data-v-63e98e83]{color:var(--text-primary);font-weight:600}.email-row[data-v-63e98e83]{display:flex;align-items:center;gap:10px}.email-row .form-input[data-v-63e98e83]{flex:1;min-width:0}.email-row .btn[data-v-63e98e83]{flex-shrink:0;white-space:nowrap}.btn[data-v-63e98e83]:disabled{opacity:.55;cursor:not-allowed;transform:none}.form-group[data-v-63e98e83]{margin-bottom:16px}.form-group label[data-v-63e98e83]{display:block;margin-bottom:6px;font-weight:600;font-size:.86rem;color:var(--text-secondary)}.textarea[data-v-63e98e83]{resize:vertical;min-height:84px;font-family:inherit}.btn[data-v-63e98e83]{display:inline-flex;align-items:center;padding:10px 22px;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:.9rem;transition:opacity .18s ease,transform .18s ease}.btn[data-v-63e98e83]:hover{opacity:.92;transform:translateY(-1px)}.btn.primary[data-v-63e98e83]{background:var(--primary-color, #6c8cbf);color:#fff}.btn.danger[data-v-63e98e83]{background:var(--danger);color:#fff}.btn.ghost[data-v-63e98e83]{background:transparent;border:1px solid var(--glass-border);color:var(--text-primary)}.btn.small[data-v-63e98e83]{padding:7px 16px;font-size:.84rem}.oauth-item[data-v-63e98e83]{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:12px}.oauth-item+.oauth-item[data-v-63e98e83]{margin-top:14px}.oauth-info[data-v-63e98e83]{display:flex;align-items:center;gap:14px;min-width:0}.oauth-icon[data-v-63e98e83]{width:42px;height:42px;border-radius:10px;flex-shrink:0}.github-mark[data-v-63e98e83]{display:inline-flex;align-items:center;justify-content:center;background:#24292f;color:#fff}.oauth-name[data-v-63e98e83]{font-weight:700;margin:0;color:var(--text-primary)}.oauth-desc[data-v-63e98e83]{margin:3px 0 0;font-size:.84rem;color:var(--text-secondary)}.oauth-actions[data-v-63e98e83]{display:flex;align-items:center;gap:10px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.confirm-text[data-v-63e98e83]{font-size:.84rem;color:var(--text-secondary)}.status-badge[data-v-63e98e83]{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:.8rem;font-weight:600}.status-badge.success[data-v-63e98e83]{background:#22c55e1f;color:var(--success)}@media(max-width:640px){.avatar-upload[data-v-63e98e83]{flex-direction:column;align-items:flex-start;gap:16px}.email-row[data-v-63e98e83]{flex-direction:column;align-items:stretch}.oauth-item[data-v-63e98e83]{flex-direction:column;align-items:flex-start}.oauth-actions[data-v-63e98e83]{justify-content:flex-start}.btn[data-v-63e98e83]{width:100%;justify-content:center}.btn.small[data-v-63e98e83]{width:auto}}.loading-state[data-v-dcd75c23]{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-5);min-height:320px;width:100%}.loading-state.full[data-v-dcd75c23]{height:calc(100vh - var(--header-height, 72px));min-height:unset}.loading-state.fullWidth[data-v-dcd75c23]{grid-column:1 / -1}.spinner[data-v-dcd75c23]{flex-shrink:0;width:40px;height:40px;border:4px solid var(--color-surface-sunken, rgba(108, 140, 191, .2));border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.loading-text[data-v-dcd75c23]{margin:0;color:var(--text-secondary);font-size:var(--fs-base);min-width:120px;text-align:left}@media(prefers-reduced-motion:reduce){.spinner[data-v-dcd75c23]{animation-duration:1.6s}}.report-overlay[data-v-50813e72]{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;background:#0000008c;padding:var(--space-4)}.report-dialog[data-v-50813e72]{width:100%;max-width:520px;max-height:88vh;overflow-y:auto;padding:var(--space-5);border-radius:var(--card-radius, 16px);border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dialog-head[data-v-50813e72]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.dialog-title[data-v-50813e72]{margin:0;font-size:1.15rem;color:var(--text-primary)}.icon-btn[data-v-50813e72]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.1rem;display:inline-flex;padding:4px;border-radius:8px}.icon-btn[data-v-50813e72]:hover{color:var(--text-primary);background:#8080801f}.target-line[data-v-50813e72]{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:.9rem}.field[data-v-50813e72]{margin-bottom:var(--space-3);display:flex;flex-direction:column;gap:6px}.label[data-v-50813e72]{font-size:.85rem;color:var(--text-secondary)}.file-input[data-v-50813e72]{padding:8px}.field select[data-v-50813e72]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding-right:38px;cursor:pointer}.error-line[data-v-50813e72]{color:#ff4757;font-size:.85rem;margin:var(--space-2) 0}.dialog-actions[data-v-50813e72]{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4)}.btn-ghost[data-v-50813e72]{background:none;border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:10px;padding:8px 18px;cursor:pointer}.btn-ghost[data-v-50813e72]:hover{color:var(--text-primary)}.success-block[data-v-50813e72]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5) 0;text-align:center}.success-icon[data-v-50813e72]{font-size:3rem;color:#2ed573}.success-text[data-v-50813e72]{margin:0;color:var(--text-secondary)}.page-container[data-v-f6987bf9]{padding-top:calc(var(--header-height) + var(--space-8));padding-bottom:var(--space-12);min-height:100vh;max-width:1200px;width:92%;margin:0 auto;box-sizing:border-box}.profile-header[data-v-f6987bf9]{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-2) 0 var(--space-6);margin-bottom:var(--space-6);border-bottom:1px solid var(--glass-border)}.avatar-wrapper[data-v-f6987bf9]{flex-shrink:0;width:128px;height:128px}.avatar[data-v-f6987bf9]{width:100%;height:100%;border-radius:var(--radius-full);object-fit:cover;border:4px solid transparent;box-shadow:var(--shadow-md)}.info[data-v-f6987bf9]{flex:1;min-width:0}.name-row[data-v-f6987bf9]{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:8px}.username[data-v-f6987bf9]{margin:0;font-size:1.9rem;font-weight:700;color:var(--text-primary)}.role-badge[data-v-f6987bf9]{padding:4px 14px;border-radius:999px;font-size:.78rem;font-weight:700;box-shadow:0 2px 8px #0000001f}.follow-btn[data-v-f6987bf9]{padding:8px 20px;border-radius:999px;border:none;background:var(--primary-color, #6c8cbf);color:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:transform .18s ease,opacity .18s ease,background .18s ease}.name-row button.follow-btn[data-v-f6987bf9]:first-of-type{margin-left:auto}.tab-loading[data-v-f6987bf9]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6);color:var(--text-secondary)}.pack-list[data-v-f6987bf9],.user-comment-list[data-v-f6987bf9]{display:flex;flex-direction:column}.pack-item[data-v-f6987bf9],.user-comment-item[data-v-f6987bf9]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 4px;border-bottom:1px solid var(--glass-border);border-radius:0}.pack-list>.pack-item[data-v-f6987bf9]:last-child,.user-comment-list>.user-comment-item[data-v-f6987bf9]:last-child{border-bottom:none}.pack-name[data-v-f6987bf9]{margin:0;font-weight:700;color:var(--text-primary)}.pack-desc[data-v-f6987bf9]{margin:4px 0 0;font-size:.88rem;color:var(--text-secondary);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pack-meta[data-v-f6987bf9],.user-comment-meta[data-v-f6987bf9]{margin:6px 0 0;font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;flex-wrap:wrap;gap:8px}.status-tag[data-v-f6987bf9]{display:inline-block;margin-left:8px;padding:2px 10px;border-radius:999px;font-size:.72rem;background:#f59e0b24;color:var(--warning, #f59e0b)}.user-comment-content[data-v-f6987bf9]{margin:0;color:var(--text-primary);word-break:break-word}.comment-target[data-v-f6987bf9]{color:var(--text-accent);text-decoration:none}.comment-target[data-v-f6987bf9]:hover{text-decoration:underline}.edited-tag[data-v-f6987bf9]{color:var(--text-secondary)}@media(max-width:640px){.pack-item[data-v-f6987bf9]{flex-direction:column;align-items:flex-start}}.follow-btn[data-v-f6987bf9]:hover{transform:translateY(-2px);opacity:.92}.follow-btn.following[data-v-f6987bf9]{background:var(--glass-surface);color:var(--text-primary);border:1px solid var(--glass-border)}.bio[data-v-f6987bf9]{margin:0 0 10px;color:var(--text-secondary);font-size:.98rem;line-height:1.6}.meta-row[data-v-f6987bf9]{display:flex;align-items:center;font-size:.86rem;color:var(--text-secondary);margin-bottom:18px}.stats-row[data-v-f6987bf9]{display:flex;gap:36px}.stat-item[data-v-f6987bf9]{display:flex;flex-direction:column;align-items:center;min-width:64px}.stat-item.clickable[data-v-f6987bf9]{cursor:pointer;transition:opacity .15s ease}.stat-item.clickable[data-v-f6987bf9]:hover{opacity:.7}.stat-val[data-v-f6987bf9]{font-size:1.4rem;font-weight:800;color:var(--text-primary);line-height:1.1}.stat-label[data-v-f6987bf9]{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.tabs-nav[data-v-f6987bf9]{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--glass-border);overflow-x:auto}.tab-btn[data-v-f6987bf9]{display:inline-flex;align-items:center;padding:12px 18px;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:.95rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:color .2s ease,border-color .2s ease}.tab-btn[data-v-f6987bf9]:hover{color:var(--text-primary)}.tab-btn.active[data-v-f6987bf9]{color:var(--text-primary);border-bottom-color:var(--text-accent)}.tab-count[data-v-f6987bf9]{margin-left:6px;padding:1px 8px;border-radius:999px;font-size:.72rem;background:var(--glass-surface);color:var(--text-secondary)}.grid-list[data-v-f6987bf9]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.card-item[data-v-f6987bf9]{overflow:hidden;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease}.card-item[data-v-f6987bf9]:hover{transform:translateY(-5px)}.card-cover[data-v-f6987bf9]{position:relative;width:100%;padding-top:56.25%;background:var(--color-surface-sunken);overflow:hidden}.card-cover img[data-v-f6987bf9]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.card-info[data-v-f6987bf9]{padding:14px 16px}.card-info h4[data-v-f6987bf9]{margin:0 0 4px;font-size:1rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-info p[data-v-f6987bf9]{margin:0;font-size:.82rem;color:var(--text-secondary)}.score-list[data-v-f6987bf9]{display:flex;flex-direction:column;gap:14px}.score-item[data-v-f6987bf9]{display:flex;align-items:center;gap:18px;padding:16px 20px}.score-cover[data-v-f6987bf9]{width:56px;height:56px;border-radius:10px;object-fit:cover;flex-shrink:0}.score-main[data-v-f6987bf9]{flex:1;min-width:0}.score-title[data-v-f6987bf9]{margin:0 0 4px;font-size:1.02rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-date[data-v-f6987bf9]{font-size:.78rem;color:var(--text-secondary)}.score-stats[data-v-f6987bf9]{display:flex;align-items:center;gap:16px;flex-shrink:0}.rank-badge[data-v-f6987bf9]{font-weight:900;font-size:1.25rem;font-style:italic;min-width:32px;text-align:center}.rank-badge[data-rank=M][data-v-f6987bf9]{color:var(--rank-m);text-shadow:0 0 10px var(--rank-m)}.rank-badge[data-rank=SS][data-v-f6987bf9]{color:var(--rank-ss)}.rank-badge[data-rank=S][data-v-f6987bf9]{color:var(--rank-s)}.rank-badge[data-rank=A][data-v-f6987bf9]{color:var(--rank-a)}.score-val[data-v-f6987bf9]{font-family:monospace;font-size:1.1rem;font-weight:700;color:var(--text-primary)}.acc-val[data-v-f6987bf9]{color:var(--text-secondary);font-size:var(--fs-sm)}@media(max-width:768px){.profile-header[data-v-f6987bf9]{flex-direction:column;text-align:center;padding:8px 0 24px;gap:20px}.avatar-wrapper[data-v-f6987bf9]{width:104px;height:104px}.name-row[data-v-f6987bf9]{justify-content:center}.username[data-v-f6987bf9]{font-size:1.5rem}.follow-btn[data-v-f6987bf9]{margin-left:0}.meta-row[data-v-f6987bf9]{justify-content:center}.stats-row[data-v-f6987bf9]{justify-content:center;gap:28px}.grid-list[data-v-f6987bf9]{grid-template-columns:1fr}.score-item[data-v-f6987bf9]{flex-wrap:wrap}.score-stats[data-v-f6987bf9]{width:100%;justify-content:space-between;padding-top:8px;border-top:1px solid var(--glass-border)}}.page-container[data-v-676844ab]{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-16);display:flex;justify-content:center}.content-wrapper[data-v-676844ab]{max-width:760px;width:100%;padding:var(--space-10);line-height:var(--lh-normal);color:var(--text-primary)}.doc-title[data-v-676844ab]{margin:0 0 var(--space-2);font-size:var(--fs-2xl);color:var(--text-primary)}.doc-updated[data-v-676844ab]{margin:0 0 var(--space-6);color:var(--text-muted);font-size:var(--fs-sm)}section[data-v-676844ab]{margin-top:var(--space-8)}h2[data-v-676844ab]{font-size:var(--fs-lg);margin:0 0 var(--space-4);color:var(--text-accent)}p[data-v-676844ab]{margin:0 0 var(--space-4);color:var(--text-secondary)}ul[data-v-676844ab]{color:var(--text-secondary);padding-left:var(--space-6)}li[data-v-676844ab]{margin-bottom:var(--space-2)}a[data-v-676844ab]{color:var(--text-accent)}@media(max-width:480px){.content-wrapper[data-v-676844ab]{padding:var(--space-5)}}.admin-login[data-v-5d412ade]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:radial-gradient(1200px 600px at 20% 10%,color-mix(in srgb,var(--color-primary) 18%,transparent),transparent 60%),radial-gradient(1000px 500px at 90% 90%,color-mix(in srgb,var(--color-primary) 16%,transparent),transparent 60%),var(--color-bg)}.login-panel[data-v-5d412ade]{width:100%;max-width:420px;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--color-surface-strong);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.login-brand[data-v-5d412ade]{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.brand-mark[data-v-5d412ade]{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:var(--fs-lg);font-weight:800;color:var(--color-text-on-brand);background:linear-gradient(135deg,var(--color-brand-400),var(--color-brand-600));flex:0 0 auto}.brand-title[data-v-5d412ade]{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--text-primary)}.brand-sub[data-v-5d412ade]{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary)}.login-form[data-v-5d412ade]{display:flex;flex-direction:column;gap:var(--space-5)}.field[data-v-5d412ade]{display:flex;flex-direction:column;gap:var(--space-2)}.label[data-v-5d412ade]{font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary)}.error[data-v-5d412ade]{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 12%,transparent)}.submit-btn[data-v-5d412ade]{min-height:48px;padding:var(--space-3);border:none;border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:700;color:var(--color-text-on-brand);background:linear-gradient(135deg,var(--color-brand-400),var(--color-brand-600));cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:transform var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard)}.submit-btn[data-v-5d412ade]:hover:not(:disabled){opacity:.95}.submit-btn[data-v-5d412ade]:disabled{opacity:.6;cursor:not-allowed}.btn-spinner[data-v-5d412ade]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}@media(max-width:767px){.admin-login[data-v-5d412ade]{padding:var(--space-4)}.login-panel[data-v-5d412ade]{padding:var(--space-6) var(--space-4)}.form-input[data-v-5d412ade]{font-size:16px}}.page-container[data-v-d30fa88d]{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-16);display:flex;justify-content:center}.content-wrapper[data-v-d30fa88d]{max-width:760px;width:100%;padding:var(--space-10);line-height:var(--lh-normal);color:var(--text-primary)}.doc-title[data-v-d30fa88d]{margin:0 0 var(--space-2);font-size:var(--fs-2xl);color:var(--text-primary)}.doc-updated[data-v-d30fa88d]{margin:0 0 var(--space-6);color:var(--text-muted);font-size:var(--fs-sm)}section[data-v-d30fa88d]{margin-top:var(--space-8)}h2[data-v-d30fa88d]{font-size:var(--fs-lg);margin:0 0 var(--space-4);color:var(--text-accent)}p[data-v-d30fa88d]{margin:0 0 var(--space-4);color:var(--text-secondary)}a[data-v-d30fa88d]{color:var(--text-accent)}@media(max-width:480px){.content-wrapper[data-v-d30fa88d]{padding:var(--space-5)}}.page-container[data-v-d7af0428]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height));padding-top:var(--header-height);padding-bottom:var(--space-10)}.auth-card[data-v-d7af0428]{padding:var(--space-10);width:100%;max-width:420px;text-align:center}.auth-title[data-v-d7af0428]{margin:0 0 var(--space-8);color:var(--text-primary);font-size:var(--fs-xl);font-weight:800;line-height:var(--lh-tight)}.form-group[data-v-d7af0428]{margin-bottom:var(--space-5);text-align:left}.form-group label[data-v-d7af0428]{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600}.form-actions[data-v-d7af0428]{margin-top:var(--space-6)}.form-actions .btn-primary[data-v-d7af0428]{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-spinner[data-v-d7af0428]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}.oauth-divider[data-v-d7af0428]{margin:var(--space-6) 0;position:relative;text-align:center}.oauth-divider[data-v-d7af0428]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.oauth-divider span[data-v-d7af0428]{position:relative;background:var(--glass-bg);padding:0 var(--space-3);color:var(--text-secondary);font-size:var(--fs-sm)}.oauth-actions[data-v-d7af0428]{display:flex;flex-direction:column;gap:var(--space-3)}.milkloud-btn[data-v-d7af0428]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunken);color:var(--text-primary);cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard);font-size:var(--fs-base)}.milkloud-btn[data-v-d7af0428]:hover:not(:disabled){border-color:var(--text-accent);background:var(--color-surface)}.milkloud-btn[data-v-d7af0428]:disabled{opacity:.6;cursor:not-allowed}.milkloud-btn img[data-v-d7af0428]{width:20px;height:20px;border-radius:var(--radius-xs)}.github-btn[data-v-d7af0428]{background:#24292f;border-color:#24292f;color:#fff}.github-btn[data-v-d7af0428]:hover:not(:disabled){background:#32383f;border-color:#32383f}.github-btn .gh-mark[data-v-d7af0428]{flex-shrink:0}.auth-links[data-v-d7af0428]{margin-top:var(--space-5);display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-sm)}.auth-links a[data-v-d7af0428]{color:var(--text-accent);text-decoration:none}.auth-links a[data-v-d7af0428]:hover{text-decoration:underline}.error-msg[data-v-d7af0428]{color:var(--color-danger);margin:var(--space-4) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,transparent);font-size:var(--fs-sm)}.consent-row[data-v-d7af0428]{text-align:left;margin-bottom:var(--space-3)}.consent[data-v-d7af0428]{display:flex;gap:var(--space-2);align-items:center;color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer}.consent--gap[data-v-d7af0428]{margin-top:var(--space-2)}.consent input[data-v-d7af0428]{width:18px;height:18px;accent-color:var(--color-primary)}.consent-link[data-v-d7af0428]{color:var(--text-accent);text-decoration:none}.consent-link[data-v-d7af0428]:hover{text-decoration:underline}.consent-error[data-v-d7af0428]{color:var(--color-danger);margin:var(--space-2) 0 0;font-size:var(--fs-sm)}@media(max-width:767px){.page-container[data-v-d7af0428]{padding:calc(var(--header-height-mobile) + var(--space-4)) var(--space-4) var(--space-10);align-items:flex-start;overflow-x:hidden}.auth-card[data-v-d7af0428]{padding:var(--space-6) var(--space-4);max-width:100%;flex:0 1 100%;min-width:0}.auth-title[data-v-d7af0428]{font-size:var(--fs-lg);margin-bottom:var(--space-6)}.form-input[data-v-d7af0428]{font-size:16px;min-width:0;max-width:100%}.consent[data-v-d7af0428]{min-width:0;flex-wrap:wrap}.consent-link[data-v-d7af0428]{min-height:0!important;min-width:0!important;display:inline-flex;align-items:center}.auth-links[data-v-d7af0428]{flex-direction:column;gap:var(--space-3);align-items:center}.auth-links a[data-v-d7af0428]{min-height:0!important;min-width:0!important;display:inline-flex;align-items:center}}.page-container[data-v-d906b765]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height));padding-top:var(--header-height);padding-bottom:var(--space-10)}.auth-card[data-v-d906b765]{padding:var(--space-10);width:100%;max-width:420px;text-align:center}.auth-title[data-v-d906b765]{margin:0 0 var(--space-8);color:var(--text-primary);font-size:var(--fs-xl);font-weight:800;line-height:var(--lh-tight)}.form-group[data-v-d906b765]{margin-bottom:var(--space-5);text-align:left}.form-group label[data-v-d906b765]{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600}.btn-block[data-v-d906b765]{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-spinner[data-v-d906b765]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}.btn-text[data-v-d906b765]{display:block;width:100%;background:none;border:none;color:var(--text-secondary);margin-top:var(--space-3);padding:var(--space-2);cursor:pointer;font-size:var(--fs-sm)}.btn-text[data-v-d906b765]:hover:not(:disabled){color:var(--text-accent)}.error-msg[data-v-d906b765]{color:var(--color-danger);margin:var(--space-4) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,transparent);font-size:var(--fs-sm)}.info-text[data-v-d906b765]{color:var(--text-secondary);margin:0 0 var(--space-5);font-size:var(--fs-sm)}.auth-links[data-v-d906b765]{margin-top:var(--space-5)}.auth-links a[data-v-d906b765]{color:var(--text-accent);text-decoration:none}.auth-links a[data-v-d906b765]:hover{text-decoration:underline}.consent-row[data-v-d906b765]{text-align:left;margin-bottom:var(--space-3)}.consent[data-v-d906b765]{display:flex;gap:var(--space-2);align-items:center;color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer}.consent--gap[data-v-d906b765]{margin-top:var(--space-2)}.consent input[data-v-d906b765]{width:18px;height:18px;accent-color:var(--color-primary)}.consent-link[data-v-d906b765]{color:var(--text-accent);text-decoration:none}.consent-link[data-v-d906b765]:hover{text-decoration:underline}.consent-error[data-v-d906b765]{color:var(--color-danger);margin:var(--space-2) 0 0;font-size:var(--fs-sm)}@media(max-width:767px){.page-container[data-v-d906b765]{padding:calc(var(--header-height-mobile) + var(--space-4)) var(--space-4) var(--space-10);align-items:flex-start;overflow-x:hidden}.auth-card[data-v-d906b765]{padding:var(--space-6) var(--space-4);max-width:100%;flex:0 1 100%;min-width:0}.auth-title[data-v-d906b765]{font-size:var(--fs-lg);margin-bottom:var(--space-6)}.form-input[data-v-d906b765]{font-size:16px;min-width:0;max-width:100%}.consent-link[data-v-d906b765],.auth-links a[data-v-d906b765]{min-height:0!important;min-width:0!important;display:inline-flex;align-items:center}}.page-container[data-v-072fa9a3]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height));padding-top:var(--header-height);padding-bottom:var(--space-10)}.auth-card[data-v-072fa9a3]{padding:var(--space-10);width:100%;max-width:420px;text-align:center}.auth-title[data-v-072fa9a3]{margin:0 0 var(--space-8);color:var(--text-primary);font-size:var(--fs-xl);font-weight:800;line-height:var(--lh-tight)}.form-group[data-v-072fa9a3]{margin-bottom:var(--space-5);text-align:left}.form-group label[data-v-072fa9a3]{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600}.btn-block[data-v-072fa9a3]{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-spinner[data-v-072fa9a3]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}.btn-link[data-v-072fa9a3]{display:block;width:100%;min-height:44px;margin-top:var(--space-3);border:none;background:transparent;color:var(--text-accent);cursor:pointer;font-size:var(--fs-sm)}.error-msg[data-v-072fa9a3]{color:var(--color-danger);margin:var(--space-4) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,transparent);font-size:var(--fs-sm)}.info-text[data-v-072fa9a3]{color:var(--text-secondary);margin:0 0 var(--space-5);font-size:var(--fs-sm)}.auth-links[data-v-072fa9a3]{margin-top:var(--space-5)}.auth-links a[data-v-072fa9a3]{color:var(--text-accent);text-decoration:none}.auth-links a[data-v-072fa9a3]:hover{text-decoration:underline}@media(max-width:767px){.page-container[data-v-072fa9a3]{padding:calc(var(--header-height-mobile) + var(--space-4)) var(--space-4) var(--space-10);align-items:flex-start;overflow-x:hidden}.auth-card[data-v-072fa9a3]{padding:var(--space-6) var(--space-4);max-width:100%;flex:0 1 100%;min-width:0}.auth-title[data-v-072fa9a3]{font-size:var(--fs-lg);margin-bottom:var(--space-6)}.form-input[data-v-072fa9a3]{font-size:16px;min-width:0;max-width:100%}}.page-container[data-v-56042393]{min-height:100vh;padding-top:calc(var(--header-height) + var(--space-6));padding-bottom:var(--space-10)}.content-wrapper[data-v-56042393]{max-width:760px;width:92%;margin:0 auto}.header-section[data-v-56042393]{text-align:center;margin-bottom:var(--space-10)}.page-title[data-v-56042393]{margin:0 0 var(--space-2);font-size:var(--fs-2xl);font-weight:800}.subtitle[data-v-56042393]{margin:0;color:var(--text-secondary)}.choose-grid[data-v-56042393]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.choose-card[data-v-56042393]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);padding:var(--space-10) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.choose-card[data-v-56042393]:hover{transform:translateY(-4px);border-color:var(--text-accent);box-shadow:var(--glass-shadow)}.choose-icon[data-v-56042393]{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-full);background:var(--color-surface-sunken);color:var(--text-accent);font-size:2rem}.choose-title[data-v-56042393]{font-size:var(--fs-md);font-weight:700}.choose-desc[data-v-56042393]{color:var(--text-secondary);font-size:var(--fs-sm);line-height:var(--lh-normal)}@media(max-width:640px){.choose-grid[data-v-56042393]{grid-template-columns:1fr;gap:var(--space-4)}.choose-card[data-v-56042393]{padding:var(--space-8) var(--space-4)}}.page-container[data-v-b98be34f]{display:flex;justify-content:center;padding-top:calc(var(--header-height) + var(--space-6));padding-bottom:var(--space-10);min-height:100vh;width:100%}.upload-card[data-v-b98be34f]{padding:var(--space-10);width:92%;max-width:780px;margin:0 auto}.upload-title[data-v-b98be34f]{text-align:center;margin:0 0 var(--space-8);font-size:var(--fs-xl);font-weight:800}.form-group[data-v-b98be34f]{margin-bottom:var(--space-5)}.field-label[data-v-b98be34f]{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600}.form-row[data-v-b98be34f]{display:flex;gap:var(--space-5)}.form-row .form-group[data-v-b98be34f]{flex:1}.checkbox-label[data-v-b98be34f]{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-primary);font-size:var(--fs-sm)}.checkbox-label input[data-v-b98be34f]{width:18px;height:18px;accent-color:var(--color-primary)}.file-input-wrapper[data-v-b98be34f]{position:relative;width:100%}.hidden-input[data-v-b98be34f]{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.custom-file-btn[data-v-b98be34f]{display:flex;align-items:center;justify-content:center;width:100%;min-height:72px;padding:var(--space-5);border:2px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--text-secondary);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);text-align:center;box-sizing:border-box}.custom-file-btn[data-v-b98be34f]:hover{border-color:var(--text-accent);background:var(--color-surface);color:var(--text-accent)}.custom-file-btn.has-file[data-v-b98be34f]{border-style:solid;border-color:var(--text-accent);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--text-accent)}.custom-file-btn .icon[data-v-b98be34f]{font-size:var(--fs-xl);margin-right:var(--space-2)}.custom-file-btn .file-name[data-v-b98be34f]{font-weight:600;word-break:break-all}.hint[data-v-b98be34f]{font-size:var(--fs-sm);color:var(--text-secondary);margin-top:var(--space-2)}.preview-section[data-v-b98be34f]{margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-surface-sunken);border-radius:var(--radius-md)}.cover-preview[data-v-b98be34f]{margin-bottom:var(--space-4)}.preview-img[data-v-b98be34f]{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-sm);margin-top:var(--space-1)}.audio-preview audio[data-v-b98be34f]{width:100%;margin-top:var(--space-1)}.btn-block[data-v-b98be34f]{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-spinner[data-v-b98be34f]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}.error-msg[data-v-b98be34f]{color:var(--color-danger);margin:var(--space-4) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,transparent);font-size:var(--fs-sm);text-align:center}@media(max-width:767px){.page-container[data-v-b98be34f]{padding-top:calc(var(--header-height-mobile) + var(--space-4))}.upload-card[data-v-b98be34f]{padding:var(--space-6) var(--space-4)}.upload-title[data-v-b98be34f]{font-size:var(--fs-lg);margin-bottom:var(--space-6)}.form-row[data-v-b98be34f]{flex-direction:column;gap:0}.form-row .form-group[data-v-b98be34f]{flex:1 1 100%}.form-input[data-v-b98be34f]{font-size:16px}}.page-container[data-v-2f879b3d]{min-height:100vh;padding-top:100px;padding-bottom:60px}.content-wrapper[data-v-2f879b3d]{max-width:1200px;width:92%;margin:0 auto}.header-section[data-v-2f879b3d]{text-align:center;margin-bottom:40px}.page-title[data-v-2f879b3d]{margin:0 0 8px;font-size:2rem}.subtitle[data-v-2f879b3d]{margin:0;color:var(--text-secondary)}.pack-toolbar[data-v-2f879b3d]{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:28px;border:1px solid var(--glass-border);border-radius:var(--card-radius, 16px);background:var(--glass-bg)}.search-box[data-v-2f879b3d]{position:relative;flex:1 1 auto;min-width:0}.search-icon[data-v-2f879b3d]{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--text-secondary);pointer-events:none}.search-input[data-v-2f879b3d]{width:100%;padding:10px 14px 10px 42px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-surface);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.search-input[data-v-2f879b3d]:focus{border-color:var(--text-accent);box-shadow:0 0 0 3px #667eea26}.sort-select[data-v-2f879b3d]{flex:0 0 auto;padding:10px 14px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-surface);color:var(--text-primary);font-size:.9rem;outline:none;cursor:pointer}@media(max-width:560px){.pack-toolbar[data-v-2f879b3d]{flex-direction:column;align-items:stretch}}.packs-total[data-v-2f879b3d]{margin:-12px 0 20px;color:var(--text-secondary);font-size:.85rem}.load-more-wrap[data-v-2f879b3d]{display:flex;justify-content:center;margin-top:32px}.load-more-btn[data-v-2f879b3d]{width:auto;min-width:160px}.load-more-btn[data-v-2f879b3d]:disabled{opacity:.6;cursor:not-allowed;transform:none}.pack-grid[data-v-2f879b3d]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.pack-card[data-v-2f879b3d]{display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid var(--glass-border);border-radius:var(--card-radius, 16px);background:var(--glass-bg);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.pack-card[data-v-2f879b3d]:hover{transform:translateY(-3px);border-color:var(--text-accent);box-shadow:var(--glass-shadow)}.pack-head[data-v-2f879b3d]{display:flex;align-items:center;justify-content:space-between;gap:10px}.pack-name[data-v-2f879b3d]{margin:0;font-size:1.15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pack-version[data-v-2f879b3d]{flex:0 0 auto;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--text-accent);background:#667eea1f}.pack-desc[data-v-2f879b3d]{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pack-meta[data-v-2f879b3d]{display:flex;flex-wrap:wrap;gap:8px}.meta-item[data-v-2f879b3d]{padding:3px 9px;border-radius:999px;background:var(--glass-surface);color:var(--text-secondary);font-size:.78rem}.pack-actions[data-v-2f879b3d]{margin-top:auto}.btn-primary[data-v-2f879b3d]{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:10px 14px;border-radius:10px;background:var(--text-accent);color:#fff;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.btn-primary[data-v-2f879b3d]:hover{opacity:.9;transform:translateY(-2px)}.page-container[data-v-e51b3b27]{display:flex;justify-content:center;padding-top:calc(var(--header-height) + var(--space-6));padding-bottom:var(--space-10);min-height:100vh;width:100%}.upload-card[data-v-e51b3b27]{padding:var(--space-10);width:92%;max-width:780px;margin:0 auto}.upload-title[data-v-e51b3b27]{text-align:center;margin:0 0 var(--space-2);font-size:var(--fs-xl);font-weight:800}.upload-tip[data-v-e51b3b27]{text-align:center;color:var(--text-secondary);font-size:var(--fs-sm);margin:0 0 var(--space-6)}.form-group[data-v-e51b3b27]{margin-bottom:var(--space-5)}.field-label[data-v-e51b3b27]{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600}.file-input-wrapper[data-v-e51b3b27]{position:relative;width:100%}.hidden-input[data-v-e51b3b27]{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.custom-file-btn[data-v-e51b3b27]{display:flex;align-items:center;justify-content:center;width:100%;min-height:72px;padding:var(--space-5);border:2px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--text-secondary);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);text-align:center;box-sizing:border-box}.custom-file-btn[data-v-e51b3b27]:hover{border-color:var(--text-accent);background:var(--color-surface);color:var(--text-accent)}.custom-file-btn.has-file[data-v-e51b3b27]{border-style:solid;border-color:var(--text-accent);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--text-accent)}.custom-file-btn .icon[data-v-e51b3b27]{font-size:var(--fs-xl);margin-right:var(--space-2)}.custom-file-btn .file-name[data-v-e51b3b27]{font-weight:600;word-break:break-all}.meta-card[data-v-e51b3b27]{margin-bottom:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken)}.meta-header[data-v-e51b3b27]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.meta-title[data-v-e51b3b27]{font-size:var(--fs-md);font-weight:700;word-break:break-all}.meta-version[data-v-e51b3b27]{flex:0 0 auto;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700;color:var(--text-accent);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.meta-list[data-v-e51b3b27]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-4);margin:0}.meta-row[data-v-e51b3b27]{min-width:0}.meta-row-full[data-v-e51b3b27]{grid-column:1 / -1}.meta-row dt[data-v-e51b3b27]{font-size:var(--fs-xs);color:var(--text-secondary);margin-bottom:3px}.meta-row dd[data-v-e51b3b27]{margin:0;font-size:var(--fs-sm);word-break:break-all;white-space:pre-wrap}.expand-btn[data-v-e51b3b27]{display:inline-block;margin-left:var(--space-2);padding:0;border:none;background:transparent;color:var(--text-accent);font-size:var(--fs-sm);font-weight:600;cursor:pointer;text-decoration:underline;vertical-align:baseline}.expand-btn[data-v-e51b3b27]:hover{opacity:.75}.btn-block[data-v-e51b3b27]{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-spinner[data-v-e51b3b27]{width:16px;height:16px;border:2px solid var(--color-text-on-brand, #fff);border-top-color:transparent;border-radius:50%;animation:anim-spin .7s linear infinite}.error-msg[data-v-e51b3b27]{color:var(--color-danger);margin:var(--space-4) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,transparent);font-size:var(--fs-sm);text-align:center}@media(max-width:767px){.page-container[data-v-e51b3b27]{padding-top:calc(var(--header-height-mobile) + var(--space-4))}.upload-card[data-v-e51b3b27]{padding:var(--space-6) var(--space-4)}.upload-title[data-v-e51b3b27]{font-size:var(--fs-lg)}.meta-list[data-v-e51b3b27]{grid-template-columns:1fr}}.page-container[data-v-2cea8a2e]{padding-top:100px;max-width:1000px;margin:0 auto;padding-bottom:40px;width:100%;box-sizing:border-box;overflow-x:hidden}.chart-detail[data-v-2cea8a2e]{padding:40px;border-radius:24px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden;-webkit-overflow-scrolling:touch}.chart-title[data-v-2cea8a2e],.info-item[data-v-2cea8a2e],.value[data-v-2cea8a2e],.subtitle[data-v-2cea8a2e],.review-body[data-v-2cea8a2e]{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.detail-layout[data-v-2cea8a2e]{display:flex;gap:40px;margin-bottom:40px}@media(max-width:768px){.page-container[data-v-2cea8a2e]{padding-top:calc(var(--header-height) + 12px);padding-left:16px;padding-right:16px;margin:0 auto;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.chart-detail[data-v-2cea8a2e]{padding:12px;border-radius:12px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.detail-layout[data-v-2cea8a2e]{flex-direction:column;align-items:stretch;gap:18px}.cover-section[data-v-2cea8a2e]{width:100%;display:flex;justify-content:center}.cover-wrapper[data-v-2cea8a2e]{width:100%;max-width:320px}.info-section[data-v-2cea8a2e]{width:100%}}.cover-section[data-v-2cea8a2e]{flex-shrink:0}.cover-wrapper[data-v-2cea8a2e]{position:relative;width:100%;max-width:320px;aspect-ratio:16/9;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000004d}.cover-img[data-v-2cea8a2e]{width:100%;height:100%;display:block;object-fit:cover}.cover-play[data-v-2cea8a2e]{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;background:#080a1452;opacity:0;transition:opacity .2s ease;text-decoration:none}.cover-play[data-v-2cea8a2e]:hover,.cover-play[data-v-2cea8a2e]:focus-visible{opacity:1}.cover-play-btn[data-v-2cea8a2e]{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:44px;color:#fff;background:#080a148c;border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 6px 24px #00000059;transition:transform .2s ease}.cover-play:hover .cover-play-btn[data-v-2cea8a2e]{transform:scale(1.08)}@media(hover:none){.cover-play[data-v-2cea8a2e]{opacity:1;background:transparent;align-items:flex-end;justify-content:flex-end;padding:12px;pointer-events:none}.cover-play-btn[data-v-2cea8a2e]{width:48px;height:48px;font-size:28px;pointer-events:auto}}.diff-badge-large[data-v-2cea8a2e]{z-index:3}.review-section[data-v-2cea8a2e]{margin-top:20px;padding:16px;border-radius:8px;background:var(--glass-surface)}.review-list[data-v-2cea8a2e]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.review-item[data-v-2cea8a2e]{display:flex;gap:10px;align-items:flex-start}.review-ts[data-v-2cea8a2e]{color:var(--text-secondary);font-size:.85rem;width:180px}.review-body[data-v-2cea8a2e]{flex:1}.review-detail[data-v-2cea8a2e]{color:var(--text-secondary);font-size:.95rem}.comments-section[data-v-2cea8a2e]{margin-top:20px;padding:16px;border-radius:8px;background:var(--glass-surface)}.comments-section h3[data-v-2cea8a2e]{margin-bottom:20px;color:var(--text-primary)}.comment-user-link[data-v-2cea8a2e]{color:inherit;text-decoration:none}.comment-user-link[data-v-2cea8a2e]:hover{color:var(--text-accent);text-decoration:underline}.edited-tag[data-v-2cea8a2e]{color:var(--text-secondary);margin-left:4px}.comment-item[data-v-2cea8a2e]{display:flex;gap:10px;padding:10px;border-radius:8px;background:var(--glass-surface);margin-bottom:8px;align-items:flex-start}.avatar-link[data-v-2cea8a2e]{display:inline-block;width:40px;height:40px;border-radius:50%;overflow:hidden;flex:0 0 40px;border:2px solid rgba(0,0,0,.06)}.comment-avatar[data-v-2cea8a2e]{width:100%;height:100%;object-fit:cover;display:block}.comment-body[data-v-2cea8a2e]{flex:1}.comment-header[data-v-2cea8a2e]{display:flex;gap:12px;align-items:center}.comment-actions[data-v-2cea8a2e]{margin-left:auto;display:flex;gap:8px}.comment-actions .btn[data-v-2cea8a2e]{background:transparent;border:1px solid var(--glass-border);padding:6px 8px;border-radius:6px;color:var(--text-secondary);font-size:.85rem;cursor:pointer}.comment-actions .btn[data-v-2cea8a2e]:hover{background:var(--glass-surface);border-color:var(--primary-color)}.comment-actions .btn-danger[data-v-2cea8a2e]{border-color:#ff475780;color:#ff4757}.comment-actions .btn-danger[data-v-2cea8a2e]:hover{background:#ff47571a;border-color:#ff4757}.comment-edit[data-v-2cea8a2e]{margin-top:8px}.edit-actions[data-v-2cea8a2e]{display:flex;gap:8px;margin-top:8px}.comment-meta[data-v-2cea8a2e]{color:var(--text-secondary);margin-bottom:4px}.comment-content[data-v-2cea8a2e]{white-space:pre-wrap;color:var(--text-primary)}.comment-form[data-v-2cea8a2e]{display:flex;flex-direction:column;gap:10px;margin-top:20px}.comment-form .form-input[data-v-2cea8a2e]{padding:10px;border-radius:8px;border:1px solid var(--glass-border);background:var(--input-bg);color:var(--text-primary);font-family:inherit;resize:vertical}.comment-form .btn-primary[data-v-2cea8a2e]{padding:10px 20px;border-radius:8px;background:var(--primary-color);color:#fff;border:none;cursor:pointer;font-weight:600;align-self:flex-start}.comment-form .btn-primary[data-v-2cea8a2e]:hover{opacity:.9;transform:translateY(-1px)}.empty-msg[data-v-2cea8a2e]{color:var(--text-secondary);text-align:center;padding:20px;font-size:.9rem}@media(max-width:600px){.comment-header[data-v-2cea8a2e]{flex-direction:column;align-items:flex-start}.comment-actions[data-v-2cea8a2e]{margin-left:0;margin-top:6px}.comment-actions .btn[data-v-2cea8a2e]{padding:6px;font-size:.8rem}}@media(min-width:1000px){.detail-layout[data-v-2cea8a2e]{display:grid;grid-template-columns:320px 1fr;gap:24px}.info-section[data-v-2cea8a2e]{grid-column:2}}@media(max-width:999px){.review-section[data-v-2cea8a2e]{margin-top:18px}}.diff-badge-large.Drizzle[data-v-2cea8a2e],.diff-badge-large.Easy[data-v-2cea8a2e]{background:#22d3ee;color:#000}.diff-badge-large.Sprinkle[data-v-2cea8a2e],.diff-badge-large.Normal[data-v-2cea8a2e]{background:#facc15;color:#000}.diff-badge-large.Cloudburst[data-v-2cea8a2e],.diff-badge-large.Hard[data-v-2cea8a2e]{background:#f87171;color:#fff}.diff-badge-large.Clear[data-v-2cea8a2e],.diff-badge-large.Insane[data-v-2cea8a2e],.diff-badge-large.IN[data-v-2cea8a2e]{background:#c084fc;color:#fff}.diff-badge-large.Special[data-v-2cea8a2e],.diff-badge-large.Another[data-v-2cea8a2e],.diff-badge-large.AT[data-v-2cea8a2e]{background:#a8a29e;color:#fff}.diff-badge-large.Extreme[data-v-2cea8a2e]{background:#ef4444;color:#fff}.info-section[data-v-2cea8a2e]{flex:1;display:flex;flex-direction:column}.title-row[data-v-2cea8a2e]{display:flex;align-items:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}.chart-title[data-v-2cea8a2e]{font-size:2.5rem;margin:0;line-height:1.2}.status-badge[data-v-2cea8a2e]{padding:6px 12px;border-radius:12px;font-size:.85rem;font-weight:600;white-space:nowrap}.status-badge.pending[data-v-2cea8a2e]{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.5)}.status-badge.rejected[data-v-2cea8a2e]{background:#ff475733;color:#ff4757;border:1px solid rgba(255,71,87,.5)}.info-grid[data-v-2cea8a2e]{display:grid;gap:15px;margin-bottom:30px}.info-item[data-v-2cea8a2e]{display:flex;align-items:center;font-size:1.1rem}.label[data-v-2cea8a2e]{width:100px;color:var(--text-secondary);font-weight:500}.value[data-v-2cea8a2e]{color:var(--text-primary);font-weight:600}.uploader-row[data-v-2cea8a2e]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.uploader-link[data-v-2cea8a2e]{display:inline-flex;align-items:center;gap:8px;line-height:1.2;color:var(--text-primary);font-weight:600;text-decoration:none}.uploader-link:hover .uploader-name[data-v-2cea8a2e]{text-decoration:underline}.uploader-avatar[data-v-2cea8a2e]{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:0 0 auto;display:block;background:var(--glass-surface)}.uploader-name[data-v-2cea8a2e]{line-height:1.2}.btn-tiny[data-v-2cea8a2e]{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 14px;font-size:.78rem;line-height:1;background:var(--primary-color);color:#fff;border:none;border-radius:9999px;cursor:pointer}.action-buttons[data-v-2cea8a2e]{display:flex;flex-wrap:wrap;gap:15px;margin-top:auto}.btn-action[data-v-2cea8a2e]{padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;border:none;display:inline-flex;align-items:center;justify-content:center}.btn-action.primary[data-v-2cea8a2e]{background:var(--primary-color);color:#fff;flex:1 1 100%;font-size:1.1rem;padding:12px 24px}.btn-action.secondary[data-v-2cea8a2e]{background:var(--glass-surface);border:1px solid var(--glass-border);color:var(--text-primary);flex:1}.btn-action.danger[data-v-2cea8a2e]{background:#ff475733;border:1px solid rgba(255,71,87,.5);color:#ff4757;flex:1}.btn-action.danger[data-v-2cea8a2e]:hover{background:#ff47574d;border-color:#ff4757}.btn-action.warning[data-v-2cea8a2e]{background:#fa03;border:1px solid rgba(255,170,0,.5);color:#fa0;flex:1}.btn-action.warning[data-v-2cea8a2e]:hover{background:#ffaa004d;border-color:#fa0}.btn-action.liked[data-v-2cea8a2e]{background:#ff475733;border-color:#ff475780;color:#ff4757}.btn-action.liked[data-v-2cea8a2e]:hover{background:#ff47574d;border-color:#ff4757}.btn-action[data-v-2cea8a2e]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}.btn-action[data-v-2cea8a2e]:disabled{opacity:.6;cursor:not-allowed;transform:none}.description-section[data-v-2cea8a2e]{padding-top:30px;border-top:1px solid var(--glass-border)}.description-section h3[data-v-2cea8a2e]{margin-bottom:15px;color:var(--text-primary)}.desc-text[data-v-2cea8a2e]{color:var(--text-secondary);line-height:1.8;white-space:pre-wrap}.loading[data-v-2cea8a2e],.error[data-v-2cea8a2e]{text-align:center;font-size:1.5rem;margin-top:100px;color:var(--text-secondary)}.detail-skeleton[data-v-2cea8a2e]{padding-top:var(--space-4)}.tabs-section[data-v-2cea8a2e]{margin-top:40px;padding-top:40px;border-top:1px solid var(--glass-border);width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.tabs-nav-wrapper[data-v-2cea8a2e]{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;position:relative}.tabs-nav[data-v-2cea8a2e]{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid rgba(255,255,255,.1);width:100%;max-width:100%;min-width:0;box-sizing:border-box;position:relative}.tab-btn[data-v-2cea8a2e]{padding:12px 24px;background:transparent;border:none;color:var(--text-secondary);font-size:16px;cursor:pointer;transition:all .3s;border-bottom:3px solid transparent;margin-bottom:-2px}.tab-btn[data-v-2cea8a2e]:hover{color:var(--text-primary)}.tab-btn.active[data-v-2cea8a2e]{color:var(--text-primary);border-bottom-color:var(--text-accent);font-weight:600}.tab-content[data-v-2cea8a2e]{animation:fadeIn-2cea8a2e .3s ease-in}@keyframes fadeIn-2cea8a2e{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.info-details[data-v-2cea8a2e]{padding:20px;background:#ffffff08;border-radius:12px}.detail-grid[data-v-2cea8a2e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:15px}.detail-item[data-v-2cea8a2e]{display:flex;flex-direction:column;gap:5px}.detail-item strong[data-v-2cea8a2e]{color:var(--text-secondary);font-size:14px}.detail-item span[data-v-2cea8a2e]{color:var(--text-primary);font-size:16px}loading-text[data-v-2cea8a2e],.empty-text[data-v-2cea8a2e]{text-align:center;padding:40px;color:var(--text-secondary);font-size:16px}.leaderboard-list[data-v-2cea8a2e]{display:flex;flex-direction:column;gap:12px}.leaderboard-item[data-v-2cea8a2e]{display:grid;grid-template-columns:60px 1fr auto auto;gap:20px;align-items:center;padding:16px 20px;background:#ffffff08;border-radius:12px;transition:all .3s;border:1px solid rgba(255,255,255,.05)}.leaderboard-item[data-v-2cea8a2e]:hover{background:#ffffff0f;transform:translate(4px)}.leaderboard-item.top-1[data-v-2cea8a2e]{background:linear-gradient(135deg,#ffd7001a,#ffa5000d);border-color:#ffd7004d}.leaderboard-item.top-2[data-v-2cea8a2e]{background:linear-gradient(135deg,#c0c0c01a,#a9a9a90d);border-color:#c0c0c04d}.leaderboard-item.top-3[data-v-2cea8a2e]{background:linear-gradient(135deg,#cd7f321a,#b873330d);border-color:#cd7f324d}.rank-number[data-v-2cea8a2e]{font-size:24px;font-weight:700;text-align:center;color:#667eea}.top-1 .rank-number[data-v-2cea8a2e]{color:gold}.top-2 .rank-number[data-v-2cea8a2e]{color:silver}.top-3 .rank-number[data-v-2cea8a2e]{color:#cd7f32}.player-info-lb[data-v-2cea8a2e]{display:flex;flex-direction:column;gap:4px}.player-name[data-v-2cea8a2e]{font-size:16px;font-weight:600;color:var(--text-primary)}.play-time[data-v-2cea8a2e]{font-size:12px;color:var(--text-secondary)}.score-details[data-v-2cea8a2e]{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.score-value[data-v-2cea8a2e]{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:.5px}.score-meta[data-v-2cea8a2e]{display:flex;gap:6px;align-items:center}.rank-badge[data-v-2cea8a2e],.achievement-badge[data-v-2cea8a2e]{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:700;color:#000}.achievement-badge[data-v-2cea8a2e]{animation:pulse-2cea8a2e 2s ease-in-out infinite}@keyframes pulse-2cea8a2e{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.acc-value[data-v-2cea8a2e]{font-size:13px;color:var(--text-secondary)}.reality-value[data-v-2cea8a2e]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;background:#667eea1a;border-radius:8px;border:1px solid rgba(102,126,234,.2)}.reality-label[data-v-2cea8a2e]{font-size:11px;color:#ffffff80;text-transform:uppercase}.reality-num[data-v-2cea8a2e]{font-size:18px;font-weight:700;color:#667eea}@media(max-width:768px){.page-container[data-v-2cea8a2e]{padding-top:var(--header-height);padding-left:16px;padding-right:16px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.chart-detail[data-v-2cea8a2e]{padding:20px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.cover-wrapper[data-v-2cea8a2e]{width:100%;max-width:100%}.chart-title[data-v-2cea8a2e]{font-size:1.8rem}.info-item[data-v-2cea8a2e]{font-size:1rem}.label[data-v-2cea8a2e]{width:80px;font-size:.9rem}.value[data-v-2cea8a2e]{font-size:.95rem}.action-buttons[data-v-2cea8a2e]{flex-direction:column;gap:12px}.btn-action[data-v-2cea8a2e]{width:100%!important;flex:1 1 100%!important;text-align:center}.btn-action.primary[data-v-2cea8a2e]{font-size:1rem}.leaderboard-item[data-v-2cea8a2e]{grid-template-columns:40px 1fr;gap:12px}.score-details[data-v-2cea8a2e]{grid-column:2;align-items:flex-start}.reality-value[data-v-2cea8a2e]{grid-column:2;align-self:flex-start}.rank-number[data-v-2cea8a2e]{font-size:20px}.tabs-section[data-v-2cea8a2e]{width:100%;max-width:100%;overflow:hidden}.tabs-nav-wrapper[data-v-2cea8a2e]{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent;-ms-overflow-style:-ms-autohiding-scrollbar}.tabs-nav-wrapper[data-v-2cea8a2e]::-webkit-scrollbar{height:4px}.tabs-nav-wrapper[data-v-2cea8a2e]::-webkit-scrollbar-track{background:transparent}.tabs-nav-wrapper[data-v-2cea8a2e]::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.tabs-nav[data-v-2cea8a2e]{overflow:visible;width:max-content;min-width:100%;box-sizing:border-box}.tab-btn[data-v-2cea8a2e]{font-size:14px;padding:10px 16px;white-space:nowrap;flex-shrink:0;box-sizing:border-box}}.audio-player-wrapper[data-v-2cea8a2e]{margin-top:20px}.custom-audio-player[data-v-2cea8a2e]{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:16px;padding:16px 20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px #0000001a;transition:all .3s ease}.custom-audio-player[data-v-2cea8a2e]:hover{box-shadow:0 6px 20px #00000026;border-color:var(--primary-color)}.player-controls[data-v-2cea8a2e]{display:flex;align-items:center;gap:16px}.play-pause-btn[data-v-2cea8a2e]{width:48px;height:48px;border-radius:50%;background:var(--primary-color);border:none;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 8px #0003}.play-pause-btn[data-v-2cea8a2e]:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.play-pause-btn[data-v-2cea8a2e]:active{transform:scale(.95)}.progress-section[data-v-2cea8a2e]{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.time-display[data-v-2cea8a2e]{display:flex;align-items:center;gap:4px;font-size:.85rem;color:var(--text-secondary);font-weight:500}.progress-bar[data-v-2cea8a2e]{position:relative;height:6px;background:#ffffff1a;border-radius:3px;cursor:pointer;overflow:visible;user-select:none;-webkit-user-select:none}.progress-track[data-v-2cea8a2e]{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:3px;background:#ffffff1a}.progress-fill[data-v-2cea8a2e]{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--primary-color),var(--text-accent));border-radius:3px;transition:width .1s linear;z-index:1}.progress-handle[data-v-2cea8a2e]{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;z-index:2;opacity:0;transition:opacity .2s ease,transform .2s ease,width .2s ease,height .2s ease;cursor:grab}.progress-handle[data-v-2cea8a2e]:active{cursor:grabbing}.progress-handle.dragging[data-v-2cea8a2e]{opacity:1;transform:translate(-50%,-50%) scale(1.3);width:18px;height:18px;box-shadow:0 4px 12px #0006}.progress-bar:hover .progress-handle[data-v-2cea8a2e],.progress-bar:active .progress-handle[data-v-2cea8a2e]{opacity:1}.volume-section[data-v-2cea8a2e]{display:flex;align-items:center;gap:10px;flex-shrink:0}.volume-btn[data-v-2cea8a2e]{width:36px;height:36px;border-radius:8px;background:transparent;border:1px solid var(--glass-border);color:var(--text-primary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.volume-btn[data-v-2cea8a2e]:hover{background:var(--glass-surface);border-color:var(--primary-color);transform:scale(1.05)}.volume-bar[data-v-2cea8a2e]{position:relative;width:80px;height:4px;background:#ffffff1a;border-radius:2px;cursor:pointer;overflow:visible;user-select:none;-webkit-user-select:none}.volume-track[data-v-2cea8a2e]{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background:#ffffff1a}.volume-fill[data-v-2cea8a2e]{position:absolute;top:0;left:0;height:100%;background:var(--primary-color);border-radius:2px;transition:width .1s ease;z-index:1}.volume-handle[data-v-2cea8a2e]{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;z-index:2;opacity:0;transition:opacity .2s ease,transform .2s ease,width .2s ease,height .2s ease;cursor:grab}.volume-handle[data-v-2cea8a2e]:active{cursor:grabbing}.volume-handle.dragging[data-v-2cea8a2e]{opacity:1;transform:translate(-50%,-50%) scale(1.3);width:16px;height:16px;box-shadow:0 4px 10px #0006}.volume-bar:hover .volume-handle[data-v-2cea8a2e],.volume-bar:active .volume-handle[data-v-2cea8a2e]{opacity:1}@media(max-width:768px){.custom-audio-player[data-v-2cea8a2e]{padding:12px 16px}.player-controls[data-v-2cea8a2e]{gap:12px}.play-pause-btn[data-v-2cea8a2e]{width:44px;height:44px;font-size:18px}.progress-section[data-v-2cea8a2e]{gap:6px}.time-display[data-v-2cea8a2e]{font-size:.8rem}.volume-section[data-v-2cea8a2e]{gap:8px}.volume-btn[data-v-2cea8a2e]{width:32px;height:32px;font-size:16px}.volume-bar[data-v-2cea8a2e]{width:50px}}@media(max-width:480px){.volume-bar[data-v-2cea8a2e]{display:none}.volume-btn[data-v-2cea8a2e]{width:36px;height:36px}}.page-container[data-v-64115b70]{min-height:100vh;padding-top:calc(var(--header-height) + var(--space-8))}.content-wrapper[data-v-64115b70]{max-width:900px;margin:0 auto;padding:0 var(--space-5) var(--space-16)}.article-card[data-v-64115b70]{padding:var(--space-6)}.cover-image-wrapper[data-v-64115b70]{margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-6)) var(--space-5) calc(-1 * var(--space-6));border-radius:var(--radius-md) var(--radius-md) 0 0}.cover-image[data-v-64115b70]{width:100%;max-width:100%;height:auto;object-fit:contain;object-position:center;display:block}.title[data-v-64115b70]{font-size:var(--fs-xl);margin:0 0 var(--space-2);color:var(--text-primary)}.meta-info[data-v-64115b70]{color:var(--text-secondary);margin-bottom:var(--space-3)}.divider[data-v-64115b70]{height:1px;background:var(--glass-border);margin:var(--space-5) 0}.comments-section[data-v-64115b70]{margin-top:var(--space-3)}.comments-title[data-v-64115b70]{font-size:var(--fs-md);margin:0 0 var(--space-4);color:var(--text-primary)}.comment-user-link[data-v-64115b70]{color:inherit;text-decoration:none}.comment-user-link[data-v-64115b70]:hover{color:var(--text-accent);text-decoration:underline}.edited-tag[data-v-64115b70]{color:var(--text-secondary);margin-left:4px}.comments-loading[data-v-64115b70]{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);padding:var(--space-4)}.spinner--sm[data-v-64115b70]{width:20px;height:20px;border:3px solid var(--color-surface-sunken);border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.login-hint[data-v-64115b70]{color:var(--text-secondary);font-size:var(--fs-sm);margin-top:var(--space-3)}.comment-item[data-v-64115b70]{display:flex;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--glass-surface);margin-bottom:var(--space-2);align-items:flex-start}.avatar-link[data-v-64115b70]{display:inline-block;width:40px;height:40px;border-radius:50%;overflow:hidden;flex:0 0 40px;border:2px solid var(--color-border)}.comment-avatar[data-v-64115b70]{width:100%;height:100%;object-fit:cover;display:block}.comment-body[data-v-64115b70]{flex:1;min-width:0}.comment-header[data-v-64115b70]{display:flex;gap:var(--space-3);align-items:center}.comment-actions[data-v-64115b70]{margin-left:auto;display:flex;gap:var(--space-2)}.btn[data-v-64115b70]{background:transparent;border:1px solid var(--glass-border);padding:6px 8px;border-radius:var(--radius-xs);color:var(--text-secondary);font-size:var(--fs-sm)}.comment-edit[data-v-64115b70]{margin-top:var(--space-2)}.edit-actions[data-v-64115b70]{display:flex;gap:var(--space-2);margin-top:var(--space-2)}@media(max-width:600px){.comment-header[data-v-64115b70]{flex-direction:column;align-items:flex-start}.comment-actions[data-v-64115b70]{margin-left:0;margin-top:6px}.btn[data-v-64115b70]{padding:6px;font-size:var(--fs-sm)}}.comment-meta[data-v-64115b70]{color:var(--text-secondary);margin-bottom:var(--space-1)}.comment-content[data-v-64115b70]{white-space:pre-wrap}.comment-form[data-v-64115b70]{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.form-input[data-v-64115b70]{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--input-bg);color:var(--text-primary)}.milune-page[data-v-3d266e2e]{padding-top:calc(var(--header-height) + 24px);max-width:1100px;margin:0 auto;padding-left:20px;padding-right:20px;padding-bottom:60px}.milune-head[data-v-3d266e2e]{display:flex;align-items:center;gap:16px;margin-bottom:16px}.back-btn[data-v-3d266e2e]{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-surface);color:var(--text-primary);cursor:pointer}.head-info[data-v-3d266e2e]{min-width:0}.milune-title[data-v-3d266e2e]{margin:0;font-size:1.2rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.milune-sub[data-v-3d266e2e]{margin:2px 0 0;font-size:.8rem;color:var(--text-secondary)}.player-wrap[data-v-3d266e2e]{position:relative;padding:0;overflow:hidden;aspect-ratio:16 / 9}.milune-canvas[data-v-3d266e2e]{display:block;width:100%;height:100%}.overlay[data-v-3d266e2e]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#080a14b8;color:#fff}.click-overlay[data-v-3d266e2e]{cursor:pointer}.err-icon[data-v-3d266e2e]{font-size:2.4rem;color:#f87171}.overlay p[data-v-3d266e2e]{margin:0;color:#ffffffd9}.overlay-hint[data-v-3d266e2e]{color:#fff!important}.info-overlay[data-v-3d266e2e]{background:linear-gradient(#080a14db,#080a14f0)}.info-cover[data-v-3d266e2e]{position:absolute;left:50%;top:36.9%;width:43.7%;height:43.7%;object-fit:cover;border-radius:14px;box-shadow:0 12px 40px #00000080;animation:info-cover-in-3d266e2e .4s ease-out both}@keyframes info-cover-in-3d266e2e{0%{opacity:0;transform:translate(-50%,-50%) translateY(10%)}to{opacity:1;transform:translate(-50%,-50%) translateY(0)}}.info-title-row[data-v-3d266e2e]{position:absolute;left:0;right:0;top:63.7%;text-align:center;animation:info-text-in-3d266e2e .6s ease-out .5s both}.info-title[data-v-3d266e2e]{display:block;font-size:clamp(15px,1.75vh,24px);font-weight:700;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6)}.info-diff[data-v-3d266e2e]{display:block;margin-top:1.32em;font-size:clamp(10px,1.23vh,17px);color:#ebf0ffd9}@keyframes info-text-in-3d266e2e{0%{opacity:0;transform:translate(.08em)}to{opacity:1;transform:translate(0)}}.info-meta[data-v-3d266e2e]{position:absolute;left:40%;top:73.5%;margin:0;text-align:left;font-size:clamp(11px,1.3vh,17px);line-height:1.35;color:#e8ecf5;animation:info-meta-in-3d266e2e .5s ease-out 1.2s both}.info-meta p[data-v-3d266e2e]{margin:0}.meta-label[data-v-3d266e2e]{display:inline-block;min-width:12.3em;margin-right:.5em;color:#dee8fae0;font-weight:600}@keyframes info-meta-in-3d266e2e{0%{opacity:0;transform:translate(-6vw)}to{opacity:1;transform:translate(0)}}.big-play[data-v-3d266e2e]{width:84px;height:84px;border-radius:50%;border:none;background:var(--primary-color, #6c8cbf);color:#fff;font-size:2.6rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.auto-play-btn[data-v-3d266e2e]{padding:12px 34px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:linear-gradient(135deg,var(--primary-color, #6c8cbf),#46638f);color:#fff;font-size:1.05rem;font-weight:600;letter-spacing:2px;cursor:pointer;box-shadow:0 4px 16px #0006}.spinner[data-v-3d266e2e]{width:32px;height:32px;border-radius:50%;border:3px solid var(--glass-border);border-top-color:var(--text-accent);animation:mil-spin-3d266e2e .9s linear infinite}@keyframes mil-spin-3d266e2e{to{transform:rotate(360deg)}}.ctl-btn[data-v-3d266e2e]{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-surface);color:var(--text-primary);cursor:pointer;white-space:nowrap}.milune-note[data-v-3d266e2e]{margin:0;font-size:.8rem;color:var(--text-secondary)}.hud[data-v-3d266e2e]{position:absolute;top:calc(var(--ch, 450px) * .044444);right:calc(var(--cw, 800px) * .0265625);z-index:3;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none;font-variant-numeric:tabular-nums;text-shadow:0 1px 8px rgba(0,0,0,.6)}.hud-score[data-v-3d266e2e]{font-weight:700;font-size:calc(var(--ch, 450px) / 20.88);line-height:1;color:#fff;letter-spacing:1px}.hud-acc[data-v-3d266e2e]{margin-top:calc(var(--ch, 450px) * .00674);color:#ffffffb3;font-size:calc(var(--ch, 450px) / 27);line-height:1}.top-info[data-v-3d266e2e]{position:absolute;left:min(var(--ch, 450px) * .2734375,var(--cw, 800px) * .0984375);top:calc(var(--ch, 450px) * .051945);z-index:3;display:flex;flex-direction:column;gap:calc(var(--ch, 450px) * .008);max-width:calc(var(--cw, 800px) * .4);pointer-events:none;text-shadow:0 1px 8px rgba(0,0,0,.6)}.top-title[data-v-3d266e2e]{color:#fff;font-size:calc(var(--ch, 450px) / 27.72);line-height:1.25;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-diff[data-v-3d266e2e]{color:#ffffffb3;font-size:calc(var(--ch, 450px) / 37.8);line-height:1.25;white-space:nowrap}.result-overlay[data-v-3d266e2e]{z-index:5;display:block}.result-overlay p[data-v-3d266e2e]{color:#fff}.result-panel[data-v-3d266e2e]{position:absolute;left:8%;right:8%;top:24.8%;height:42%;display:flex;gap:calc(var(--cw, 800px) * .04);animation:rp-slide-up-3d266e2e 1.2s cubic-bezier(.16,1,.3,1) both}@keyframes rp-slide-up-3d266e2e{0%{transform:translateY(var(--ch, 450px))}to{transform:translateY(0)}}.rp-left[data-v-3d266e2e]{position:relative;flex:1;min-width:0;border-radius:calc((var(--cw, 800px) + var(--ch, 450px)) / 180);overflow:hidden;background:#ffffff0f}.rp-cover[data-v-3d266e2e]{width:100%;height:100%;object-fit:cover;display:block}.rp-caption[data-v-3d266e2e]{position:absolute;left:0;right:0;bottom:0;padding:calc(var(--ch, 450px) * .05) 5% calc(var(--ch, 450px) * .015);display:flex;align-items:baseline;justify-content:space-between;gap:10px;background:linear-gradient(transparent,#000000b8);box-sizing:border-box}.rp-title[data-v-3d266e2e]{font-weight:400;color:#fff;font-size:calc(var(--cw, 800px) * .02);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-diff[data-v-3d266e2e]{color:#fff;font-size:calc(var(--cw, 800px) * .02);line-height:1.25;white-space:nowrap;flex:none}.rp-right[data-v-3d266e2e]{position:relative;flex:1;min-width:0}.rp-score[data-v-3d266e2e]{position:absolute;left:19.8%;top:0;margin:0;font-size:calc(var(--ch, 450px) * .0514);line-height:1;font-weight:700;color:#fff;letter-spacing:1px;font-variant-numeric:tabular-nums;animation:rp-slide-x-3d266e2e .5s cubic-bezier(.16,1,.3,1) 1.1s both}.rp-acc[data-v-3d266e2e]{position:absolute;left:19.8%;top:13.5%;margin:0;font-size:calc(var(--ch, 450px) * .0431);line-height:1;color:#fffc;font-variant-numeric:tabular-nums;animation:rp-slide-x-3d266e2e .5s cubic-bezier(.16,1,.3,1) 1.1s both}@keyframes rp-slide-x-3d266e2e{0%{transform:translate(calc(var(--cw, 800px) * -.072))}to{transform:translate(0)}}.rp-grade[data-v-3d266e2e]{position:absolute;left:0;bottom:calc(74.2% - 20px);width:23.4%;display:block;animation:rp-grade-pop-3d266e2e .45s cubic-bezier(.16,1,.3,1) 1.3s both}@keyframes rp-grade-pop-3d266e2e{0%{opacity:0;transform:scale(1.19)}to{opacity:1;transform:scale(1)}}.rp-blocks[data-v-3d266e2e]{position:absolute;left:0;right:0;bottom:0;height:70%;display:flex;flex-direction:column;justify-content:space-between}.jb[data-v-3d266e2e]{height:26.67%;min-height:0;box-sizing:border-box;border-radius:999px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:calc(var(--ch, 450px) * .0328);font-weight:700;letter-spacing:.5px}.jb b[data-v-3d266e2e]{font-variant-numeric:tabular-nums}.jb-perfect[data-v-3d266e2e]{background:linear-gradient(90deg,#8ec5fc,#ddc4fc);color:#000000d9}.jb-good[data-v-3d266e2e]{background:linear-gradient(90deg,#87fdcb,#8ec6fc);color:#000000d9}.jb-bad[data-v-3d266e2e]{border:calc(var(--ch, 450px) * .0075) solid rgba(255,255,255,.4);color:#fffffff2}.result-bg[data-v-3d266e2e]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(18px) brightness(.62);transform:scale(1.12);pointer-events:none}.player-wrap .result-btn[data-v-3d266e2e]{position:absolute;z-index:3;display:inline-flex;align-items:center;justify-content:center;padding:.45em 1.2em;border:2px solid rgba(255,255,255,.9);border-radius:calc(var(--ch, 450px) * .015);background:#ffffff38;color:#fff;font-size:calc(var(--ch, 450px) * .034);font-weight:600;letter-spacing:2px;cursor:pointer;transition:background .15s ease,transform .15s ease}.result-btn[data-v-3d266e2e]:hover{background:#ffffff29}.result-btn[data-v-3d266e2e]:active{transform:scale(.97)}.result-retry[data-v-3d266e2e]{top:4.5%;left:3%}.result-continue[data-v-3d266e2e]{bottom:5.5%;right:3.5%;min-width:calc(var(--cw, 800px) * .085)}.rp-notscored[data-v-3d266e2e]{position:absolute;top:5%;right:5%;z-index:2;color:#ff4040;font-size:calc(var(--cw, 800px) * .0213);font-weight:600}.result-overlay .upload-hint[data-v-3d266e2e]{position:absolute;top:5.6%;right:3.5%;margin:0;font-size:calc(var(--ch, 450px) * .0405);color:#ffffffd9}.auto-toggle-row[data-v-3d266e2e]{display:inline-flex;align-items:center;gap:10px}.auto-toggle-label[data-v-3d266e2e]{font-size:.85rem;color:var(--text-secondary)}.auto-toggle[data-v-3d266e2e]{position:relative;width:46px;height:26px;border:1px solid var(--glass-border);border-radius:999px;background:#ffffff1a;cursor:pointer;transition:background .18s ease,border-color .18s ease;padding:0}.auto-toggle[data-v-3d266e2e]:disabled{opacity:.45;cursor:not-allowed}.auto-toggle .auto-toggle-knob[data-v-3d266e2e]{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .18s ease}.auto-toggle.on[data-v-3d266e2e]{background:linear-gradient(90deg,#8ec5fc,#ddc4fc);border-color:transparent}.auto-toggle.on .auto-toggle-knob[data-v-3d266e2e]{transform:translate(20px)}@media(max-width:767px){.auto-toggle[data-v-3d266e2e]{min-height:26px!important;min-width:46px!important}}.milune-foot[data-v-3d266e2e]{margin-top:12px;display:flex;flex-direction:column;align-items:center;gap:10px}.render-btn[data-v-3d266e2e]{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-surface);color:var(--text-primary);font-size:.9rem;cursor:pointer}.render-btn[data-v-3d266e2e]:disabled{opacity:.7;cursor:wait}.render-btn[data-v-3d266e2e]:not(:disabled):hover{border-color:var(--text-accent)}.upload-hint.ok[data-v-3d266e2e]{color:#4ade80}.upload-hint.warn[data-v-3d266e2e]{color:#f87171}.combo-overlay[data-v-3d266e2e]{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:calc(var(--ch, 450px) * .0954);pointer-events:none}.combo-num[data-v-3d266e2e]{margin:0;font-size:calc(var(--ch, 450px) * .0463);line-height:1;font-weight:900;color:#ffffffeb;text-shadow:0 2px 18px rgba(0,0,0,.55);font-variant-numeric:tabular-nums}.player-wrap button.pause-btn[data-v-3d266e2e]{position:absolute;top:calc(var(--ch, 450px) * .051945);left:calc(var(--cw, 800px) * .02921875);width:min(var(--ch, 450px) * .07222,var(--cw, 800px) * .040625);aspect-ratio:1;padding:0;border:none;background:transparent;cursor:pointer;opacity:.4;transition:opacity .15s ease}.pause-btn[data-v-3d266e2e]:hover{opacity:1}.pause-btn img[data-v-3d266e2e]{width:100%;height:100%;object-fit:contain;display:block}.debug-overlay[data-v-3d266e2e]{position:absolute;bottom:8px;left:8px;z-index:9;padding:6px 10px;margin:0;background:#000000c7;color:#4ade80;font:12px/1.7 monospace;border-radius:8px;pointer-events:none}.pause-overlay[data-v-3d266e2e]{background:#080a14d1;flex-direction:row;gap:4%}.pm-btn[data-v-3d266e2e]{border:none;background:transparent;cursor:pointer;padding:0;height:17%;transition:transform .15s ease,filter .15s ease}.pm-btn[data-v-3d266e2e]:hover{transform:scale(1.06);filter:brightness(1.15)}.pm-btn img[data-v-3d266e2e]{height:100%;width:auto;display:block}@media(max-width:767px){.overlay[data-v-3d266e2e]{gap:8px}.big-play[data-v-3d266e2e]{width:64px;height:64px;font-size:2rem}.overlay-hint[data-v-3d266e2e]{font-size:.88rem}.auto-play-btn[data-v-3d266e2e]{padding:10px 20px;font-size:.92rem;letter-spacing:1px;min-height:44px}.ctl-btn[data-v-3d266e2e]{padding:8px 12px;font-size:.9rem}.milune-sub[data-v-3d266e2e],.milune-note[data-v-3d266e2e]{font-size:.72rem}.render-btn[data-v-3d266e2e]{padding:8px 16px;font-size:.82rem}.auto-toggle-row[data-v-3d266e2e]{gap:8px}.auto-toggle-label[data-v-3d266e2e]{font-size:.78rem}}.play-hub[data-v-b5d65927]{padding-top:calc(var(--header-height) + 24px);padding-bottom:60px;max-width:1200px;margin:0 auto;padding-left:20px;padding-right:20px}.hub-head[data-v-b5d65927]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.hub-title[data-v-b5d65927]{margin:0;font-size:1.7rem;font-weight:800;color:var(--text-primary)}.hub-search[data-v-b5d65927]{width:min(320px,100%)}.hub-actions[data-v-b5d65927]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.hidden-input[data-v-b5d65927]{display:none}.upload-btn[data-v-b5d65927]{display:inline-flex;align-items:center;padding:9px 18px;border:1px solid var(--primary-color);border-radius:10px;background:var(--primary-color);color:#fff;font-weight:600;cursor:pointer;white-space:nowrap}.upload-btn[data-v-b5d65927]:disabled{opacity:.7;cursor:wait}.spin[data-v-b5d65927]{animation:hub-spin-b5d65927 .9s linear infinite}@keyframes hub-spin-b5d65927{to{transform:rotate(360deg)}}.modal-mask[data-v-b5d65927]{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;background:#060810a8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[data-v-b5d65927]{width:min(440px,100%);padding:26px 26px 22px;border-radius:18px}.modal-title[data-v-b5d65927]{margin:0;font-size:1.25rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-sub[data-v-b5d65927]{margin:6px 0 18px;font-size:.82rem;color:var(--text-secondary)}.param-row[data-v-b5d65927]{display:flex;align-items:center;gap:14px;margin-bottom:16px}.param-label[data-v-b5d65927]{width:70px;flex-shrink:0;font-size:.9rem;color:var(--text-secondary)}.seg[data-v-b5d65927]{display:inline-flex;border:1px solid var(--glass-border);border-radius:10px;overflow:hidden}.seg button[data-v-b5d65927]{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.88rem}.seg button.active[data-v-b5d65927]{background:var(--primary-color);color:#fff;font-weight:600}.speed-range[data-v-b5d65927]{flex:1;width:auto!important;accent-color:var(--primary-color)}.speed-val[data-v-b5d65927]{width:58px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:600}.modal-warn[data-v-b5d65927]{margin:0 0 14px;font-size:.82rem;color:#facc15}.modal-actions[data-v-b5d65927]{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.ctl-btn[data-v-b5d65927]{display:inline-flex;align-items:center;padding:9px 16px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-surface);color:var(--text-primary);cursor:pointer}.start-btn[data-v-b5d65927]{display:inline-flex;align-items:center;padding:9px 20px;border:none;border-radius:10px;background:var(--primary-color);color:#fff;font-weight:700;cursor:pointer}.chart-grid[data-v-b5d65927]{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.load-more-row[data-v-b5d65927]{display:flex;justify-content:center;margin-top:22px}.chart-card[data-v-b5d65927]{position:relative;padding:0;overflow:hidden;text-align:left;border:1px solid var(--glass-border);cursor:pointer;display:flex;flex-direction:column}.card-cover[data-v-b5d65927]{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;background:var(--glass-surface)}.card-body[data-v-b5d65927]{padding:12px 14px 14px;min-width:0}.card-title[data-v-b5d65927]{margin:0;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-meta[data-v-b5d65927]{margin:3px 0 0;font-size:.8rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-meta.subtle[data-v-b5d65927]{opacity:.75}.level-badge[data-v-b5d65927]{position:absolute;top:10px;right:10px;padding:3px 12px;border-radius:999px;background:#080a14b8;color:#fff;font-size:.78rem;font-weight:700;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media(max-width:767px){.play-hub[data-v-b5d65927]{padding-top:calc(var(--header-height-mobile) + 16px)}.hub-head[data-v-b5d65927]{flex-direction:column;align-items:stretch;gap:12px}.hub-actions[data-v-b5d65927]{width:100%;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px}.hub-actions .upload-btn[data-v-b5d65927]{width:100%;justify-content:center}.hub-search[data-v-b5d65927]{width:100%!important}.chart-grid[data-v-b5d65927]{gap:12px}.chart-card[data-v-b5d65927]{padding:0!important;margin-bottom:0!important}.param-row[data-v-b5d65927]{flex-direction:column;align-items:stretch;gap:8px}.param-label[data-v-b5d65927]{width:auto}.seg[data-v-b5d65927]{align-self:flex-start}.seg button[data-v-b5d65927],.ctl-btn[data-v-b5d65927],.start-btn[data-v-b5d65927],.upload-btn[data-v-b5d65927]{min-height:44px;padding:10px 18px}.modal[data-v-b5d65927]{width:calc(100% - 32px);padding:20px 18px 18px}.modal-actions[data-v-b5d65927]{flex-direction:column}.modal-actions .ctl-btn[data-v-b5d65927],.modal-actions .start-btn[data-v-b5d65927]{width:100%;justify-content:center}}.page-container[data-v-c44f852e]{min-height:100vh;padding-top:100px;padding-bottom:60px}.content-wrapper[data-v-c44f852e]{max-width:900px;width:92%;margin:0 auto}.header-section[data-v-c44f852e]{text-align:center;margin-bottom:28px}.page-title[data-v-c44f852e]{margin:0 0 8px;font-size:2rem}.subtitle[data-v-c44f852e]{margin:0;color:var(--text-secondary)}.filter-row[data-v-c44f852e]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px}.chip[data-v-c44f852e]{border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-secondary);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:.85rem}.chip.active[data-v-c44f852e]{color:#fff;background:var(--accent-gradient, linear-gradient(135deg, #6a8dff, #8e6aff));border-color:transparent}.total-hint[data-v-c44f852e]{margin-left:auto;color:var(--text-secondary);font-size:.85rem}.ticket-list[data-v-c44f852e]{display:flex;flex-direction:column;gap:10px}.ticket-row[data-v-c44f852e]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--glass-border);border-radius:var(--card-radius, 14px);cursor:pointer}.row-main[data-v-c44f852e]{display:flex;align-items:center;gap:10px;min-width:0}.row-subject[data-v-c44f852e]{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-tag[data-v-c44f852e]{flex:0 0 auto;font-size:.75rem;padding:2px 8px;border-radius:6px;color:var(--text-secondary);border:1px solid var(--glass-border)}.row-side[data-v-c44f852e]{display:flex;align-items:center;gap:10px;flex:0 0 auto}.status-badge[data-v-c44f852e]{font-size:.78rem;padding:3px 10px;border-radius:999px;border:1px solid transparent}.status-badge[data-status=open][data-v-c44f852e]{color:#ffa502;border-color:#ffa50273;background:#ffa5021f}.status-badge[data-status=in_progress][data-v-c44f852e]{color:#4fa3ff;border-color:#4fa3ff73;background:#4fa3ff1f}.status-badge[data-status=resolved][data-v-c44f852e]{color:#2ed573;border-color:#2ed57373;background:#2ed5731f}.status-badge[data-status=rejected][data-v-c44f852e],.status-badge[data-status=auto_closed][data-v-c44f852e]{color:var(--text-secondary);border-color:var(--glass-border);background:#8080801a}.row-time[data-v-c44f852e]{color:var(--text-secondary);font-size:.78rem;white-space:nowrap}.detail-panel[data-v-c44f852e]{margin-top:22px;padding:18px;border:1px solid var(--glass-border);border-radius:var(--card-radius, 16px)}.detail-head[data-v-c44f852e]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.detail-title[data-v-c44f852e]{margin:0 0 10px;font-size:1.05rem;color:var(--text-primary);word-break:break-word}.icon-btn[data-v-c44f852e]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.1rem;padding:4px;border-radius:8px}.icon-btn[data-v-c44f852e]:hover{color:var(--text-primary);background:#8080801f}.detail-meta[data-v-c44f852e]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;font-size:.82rem;color:var(--text-secondary)}.meta-link[data-v-c44f852e]{color:#4fa3ff;text-decoration:none}.closed-note[data-v-c44f852e]{margin-bottom:14px;padding:10px 12px;border-radius:10px;background:#ffa50214;border:1px solid rgba(255,165,2,.25);color:var(--text-primary);font-size:.86rem}.msg[data-v-c44f852e]{padding:10px 12px;border-radius:12px;background:#80808014;border:1px solid var(--glass-border);margin-bottom:10px}.msg.mine[data-v-c44f852e]{background:#4fa3ff14;border-color:#4fa3ff40}.msg.internal[data-v-c44f852e]{background:#ffa50212;border-color:#ffa5024d}.msg-head[data-v-c44f852e]{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.8rem;color:var(--text-secondary)}.msg-author[data-v-c44f852e]{color:var(--text-primary)}.internal-tag[data-v-c44f852e]{margin-left:6px;font-size:.72rem;padding:1px 6px;border-radius:6px;color:#ffa502;border:1px solid rgba(255,165,2,.4)}.msg-body[data-v-c44f852e]{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:.9rem}.msg-attachments[data-v-c44f852e]{margin-top:6px;display:flex;gap:10px;flex-wrap:wrap}.attach-link[data-v-c44f852e]{color:#4fa3ff;font-size:.82rem;text-decoration:none}.reply-box[data-v-c44f852e]{margin-top:14px}.reply-actions[data-v-c44f852e]{display:flex;justify-content:flex-end;margin-top:8px}.error-line[data-v-c44f852e]{color:#ff4757;font-size:.82rem;margin:6px 0 0}.closed-hint[data-v-c44f852e]{margin:12px 0 0;color:var(--text-secondary);font-size:.85rem}.user-list[data-v-c78e9a2f]{border-radius:var(--radius-md);background:var(--glass-surface);padding:var(--space-2) var(--space-4)}.list[data-v-c78e9a2f]{list-style:none;margin:0;padding:0}.user-list-item[data-v-c78e9a2f]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--glass-border);gap:var(--space-3)}.user-list-item[data-v-c78e9a2f]:last-child{border-bottom:none}.left[data-v-c78e9a2f]{display:flex;align-items:center;gap:14px;flex:1 1 auto;min-width:0}.avatar[data-v-c78e9a2f]{width:48px;height:48px;border-radius:50%;object-fit:cover;cursor:pointer;flex:0 0 48px;border:2px solid var(--glass-border);transition:transform .18s ease,border-color .18s ease}.avatar[data-v-c78e9a2f]:hover{transform:scale(1.06);border-color:var(--text-accent)}.meta[data-v-c78e9a2f]{min-width:0}.username[data-v-c78e9a2f]{font-weight:600;font-size:.98rem;cursor:pointer;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.username[data-v-c78e9a2f]:hover{color:var(--text-accent)}.sub[data-v-c78e9a2f]{color:var(--text-secondary);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dot[data-v-c78e9a2f]{margin:0 6px;opacity:.6}.right[data-v-c78e9a2f]{flex:0 0 auto}.btn-small[data-v-c78e9a2f]{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-4);min-height:40px;border-radius:var(--radius-full);border:none;cursor:pointer;white-space:nowrap;font-size:var(--fs-sm);font-weight:600;background:var(--primary-color, #6c8cbf);color:#fff;transition:opacity var(--dur-fast) var(--ease-standard)}.btn-small[data-v-c78e9a2f]:hover{opacity:.92}.btn-small[data-v-c78e9a2f]:disabled{opacity:.6;cursor:not-allowed}.btn-small.following[data-v-c78e9a2f]{background:var(--glass-surface);color:var(--text-primary);border:1px solid var(--glass-border)}.empty[data-v-c78e9a2f]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:var(--text-secondary);text-align:center}.empty-icon[data-v-c78e9a2f]{font-size:2rem;opacity:.5}.empty p[data-v-c78e9a2f]{margin:0;font-size:.9rem}.skeleton-list .user-list-item.skeleton[data-v-c78e9a2f]{opacity:.9;pointer-events:none}.skeleton-rect[data-v-c78e9a2f]{background:var(--color-surface-sunken);border-radius:var(--radius-xs)}.skeleton-rect.short[data-v-c78e9a2f]{width:120px;height:14px}.skeleton-rect.tiny[data-v-c78e9a2f]{width:70px;height:12px}.avatar.skeleton-rect[data-v-c78e9a2f]{width:48px;height:48px;border-radius:50%}.username.skeleton-rect[data-v-c78e9a2f]{height:14px;width:120px}@media(max-width:600px){.user-list-item[data-v-c78e9a2f]{align-items:stretch}.left[data-v-c78e9a2f]{gap:12px}.avatar[data-v-c78e9a2f]{width:52px;height:52px;flex:0 0 52px}.btn-small[data-v-c78e9a2f]{padding:8px 14px}}.page-container[data-v-ec7ab9c9]{min-height:100vh;padding-top:calc(var(--header-height) + var(--space-6))}.content-wrapper[data-v-ec7ab9c9]{max-width:1100px;margin:0 auto;padding:0 var(--space-5) var(--space-16)}.header-section[data-v-ec7ab9c9]{margin-bottom:var(--space-6)}.page-title[data-v-ec7ab9c9]{margin:0 0 var(--space-1);font-size:var(--fs-xl)}.subtitle[data-v-ec7ab9c9]{margin:0;color:var(--text-secondary);font-size:var(--fs-sm)}.article-card[data-v-ec7ab9c9]{padding:var(--space-6)}.load-more[data-v-ec7ab9c9]{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-3)}.load-more-btn[data-v-ec7ab9c9]{padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--glass-surface);color:var(--text-primary);font-weight:600;cursor:pointer;min-height:44px}.loading-text[data-v-ec7ab9c9]{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm)}.spinner--sm[data-v-ec7ab9c9]{width:20px;height:20px;border:3px solid var(--color-surface-sunken);border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.pagination[data-v-ec7ab9c9]{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-3);color:var(--text-secondary);font-size:var(--fs-sm)}button[data-v-ec7ab9c9]:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.page-container[data-v-ec7ab9c9]{padding-top:var(--header-height)}.article-card[data-v-ec7ab9c9]{padding:var(--space-4)}}.page-container[data-v-ba604194]{min-height:100vh;padding-top:calc(var(--header-height) + var(--space-6))}.content-wrapper[data-v-ba604194]{max-width:1100px;margin:0 auto;padding:0 var(--space-5) var(--space-16)}.header-section[data-v-ba604194]{margin-bottom:var(--space-6)}.page-title[data-v-ba604194]{margin:0 0 var(--space-1);font-size:var(--fs-xl)}.subtitle[data-v-ba604194]{margin:0;color:var(--text-secondary);font-size:var(--fs-sm)}.article-card[data-v-ba604194]{padding:28px}.load-more[data-v-ba604194]{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-3)}.load-more-btn[data-v-ba604194]{padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--glass-surface);color:var(--text-primary);font-weight:600;cursor:pointer;min-height:44px}.loading-text[data-v-ba604194]{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm)}.spinner--sm[data-v-ba604194]{width:20px;height:20px;border:3px solid var(--color-surface-sunken);border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.pagination[data-v-ba604194]{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-3);color:var(--text-secondary);font-size:var(--fs-sm)}button[data-v-ba604194]:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.page-container[data-v-ba604194]{padding-top:var(--header-height)}.article-card[data-v-ba604194]{padding:var(--space-4)}}.admin-toast-wrap[data-v-ee21ddec]{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:calc(100vw - var(--space-8))}.admin-toast[data-v-ee21ddec]{display:flex;align-items:center;gap:var(--space-3);min-width:220px;max-width:360px;min-height:44px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:600;color:var(--color-text);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);pointer-events:auto}.toast-icon[data-v-ee21ddec]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-full);flex:0 0 auto;color:var(--color-text-on-brand)}.toast-success .toast-icon[data-v-ee21ddec]{background:var(--color-success)}.toast-error .toast-icon[data-v-ee21ddec]{background:var(--color-danger)}.toast-info .toast-icon[data-v-ee21ddec]{background:var(--color-info)}.toast-msg[data-v-ee21ddec]{line-height:var(--lh-snug)}.toast-enter-active[data-v-ee21ddec],.toast-leave-active[data-v-ee21ddec]{transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.toast-enter-from[data-v-ee21ddec],.toast-leave-to[data-v-ee21ddec]{opacity:0;transform:translate(24px)}.toast-move[data-v-ee21ddec]{transition:transform var(--dur-base) var(--ease-out)}@media(max-width:480px){.admin-toast-wrap[data-v-ee21ddec]{top:var(--space-4);right:var(--space-4);left:var(--space-4);align-items:stretch}.admin-toast[data-v-ee21ddec]{max-width:none}}.confirm-overlay[data-v-b72e9afa]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:#0f172a8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:var(--space-5)}.confirm-card[data-v-b72e9afa]{width:100%;max-width:420px;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--color-surface-strong);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.confirm-title[data-v-b72e9afa]{margin:0 0 var(--space-3);font-size:var(--fs-md);font-weight:700;color:var(--color-text)}.confirm-message[data-v-b72e9afa]{margin:0 0 var(--space-6);font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--color-text-secondary)}.confirm-actions[data-v-b72e9afa]{display:flex;justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap}.overlay-enter-active[data-v-b72e9afa],.overlay-leave-active[data-v-b72e9afa]{transition:opacity var(--dur-base) var(--ease-standard)}.overlay-enter-from[data-v-b72e9afa],.overlay-leave-to[data-v-b72e9afa]{opacity:0}.overlay-enter-active .confirm-card[data-v-b72e9afa],.overlay-leave-active .confirm-card[data-v-b72e9afa]{transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.overlay-enter-from .confirm-card[data-v-b72e9afa]{opacity:0;transform:translateY(12px) scale(.96)}.overlay-leave-to .confirm-card[data-v-b72e9afa]{opacity:0;transform:translateY(8px) scale(.98)}@media(max-width:480px){.confirm-actions[data-v-b72e9afa]{flex-direction:column-reverse}.confirm-actions .adm-btn[data-v-b72e9afa]{width:100%}}:root{--adm-accent: var(--color-primary);--adm-accent-hover: var(--color-brand-600);--adm-accent-glow: var(--shadow-focus);--adm-card-bg: var(--color-surface);--adm-card-border: var(--color-border);--adm-card-shadow: var(--shadow-md);--adm-row-bg: var(--color-surface);--adm-row-hover: var(--color-surface-strong);--adm-row-border: var(--color-border)}.adm-card{background:var(--adm-card-bg);border:1px solid var(--adm-card-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--adm-card-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.adm-card+.adm-card{margin-top:var(--space-5)}.adm-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.adm-card-title{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:var(--space-2);letter-spacing:-.2px}.adm-card-subtitle{margin:var(--space-1) 0 0;font-size:var(--fs-sm);color:var(--color-text-secondary)}.adm-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5);margin-bottom:var(--space-6)}.adm-stat{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--adm-card-bg);border:1px solid var(--adm-card-border);box-shadow:var(--adm-card-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:relative;overflow:hidden;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-standard)}.adm-stat:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--adm-accent),transparent);opacity:0;transition:opacity var(--dur-base) var(--ease-standard)}.adm-stat:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--adm-accent) 35%,transparent)}.adm-stat:hover:before{opacity:1}.adm-stat-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex:0 0 auto;color:var(--color-text-on-brand);box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-out)}.adm-stat:hover .adm-stat-icon{transform:scale(1.05)}.adm-stat-icon svg{width:26px;height:26px}.adm-stat-value{font-size:var(--fs-2xl);font-weight:800;line-height:var(--lh-tight);color:var(--color-text);letter-spacing:-.5px;font-variant-numeric:tabular-nums}.adm-stat-label{font-size:var(--fs-sm);font-weight:500;color:var(--color-text-secondary);margin-top:var(--space-1)}.adm-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-sm);border:1px solid transparent;font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);white-space:nowrap;-webkit-user-select:none;user-select:none}.adm-btn:hover{transform:translateY(-1px)}.adm-btn:active{transform:translateY(.5px) scale(.99)}.adm-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.adm-btn-sm{min-height:36px;padding:0 var(--space-3);font-size:var(--fs-xs);border-radius:var(--radius-xs)}.adm-btn-primary{background:var(--color-primary);color:var(--color-text-on-brand);box-shadow:var(--shadow-sm)}.adm-btn-primary:hover{background:var(--adm-accent-hover)}.adm-btn-success{background:var(--color-success);color:var(--color-on-success)}.adm-btn-success:hover{filter:brightness(1.05)}.adm-btn-danger{background:var(--color-danger);color:var(--color-on-danger)}.adm-btn-danger:hover{filter:brightness(1.05)}.adm-btn-ghost{background:var(--color-surface-sunken);border-color:var(--color-border);color:var(--color-text)}.adm-btn-ghost:hover{background:color-mix(in srgb,var(--color-primary) 10%,transparent);border-color:color-mix(in srgb,var(--adm-accent) 40%,transparent);color:var(--adm-accent)}.adm-btn-outline{background:transparent;border-color:var(--adm-accent);color:var(--adm-accent)}.adm-btn-outline:hover{background:color-mix(in srgb,var(--adm-accent) 12%,transparent)}.adm-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-5)}.adm-toolbar .spacer{flex:1}.adm-search{position:relative;flex:1 1 240px;max-width:320px}.adm-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--color-text-secondary);pointer-events:none}.adm-search .adm-input{width:100%;padding-left:38px}.adm-tabs{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-wrap:wrap}.adm-tab-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-sm);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard)}.adm-tab-btn:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.adm-tab-btn.active{background:var(--color-surface-strong);color:var(--adm-accent);box-shadow:var(--shadow-xs)}.adm-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-1);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700;background:color-mix(in srgb,var(--adm-accent) 18%,transparent);color:var(--adm-accent)}.adm-tab-btn.active .adm-tab-count{background:var(--adm-accent);color:var(--color-text-on-brand)}.adm-form{display:grid;gap:var(--space-4)}.adm-form-row{display:grid;gap:var(--space-3)}.adm-form-row.two-cols{grid-template-columns:1fr 1fr}@media(max-width:640px){.adm-form-row.two-cols{grid-template-columns:1fr}}.adm-field{display:flex;flex-direction:column;gap:var(--space-2)}.adm-label{font-size:var(--fs-sm);font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.adm-input,.adm-select,.adm-textarea{padding:11px var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-strong);color:var(--color-text);font-size:var(--fs-base);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);width:100%;box-sizing:border-box}@media(max-width:767px){.adm-input,.adm-select,.adm-textarea{font-size:16px}}.adm-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px 16px;cursor:pointer;font-weight:500}html.dark .adm-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.adm-select option{background-color:#fff;color:#1e293b;padding:var(--space-2)}html.dark .adm-select option{background-color:#1e293b;color:#f8fafc}.adm-textarea{resize:vertical;min-height:95px;line-height:var(--lh-normal)}.adm-input:focus,.adm-select:focus,.adm-textarea:focus{outline:none;border-color:var(--adm-accent);box-shadow:var(--adm-accent-glow)}.adm-list{display:flex;flex-direction:column;gap:var(--space-3)}.adm-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--adm-row-bg);border:1px solid var(--adm-row-border);box-shadow:var(--shadow-xs);transition:transform var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard)}.adm-row:hover{transform:translateY(-2px);background:var(--adm-row-hover);border-color:color-mix(in srgb,var(--adm-accent) 35%,transparent);box-shadow:var(--shadow-md)}.adm-row-main{flex:1;min-width:0}.adm-row-title{margin:0;font-size:var(--fs-base);font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-row-meta{margin:var(--space-1) 0 0;font-size:var(--fs-sm);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:var(--lh-snug)}.adm-row-actions{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto;flex-wrap:wrap}.adm-thumb{width:58px;height:58px;object-fit:cover;border-radius:var(--radius-md);flex:0 0 auto;border:1px solid var(--color-border);background:var(--color-surface-sunken)}.adm-avatar{width:46px;height:46px;border-radius:var(--radius-full);object-fit:cover;flex:0 0 auto;border:2px solid var(--adm-card-border)}.adm-badge{display:inline-flex;align-items:center;gap:5px;padding:4px var(--space-3);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700;flex:0 0 auto;border:1px solid transparent}.adm-badge:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}.adm-badge-success{background:color-mix(in srgb,var(--color-success) 14%,transparent);color:var(--color-success);border-color:color-mix(in srgb,var(--color-success) 30%,transparent)}.adm-badge-danger{background:color-mix(in srgb,var(--color-danger) 14%,transparent);color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 30%,transparent)}.adm-badge-info{background:color-mix(in srgb,var(--color-info) 14%,transparent);color:var(--color-info);border-color:color-mix(in srgb,var(--color-info) 30%,transparent)}.adm-badge-warn{background:color-mix(in srgb,var(--color-warning) 14%,transparent);color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 30%,transparent)}.adm-badge-neutral{background:var(--color-surface-sunken);color:var(--color-text-secondary);border-color:var(--color-border)}.adm-pagination{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}.adm-pagination button{min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.adm-pagination button:hover:not(:disabled){background:var(--adm-card-bg);border-color:var(--adm-accent);color:var(--adm-accent);transform:translateY(-1px)}.adm-pagination button:disabled{opacity:.45;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:#0f172a99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:var(--space-5)}.modal-card{width:100%;max-width:500px;max-height:calc(100vh - 40px);overflow:auto;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--color-surface-strong);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.admin-page-enter-active,.admin-page-leave-active{transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-out)}.admin-page-enter-from{opacity:0;transform:translateY(10px)}.admin-page-leave-to{opacity:0;transform:translateY(-10px)}@media(max-width:767px){.adm-card{padding:var(--space-4)}.adm-stat{padding:var(--space-4);gap:var(--space-4)}.adm-stat-icon{width:46px;height:46px}.adm-row{padding:var(--space-3);gap:var(--space-3)}.adm-row-actions{width:100%;justify-content:flex-end}}.admin-layout[data-v-a95a30e6]{display:flex;min-height:100vh;background:var(--hero-bg, var(--color-bg));--sb-bg: linear-gradient(180deg, var(--color-surface-strong) 0%, var(--color-surface) 100%);--sb-text: var(--color-text);--sb-title: var(--color-text-muted);--sb-hover: color-mix(in srgb, var(--color-text) 6%, transparent);--sb-border: var(--color-border);--sb-active-text: var(--color-primary);--sb-active-bg: color-mix(in srgb, var(--color-primary) 15%, transparent);--sb-indicator: var(--color-primary);--sb-avatar-border: var(--color-border-strong);--sb-btn-bg: var(--color-surface-sunken);--sb-logout-hover: color-mix(in srgb, var(--color-danger) 16%, transparent);--sb-home-hover: color-mix(in srgb, var(--color-primary) 15%, transparent)}.admin-sidebar[data-v-a95a30e6]{position:fixed;top:0;left:0;bottom:0;width:250px;display:flex;flex-direction:column;background:var(--sb-bg);color:var(--sb-text);z-index:var(--z-drawer);transition:transform var(--dur-base) var(--ease-out);border-right:1px solid var(--sb-border)}.sidebar-brand[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-5);border-bottom:1px solid var(--sb-border);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard)}.sidebar-brand[data-v-a95a30e6]:hover{background:var(--sb-hover)}.brand-badge-wrap[data-v-a95a30e6]{position:relative;flex:0 0 auto}.brand-mark[data-v-a95a30e6]{width:38px;height:38px;border-radius:var(--radius-md);object-fit:cover;display:block;box-shadow:var(--shadow-sm);border:1px solid var(--sb-border)}.brand-online-dot[data-v-a95a30e6]{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;border-radius:var(--radius-full);background:var(--color-success);border:2px solid var(--color-surface-strong)}.brand-text-wrap[data-v-a95a30e6]{display:flex;flex-direction:column;line-height:var(--lh-tight)}.brand-text[data-v-a95a30e6]{font-size:var(--fs-md);font-weight:800;color:var(--color-text);letter-spacing:-.2px}.brand-sub[data-v-a95a30e6]{font-size:var(--fs-xs);font-weight:700;color:var(--adm-accent, var(--color-primary));text-transform:uppercase;letter-spacing:1.2px;margin-top:var(--space-1)}.sidebar-nav[data-v-a95a30e6]{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-3)}.nav-group[data-v-a95a30e6]{margin-bottom:var(--space-5)}.nav-group--return[data-v-a95a30e6]{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--sb-border)}.nav-group-title[data-v-a95a30e6]{padding:var(--space-1) var(--space-3);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--sb-title)}.nav-item[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-2) var(--space-4);margin:2px 0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--sb-text);font-size:var(--fs-sm);font-weight:500;cursor:pointer;text-align:left;position:relative;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-out)}.nav-item-label[data-v-a95a30e6]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item-ext[data-v-a95a30e6]{font-size:14px;opacity:.6}.nav-item-badge[data-v-a95a30e6]{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700}.nav-item-badge.warn[data-v-a95a30e6]{background:var(--color-warning);color:#fff}.nav-item-badge.info[data-v-a95a30e6]{background:var(--color-info);color:#fff}.nav-item[data-v-a95a30e6]:hover{background:var(--sb-hover);color:var(--color-text)}.back-home-nav-item[data-v-a95a30e6]{color:var(--color-text-secondary)}.back-home-nav-item[data-v-a95a30e6]:hover{color:var(--color-primary);background:var(--sb-active-bg)}.nav-item.active[data-v-a95a30e6]{background:var(--sb-active-bg);color:var(--sb-active-text);font-weight:700}.nav-item.active[data-v-a95a30e6]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:22px;border-radius:0 var(--radius-xs) var(--radius-xs) 0;background:var(--sb-indicator)}.nav-icon[data-v-a95a30e6]{width:20px;height:20px;flex:0 0 auto}.sidebar-footer[data-v-a95a30e6]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--sb-border);background:var(--color-surface-sunken)}.footer-user[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.footer-avatar-wrap[data-v-a95a30e6]{position:relative;flex:0 0 auto}.footer-avatar[data-v-a95a30e6]{width:38px;height:38px;border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--sb-avatar-border);display:block}.footer-info[data-v-a95a30e6]{display:flex;flex-direction:column;min-width:0;line-height:var(--lh-tight)}.footer-name[data-v-a95a30e6]{font-size:var(--fs-sm);font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.footer-role[data-v-a95a30e6]{font-size:var(--fs-xs);font-weight:700;margin-top:2px}.footer-btn-actions[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto}.footer-action-btn[data-v-a95a30e6]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:var(--sb-btn-bg);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-out)}.footer-action-btn.home-btn[data-v-a95a30e6]{color:var(--color-text)}.footer-action-btn.home-btn[data-v-a95a30e6]:hover{background:var(--sb-home-hover);color:var(--color-primary)}.footer-action-btn.logout-btn[data-v-a95a30e6]{color:var(--color-danger)}.footer-action-btn.logout-btn[data-v-a95a30e6]:hover{background:var(--sb-logout-hover)}.footer-action-btn svg[data-v-a95a30e6]{width:18px;height:18px}.admin-main[data-v-a95a30e6]{flex:1;margin-left:250px;display:flex;flex-direction:column;min-width:0;min-height:100vh}.admin-topbar[data-v-a95a30e6]{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 var(--space-8);background:var(--nav-bg, var(--color-surface));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--nav-border, var(--color-border))}.topbar-left[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-4)}.topbar-breadcrumb[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);min-width:0}.hover-link[data-v-a95a30e6]{color:var(--color-text-secondary);text-decoration:none;font-weight:500;transition:color var(--dur-fast) var(--ease-standard);display:inline-flex;align-items:center;gap:var(--space-1)}.hover-link[data-v-a95a30e6]:hover{color:var(--color-primary)}.crumb-root[data-v-a95a30e6],.crumb-mid[data-v-a95a30e6]{color:var(--color-text-secondary);font-weight:500}.crumb-sep[data-v-a95a30e6]{width:16px;height:16px;color:var(--color-text-secondary);opacity:.6;flex:0 0 auto}.crumb-current[data-v-a95a30e6]{color:var(--color-text);font-weight:700;font-size:var(--fs-md);letter-spacing:-.2px}.topbar-right[data-v-a95a30e6]{display:flex;align-items:center;gap:var(--space-3)}.topbar-btn[data-v-a95a30e6]{display:inline-flex;align-items:center;gap:var(--space-2);min-height:38px;padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text);font-size:var(--fs-sm);font-weight:600;text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.topbar-btn[data-v-a95a30e6]:hover{border-color:var(--adm-accent, var(--color-primary));color:var(--adm-accent, var(--color-primary))}.topbar-btn.icon-only[data-v-a95a30e6]{padding:0;width:44px;min-height:44px;justify-content:center}.role-chip-wrap[data-v-a95a30e6]{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);border:1px solid;font-size:var(--fs-xs);font-weight:700;-webkit-user-select:none;user-select:none}.role-dot[data-v-a95a30e6]{width:7px;height:7px;border-radius:var(--radius-full)}.menu-toggle[data-v-a95a30e6]{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text);cursor:pointer}.menu-toggle svg[data-v-a95a30e6]{width:22px;height:22px}.admin-content[data-v-a95a30e6]{flex:1;padding:var(--space-8);max-width:1600px;width:100%;box-sizing:border-box}.sidebar-overlay[data-v-a95a30e6]{position:fixed;inset:0;background:#0f172a8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:calc(var(--z-drawer) - 1)}.overlay-enter-active[data-v-a95a30e6],.overlay-leave-active[data-v-a95a30e6]{transition:opacity var(--dur-base) var(--ease-standard)}.overlay-enter-from[data-v-a95a30e6],.overlay-leave-to[data-v-a95a30e6]{opacity:0}@media(max-width:992px){.admin-sidebar[data-v-a95a30e6]{transform:translate(-100%)}.admin-sidebar.open[data-v-a95a30e6]{transform:translate(0);box-shadow:var(--shadow-lg)}.admin-main[data-v-a95a30e6]{margin-left:0}.menu-toggle[data-v-a95a30e6]{display:flex}.admin-content[data-v-a95a30e6]{padding:var(--space-5) var(--space-4)}.admin-topbar[data-v-a95a30e6]{padding:0 var(--space-4)}.topbar-btn .btn-text[data-v-a95a30e6],.crumb-mid[data-v-a95a30e6]{display:none}}@media(max-width:480px){.topbar-breadcrumb[data-v-a95a30e6]{font-size:var(--fs-xs)}.role-chip-wrap span[data-v-a95a30e6]:last-child{display:none}}.overview-container[data-v-077ba75f]{display:flex;flex-direction:column;gap:var(--space-6)}.welcome-card[data-v-077ba75f]{padding:var(--space-6);border-radius:var(--radius-xl);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 12%,transparent),color-mix(in srgb,var(--color-info) 6%,transparent));border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent)}.welcome-content[data-v-077ba75f]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.welcome-title[data-v-077ba75f]{margin:0;font-size:var(--fs-lg);font-weight:800;color:var(--color-text);letter-spacing:-.3px;display:flex;align-items:center;gap:var(--space-2)}.wave-icon[data-v-077ba75f]{font-size:1.4rem}.welcome-subtitle[data-v-077ba75f]{margin:var(--space-1) 0 0;font-size:var(--fs-sm);color:var(--color-text-secondary);line-height:var(--lh-normal)}.welcome-actions[data-v-077ba75f]{display:flex;gap:var(--space-3);flex-wrap:wrap}.stat-meta[data-v-077ba75f]{display:flex;flex-direction:column}.overview-grid[data-v-077ba75f]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}@media(max-width:992px){.overview-grid[data-v-077ba75f]{grid-template-columns:1fr}}.shortcuts-grid[data-v-077ba75f]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:600px){.shortcuts-grid[data-v-077ba75f]{grid-template-columns:1fr}}.shortcut-item[data-v-077ba75f]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-decoration:none;transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-standard)}.shortcut-item[data-v-077ba75f]:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--color-primary) 40%,transparent)}.shortcut-icon[data-v-077ba75f]{width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;flex:0 0 auto}.shortcut-text[data-v-077ba75f]{flex:1;min-width:0}.shortcut-title[data-v-077ba75f]{font-size:var(--fs-sm);font-weight:700;color:var(--color-text)}.shortcut-desc[data-v-077ba75f]{font-size:var(--fs-xs);color:var(--color-text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortcut-arrow[data-v-077ba75f]{color:var(--color-text-secondary);font-size:18px;opacity:.5;transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-standard)}.shortcut-item:hover .shortcut-arrow[data-v-077ba75f]{transform:translate(3px);opacity:1;color:var(--color-primary)}.health-list[data-v-077ba75f]{display:flex;flex-direction:column;gap:var(--space-3)}.health-item[data-v-077ba75f]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border)}.health-name[data-v-077ba75f]{font-size:var(--fs-sm);font-weight:600;color:var(--color-text);display:block}.health-desc[data-v-077ba75f]{font-size:var(--fs-xs);color:var(--color-text-secondary);margin-top:2px;display:block}.markdown-editor[data-v-67c87ac5]{border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--input-bg);overflow:hidden}.editor-toolbar[data-v-67c87ac5]{display:flex;gap:var(--space-1);padding:var(--space-2);background:var(--color-surface-sunken);border-bottom:1px solid var(--glass-border);flex-wrap:wrap}.toolbar-btn[data-v-67c87ac5]{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:0 var(--space-2);background:transparent;border:1px solid transparent;border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;font-size:var(--fs-sm);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.toolbar-btn[data-v-67c87ac5]:hover{background:var(--color-surface-strong);color:var(--text-primary)}.toolbar-btn[data-v-67c87ac5]:focus-visible{outline:none;border-color:var(--text-accent);box-shadow:var(--shadow-focus)}.toolbar-btn.active[data-v-67c87ac5]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-brand)}.toolbar-divider[data-v-67c87ac5]{width:1px;align-self:stretch;background:var(--color-border);margin:0 var(--space-1)}.editor-container[data-v-67c87ac5]{display:flex;min-height:300px}.editor-container.split-view[data-v-67c87ac5]{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-surface-sunken)}.editor-pane[data-v-67c87ac5],.preview-pane[data-v-67c87ac5]{padding:var(--space-4);background:var(--input-bg)}.markdown-textarea[data-v-67c87ac5]{width:100%;min-height:300px;background:transparent;border:none;color:var(--text-primary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--fs-base);line-height:var(--lh-normal);resize:vertical;outline:none}.markdown-textarea[data-v-67c87ac5]:focus-visible{outline:none}.markdown-textarea[data-v-67c87ac5]::placeholder{color:var(--text-muted)}.preview-pane[data-v-67c87ac5]{overflow-y:auto;max-height:600px}.preview-content[data-v-67c87ac5]{color:var(--text-primary);line-height:var(--lh-normal)}.preview-content[data-v-67c87ac5] h1{font-size:var(--fs-xl);margin:.67em 0;color:var(--text-primary);border-bottom:2px solid var(--color-border);padding-bottom:.3em}.preview-content[data-v-67c87ac5] h2{font-size:var(--fs-lg);margin:.75em 0;color:var(--text-primary);border-bottom:1px solid var(--color-border);padding-bottom:.3em}.preview-content[data-v-67c87ac5] h3{font-size:var(--fs-md);margin:.83em 0;color:var(--text-primary)}.preview-content[data-v-67c87ac5] p{margin:1em 0}.preview-content[data-v-67c87ac5] strong{color:var(--text-primary);font-weight:700}.preview-content[data-v-67c87ac5] em{color:var(--text-secondary);font-style:italic}.preview-content[data-v-67c87ac5] code{background:var(--color-surface-sunken);padding:2px 6px;border-radius:var(--radius-xs);font-family:Monaco,Menlo,monospace;font-size:.9em;color:var(--text-accent)}.preview-content[data-v-67c87ac5] a{color:var(--text-accent);text-decoration:none;border-bottom:1px solid var(--color-border);transition:border-color var(--dur-fast) var(--ease-standard)}.preview-content[data-v-67c87ac5] a:hover{border-bottom-color:var(--text-accent)}.preview-content[data-v-67c87ac5] img{max-width:100%;height:auto;border-radius:var(--radius-sm);margin:1em 0}.preview-content[data-v-67c87ac5] ul,.preview-content[data-v-67c87ac5] ol{margin:1em 0;padding-left:2em}.preview-content[data-v-67c87ac5] li{margin:.5em 0}.preview-content[data-v-67c87ac5] blockquote{margin:1em 0;padding:.5em 1em;border-left:4px solid var(--text-accent);background:var(--color-surface-sunken);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic;color:var(--text-secondary)}.editor-footer[data-v-67c87ac5]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);background:var(--color-surface-sunken);border-top:1px solid var(--color-border);font-size:var(--fs-xs);color:var(--text-muted)}.char-count[data-v-67c87ac5],.line-count[data-v-67c87ac5]{margin-right:var(--space-4)}.markdown-guide[data-v-67c87ac5]{color:var(--text-accent);text-decoration:none}.markdown-guide[data-v-67c87ac5]:hover{color:var(--text-primary)}@media(max-width:768px){.editor-container.split-view[data-v-67c87ac5]{grid-template-columns:1fr}.preview-pane[data-v-67c87ac5]{border-top:1px solid var(--color-border);max-height:400px}.editor-toolbar[data-v-67c87ac5]{gap:var(--space-1);padding:var(--space-1)}.toolbar-btn[data-v-67c87ac5]{min-width:40px;min-height:40px}.markdown-textarea[data-v-67c87ac5]{font-size:16px}}.palette-swatches[data-v-2bb8f839]{display:flex;gap:var(--space-2);align-items:center}.color-chip[data-v-2bb8f839]{width:26px;height:26px;border-radius:var(--radius-xs);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-standard);border:1px solid var(--color-border)}.color-chip[data-v-2bb8f839]:hover{transform:scale(1.12)}.color-chip.active[data-v-2bb8f839]{transform:scale(1.12);box-shadow:0 0 0 2px var(--color-text)}.cover-preview-card[data-v-2bb8f839]{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.preview-img[data-v-2bb8f839]{width:140px;height:78px;object-fit:cover;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.preview-options[data-v-2bb8f839]{display:flex;flex-direction:column;gap:var(--space-2)}.cover-checkbox[data-v-2bb8f839]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:600;color:var(--color-text);cursor:pointer}.no-thumb[data-v-2bb8f839]{display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken)}@media(max-width:480px){.cover-preview-card[data-v-2bb8f839]{flex-direction:column;align-items:flex-start}}.preview-box[data-v-623e4a12]{margin-top:var(--space-3);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.thumb-img[data-v-623e4a12]{width:100px;height:60px;object-fit:cover;border-radius:var(--radius-sm);box-shadow:var(--shadow-xs)}.user-row[data-v-821c8d7f]{cursor:pointer}.user-modal-card[data-v-821c8d7f]{max-width:680px;width:100%}.user-modal-header[data-v-821c8d7f]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--adm-row-border)}.user-modal-profile[data-v-821c8d7f]{display:flex;align-items:center;gap:16px}.user-modal-avatar[data-v-821c8d7f]{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid var(--adm-card-border);box-shadow:0 4px 12px #0000001a;flex:0 0 auto}.user-modal-titles[data-v-821c8d7f]{display:flex;flex-direction:column;gap:4px}.user-modal-name-row[data-v-821c8d7f]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-modal-username[data-v-821c8d7f]{margin:0;font-size:1.25rem;font-weight:800;color:var(--text-primary);letter-spacing:-.3px}.user-modal-meta-row[data-v-821c8d7f]{display:flex;align-items:center;gap:8px;font-size:.84rem;color:var(--text-secondary);flex-wrap:wrap}.user-public-link[data-v-821c8d7f]{display:inline-flex;align-items:center;gap:4px;color:var(--adm-accent);text-decoration:none;font-weight:600;margin-left:6px}.user-public-link[data-v-821c8d7f]:hover{text-decoration:underline}.modal-close-btn[data-v-821c8d7f]{background:transparent;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .18s ease}.modal-close-btn[data-v-821c8d7f]:hover{color:var(--text-primary);background:var(--glass-surface, rgba(0, 0, 0, .05))}.modal-nav-tabs[data-v-821c8d7f]{display:flex;gap:6px;margin:18px 0;padding-bottom:12px;border-bottom:1px solid var(--adm-row-border);overflow-x:auto}.modal-nav-tab[data-v-821c8d7f]{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .18s ease;white-space:nowrap}.modal-nav-tab[data-v-821c8d7f]:hover{background:var(--glass-surface, rgba(0, 0, 0, .04));color:var(--text-primary)}.modal-nav-tab.active[data-v-821c8d7f]{background:color-mix(in srgb,var(--color-primary) 15%,transparent);color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 30%,transparent)}.tab-pane[data-v-821c8d7f]{display:flex;flex-direction:column}.info-grid[data-v-821c8d7f]{display:flex;flex-direction:column;gap:12px}.info-card[data-v-821c8d7f]{padding:14px 16px;border-radius:12px;background:var(--adm-row-bg);border:1px solid var(--adm-row-border)}.info-label[data-v-821c8d7f]{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:8px}.status-action-row[data-v-821c8d7f],.role-action-row[data-v-821c8d7f]{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.status-desc-text[data-v-821c8d7f]{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.status-btn-group[data-v-821c8d7f]{display:flex;gap:8px;flex-wrap:wrap}.current-role-info[data-v-821c8d7f]{display:flex;flex-direction:column;gap:2px}.role-title[data-v-821c8d7f]{font-size:.94rem;color:var(--text-primary)}.role-desc[data-v-821c8d7f]{font-size:.8rem;color:var(--text-secondary)}.milkloud-status-row[data-v-821c8d7f]{display:flex;align-items:center}.milkloud-bound[data-v-821c8d7f]{display:flex;align-items:center;gap:10px;color:var(--text-primary);font-size:.9rem}.mono-id[data-v-821c8d7f]{font-family:monospace;font-size:.8rem;color:var(--text-secondary)}.milkloud-unbound[data-v-821c8d7f]{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.88rem}.details-list[data-v-821c8d7f]{display:flex;flex-direction:column;gap:6px}.detail-row[data-v-821c8d7f]{display:flex;font-size:.88rem}.detail-k[data-v-821c8d7f]{color:var(--text-secondary);width:90px;flex:0 0 auto}.detail-v[data-v-821c8d7f]{color:var(--text-primary)}.alert-box[data-v-821c8d7f]{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:10px;font-size:.86rem;line-height:1.4}.alert-box.info[data-v-821c8d7f]{background:color-mix(in srgb,var(--color-info) 12%,transparent);color:var(--color-info);border:1px solid color-mix(in srgb,var(--color-info) 25%,transparent)}.link-btn[data-v-821c8d7f]{background:transparent;border:none;color:var(--adm-accent);font-size:.82rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:2px 4px}.link-btn[data-v-821c8d7f]:hover{text-decoration:underline}.font-mono[data-v-821c8d7f]{font-family:monospace}.modal-header[data-v-44788812]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.modal-title[data-v-44788812]{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--color-text)}.modal-close[data-v-44788812]{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.modal-close[data-v-44788812]:hover{color:var(--color-text);background:var(--color-surface-sunken)}.overlay-enter-active[data-v-44788812],.overlay-leave-active[data-v-44788812]{transition:opacity var(--dur-base) var(--ease-standard)}.overlay-enter-from[data-v-44788812],.overlay-leave-to[data-v-44788812]{opacity:0}.vote-counts[data-v-c14d63e0]{display:inline-flex;gap:6px;align-items:center}.vote-tag[data-v-c14d63e0]{display:inline-flex;align-items:center;padding:1px 7px;border-radius:6px;font-size:.72rem;font-weight:700}.vote-tag.approve[data-v-c14d63e0]{background:color-mix(in srgb,var(--color-success) 14%,transparent);color:var(--color-success)}.vote-tag.reject[data-v-c14d63e0]{background:color-mix(in srgb,var(--color-danger) 14%,transparent);color:var(--color-danger)}.vote-locked[data-v-c14d63e0]{font-size:.75rem;color:var(--text-muted, #888);white-space:nowrap}.tickets-admin[data-v-c496de63]{padding:var(--space-4) 0}.page-head[data-v-c496de63]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.page-title[data-v-c496de63]{margin:0;font-size:1.4rem;color:var(--text-primary)}.btn-refresh[data-v-c496de63]{background:none;border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:10px;padding:6px 16px;cursor:pointer}.stats-row[data-v-c496de63]{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:var(--space-4)}.stat-chip[data-v-c496de63]{display:flex;flex-direction:column;align-items:center;min-width:86px;padding:8px 14px;border:1px solid var(--glass-border);border-radius:12px}.stat-num[data-v-c496de63]{font-size:1.15rem;color:var(--text-primary)}.stat-label[data-v-c496de63]{font-size:.75rem;color:var(--text-secondary)}.filter-row[data-v-c496de63]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:var(--space-4)}.chip[data-v-c496de63]{border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-secondary);border-radius:999px;padding:5px 13px;cursor:pointer;font-size:.82rem}.chip.active[data-v-c496de63]{color:#fff;background:var(--accent-gradient, linear-gradient(135deg, #6a8dff, #8e6aff));border-color:transparent}.total-hint[data-v-c496de63]{margin-left:auto;color:var(--text-secondary);font-size:.83rem}.layout[data-v-c496de63]{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:var(--space-4);align-items:start}@media(max-width:900px){.layout[data-v-c496de63]{grid-template-columns:1fr}}.layout--single[data-v-c496de63]{grid-template-columns:1fr}.ticket-list[data-v-c496de63]{display:flex;flex-direction:column;gap:8px}.ticket-row[data-v-c496de63]{padding:12px 14px;border:1px solid var(--glass-border);border-radius:12px;cursor:pointer}.ticket-row.selected[data-v-c496de63]{border-color:#4fa3ff99;box-shadow:0 0 0 1px #4fa3ff59}.row-top[data-v-c496de63]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.row-id[data-v-c496de63]{color:var(--text-secondary);font-size:.78rem}.type-tag[data-v-c496de63]{font-size:.72rem;padding:1px 7px;border-radius:6px;color:var(--text-secondary);border:1px solid var(--glass-border)}.status-badge[data-v-c496de63]{font-size:.74rem;padding:2px 9px;border-radius:999px;border:1px solid transparent;margin-left:auto}.status-badge[data-status=open][data-v-c496de63]{color:#ffa502;border-color:#ffa50273;background:#ffa5021f}.status-badge[data-status=in_progress][data-v-c496de63]{color:#4fa3ff;border-color:#4fa3ff73;background:#4fa3ff1f}.status-badge[data-status=resolved][data-v-c496de63]{color:#2ed573;border-color:#2ed57373;background:#2ed5731f}.status-badge[data-status=rejected][data-v-c496de63],.status-badge[data-status=auto_closed][data-v-c496de63]{color:var(--text-secondary);border-color:var(--glass-border);background:#8080801a}.row-subject[data-v-c496de63]{color:var(--text-primary);font-size:.92rem;margin-bottom:6px;word-break:break-word}.row-meta[data-v-c496de63]{display:flex;gap:10px;flex-wrap:wrap;color:var(--text-secondary);font-size:.76rem}.detail-panel[data-v-c496de63]{padding:16px;border:1px solid var(--glass-border);border-radius:var(--card-radius, 14px)}.detail-title[data-v-c496de63]{margin:0 0 10px;font-size:1.05rem;color:var(--text-primary);word-break:break-word}.detail-meta[data-v-c496de63]{display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:var(--text-secondary);font-size:.82rem;margin-bottom:10px}.detail-meta .status-badge[data-v-c496de63]{margin-left:0}.detail-links[data-v-c496de63]{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:.85rem}.meta-link[data-v-c496de63]{color:#4fa3ff;text-decoration:none}.meta-plain[data-v-c496de63]{color:var(--text-secondary)}.closed-note[data-v-c496de63]{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:#ffa50214;border:1px solid rgba(255,165,2,.25);color:var(--text-primary);font-size:.85rem}.msg[data-v-c496de63]{padding:10px 12px;border-radius:12px;background:#80808014;border:1px solid var(--glass-border);margin-bottom:10px}.msg.mine[data-v-c496de63]{background:#4fa3ff12;border-color:#4fa3ff40}.msg.internal[data-v-c496de63]{background:#ffa50212;border-color:#ffa5024d}.msg-head[data-v-c496de63]{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.8rem;color:var(--text-secondary)}.msg-author[data-v-c496de63]{color:var(--text-primary)}.internal-tag[data-v-c496de63]{margin-left:6px;font-size:.72rem;padding:1px 6px;border-radius:6px;color:#ffa502;border:1px solid rgba(255,165,2,.4)}.msg-body[data-v-c496de63]{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:.9rem}.msg-attachments[data-v-c496de63]{margin-top:6px;display:flex;gap:10px;flex-wrap:wrap}.attach-link[data-v-c496de63]{color:#4fa3ff;font-size:.82rem;text-decoration:none}.actions-area[data-v-c496de63]{margin-top:14px;display:flex;flex-direction:column;gap:10px}.action-buttons[data-v-c496de63]{display:flex;gap:10px;flex-wrap:wrap}.btn-ghost[data-v-c496de63],.btn-danger[data-v-c496de63]{border-radius:10px;padding:8px 18px;cursor:pointer}.btn-ghost[data-v-c496de63]{background:none;border:1px solid var(--glass-border);color:var(--text-secondary)}.btn-danger[data-v-c496de63]{background:#ff47571f;border:1px solid rgba(255,71,87,.45);color:#ff4757}.internal-check[data-v-c496de63]{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.84rem}.send-row[data-v-c496de63]{display:flex;justify-content:flex-end}.error-line[data-v-c496de63]{color:#ff4757;font-size:.82rem}.loading-wrap[data-v-c496de63]{margin-top:4px}.loading-line[data-v-c496de63]{color:var(--text-secondary);padding:20px 0}.closed-hint[data-v-c496de63]{color:var(--text-secondary);font-size:.85rem;margin-top:12px}@font-face{font-family:ChillRound;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ChillRoundF-v3.0.ttf) format("truetype")}:root{--color-brand-300: #9fb6d9;--color-brand-400: #82a1cc;--color-brand-500: #6c8cbf;--color-brand-600: #5a76a6;--color-accent-500: #6c8cbf;--color-bg: #f6f8fb;--color-bg-app: linear-gradient(-45deg, #edd7af, #fdfbfb, #ebedee, #c2e9fb);--color-surface: rgba(255, 255, 255, .6);--color-surface-strong: rgba(255, 255, 255, .95);--color-surface-sunken: rgba(0, 0, 0, .04);--color-border: rgba(15, 23, 42, .08);--color-border-strong: rgba(0, 0, 0, .14);--color-text: #2c3e50;--color-text-secondary: #5e6d82;--color-text-muted: #8a97a8;--color-text-on-brand: #ffffff;--color-primary: #6c8cbf;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--color-on-success: #ffffff;--color-on-danger: #ffffff;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .06);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .08);--shadow-md: 0 8px 24px rgba(31, 38, 135, .1);--shadow-lg: 0 12px 40px rgba(31, 38, 135, .15);--shadow-focus: 0 0 0 3px rgba(108, 140, 191, .25);--z-base: 1;--z-dropdown: 100;--z-sticky: 1000;--z-header: 1000;--z-drawer: 1100;--z-overlay: 1200;--z-modal: 1300;--z-toast: 1400;--z-tooltip: 1500;--font-sans: "ChillRound", "Inter", system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--fs-xs: .75rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-md: 1.125rem;--fs-lg: 1.5rem;--fs-xl: 2rem;--fs-2xl: 2.5rem;--lh-tight: 1.2;--lh-snug: 1.4;--lh-normal: 1.6;--dur-fast: .15s;--dur-base: .25s;--dur-slow: .4s;--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--header-height: 72px;--header-height-mobile: 60px;--container-max: 1200px;--hero-bg: var(--color-bg-app);--text-primary: var(--color-text);--text-secondary: var(--color-text-secondary);--text-accent: var(--color-accent-500);--primary-color: var(--color-primary);--success: var(--color-success);--danger: var(--color-danger);--title-gradient: linear-gradient(90deg, #f8bd51, #fdc761, #6eb3f9, #4896f5);--nav-bg: rgba(255, 255, 255, .75);--nav-text: var(--color-text);--nav-shadow: 0 4px 30px rgba(0, 0, 0, .05);--nav-border: rgba(255, 255, 255, .5);--btn-bg: #2c3e50;--btn-text: #ffffff;--glass-bg: var(--color-surface);--glass-border: rgba(0, 0, 0, .06);--glass-surface: var(--color-surface-sunken);--glass-shadow: var(--shadow-md);--card-radius: var(--radius-lg);--input-bg: var(--color-surface-strong);--input-border: rgba(0, 0, 0, .06);--dropdown-bg: #ffffff;--mobile-padding: 16px;--mobile-h1-size: 2rem;--mobile-h2-size: 1.5rem;--mobile-h3-size: 1.25rem;--mobile-card-padding: 16px;--mobile-card-radius: var(--radius-md);--role-admin: #ffd700;--role-admin-gradient: linear-gradient(45deg, #ffd700, #ffa500);--role-reviewer: #2f86f6;--role-reviewer-gradient: linear-gradient(45deg, #3b9dfd, #1f5fd6);--role-moderator: #2fbf6b;--role-moderator-gradient: linear-gradient(45deg, #35d177, #1d9e52);--role-banned: #8b4513;--role-user: #808080;--rank-m: #ffd700;--rank-ss: #ff69b4;--rank-s: #87ceeb;--rank-a: #90ee90}html.dark{--color-bg: #0d132b;--color-bg-app: linear-gradient(-45deg, #0d132b, #111722);--color-surface: rgba(15, 23, 42, .7);--color-surface-strong: rgba(15, 23, 42, .95);--color-surface-sunken: rgba(255, 255, 255, .06);--color-border: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .16);--color-text: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--color-text-on-brand: #0f172a;--color-primary: #60a5fa;--color-accent-500: #a5b4fc;--color-success: #22c55e;--color-warning: #fbbf24;--color-danger: #ef4444;--color-info: #60a5fa;--shadow-md: 0 8px 32px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .6);--shadow-focus: 0 0 0 3px rgba(165, 180, 252, .25);--hero-bg: var(--color-bg-app);--text-primary: var(--color-text);--text-secondary: var(--color-text-secondary);--text-accent: var(--color-accent-500);--primary-color: var(--color-primary);--success: var(--color-success);--danger: var(--color-danger);--title-gradient: linear-gradient(90deg, #ddc3fc, #dbc5f7, #93c5fc, #8dbdf7);--nav-bg: rgba(15, 23, 42, .85);--nav-text: var(--color-text);--nav-shadow: 0 4px 30px rgba(0, 0, 0, .5);--nav-border: rgba(255, 255, 255, .1);--btn-bg: #f8fafc;--btn-text: #0f172a;--glass-bg: var(--color-surface);--glass-border: rgba(255, 255, 255, .15);--glass-surface: var(--color-surface-sunken);--glass-shadow: var(--shadow-md);--input-bg: rgba(15, 23, 42, .6);--input-border: rgba(255, 255, 255, .06);--dropdown-bg: rgba(15, 23, 42, .95)}body{margin:0;padding:0;background:var(--hero-bg);background-attachment:fixed;min-height:100vh;font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);color:var(--text-primary);transition:background-color var(--dur-base) var(--ease-standard),color var(--dur-base) var(--ease-standard);scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}html,body{overflow-x:clip}*,*:before,*:after{box-sizing:border-box}@supports not (scrollbar-gutter: stable){body{overflow-y:scroll}}#app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;width:100%}a{text-decoration:none;color:var(--text-primary);transition:color .3s}select,.form-select,select.form-select,.sort-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 38px 10px 14px;border-radius:12px;border:1px solid var(--glass-border);background-color:var(--input-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);font-size:.92rem;font-weight:500;cursor:pointer;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;box-sizing:border-box}select{background-repeat:no-repeat!important}html.dark select,html.dark .form-select,html.dark select.form-select,html.dark .sort-select{background-color:#0f172ab3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");border-color:#ffffff1f}select:hover,.form-select:hover,.sort-select:hover{border-color:var(--text-accent)}select:focus,.form-select:focus,.sort-select:focus{border-color:var(--text-accent);box-shadow:0 0 0 3px #6c8cbf40}select option,.form-select option,.sort-select option{background-color:#fff;color:#1e293b;padding:8px 12px}html.dark select option,html.dark .form-select option,html.dark .sort-select option{background-color:#1e293b;color:#f8fafc}.form-input,.search-input{padding:10px 12px;border-radius:10px;border:1px solid var(--glass-border);background:var(--input-bg);color:var(--text-primary);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%;box-sizing:border-box}.form-input:focus,.search-input:focus,.form-select:focus{outline:none;border-color:var(--text-accent);box-shadow:0 6px 18px #667eea0f}.back-btn{background:transparent;border:none;color:var(--text-primary);padding:0 0 10px;font-size:1rem;cursor:pointer}.back-btn:hover{color:var(--text-accent)}.control-row{display:flex;gap:8px;align-items:center}.control-row .form-input{flex:1}.control-row .form-select{width:180px}@media(max-width:768px){.control-row{flex-direction:column;align-items:stretch}.control-row .form-select{width:100%}.back-btn{font-size:.95rem}}html.dark select,:global(.dark) .form-select{background:#0f172a99;border-color:#ffffff1f;color:var(--text-primary)}.user-menu-wrapper .user-dropdown{z-index:9999!important;position:absolute;right:0;top:100%;min-width:160px;max-height:none;overflow:visible;box-shadow:0 6px 20px #0000000f;border-radius:10px}.user-menu-wrapper{position:relative!important;overflow:visible!important}.user-dropdown,.select-options,.dropdown,.custom-select .select-options,.user-menu-wrapper .user-dropdown{display:block!important;position:absolute!important;top:100%!important;right:0!important;left:auto!important;min-width:160px!important;width:max-content!important;z-index:99999!important;max-height:none!important;overflow:visible!important;box-shadow:0 6px 20px #0000000f;border-radius:10px}.form-select-options{background:var(--dropdown-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);box-shadow:0 6px 20px #0000000f}html.dark .user-dropdown,html.dark .select-options,html.dark .dropdown,html.dark .custom-select .select-options,html.dark .user-menu-wrapper .user-dropdown,html.dark .form-select-options{background:var(--dropdown-bg);border-color:#ffffff1f;color:var(--text-primary)}html:not(.dark) .user-dropdown,html:not(.dark) .select-options,html:not(.dark) .dropdown,html:not(.dark) .custom-select .select-options,html:not(.dark) .user-menu-wrapper .user-dropdown,html:not(.dark) .form-select-options{background-color:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:1px solid var(--border-color)}.form-select,.role-select{padding:10px 34px 10px 15px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:.9rem}.form-select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 14px) calc(1em + 2px),calc(100% - 9px) calc(1em + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.published-select{width:140px}.text-gradient,.title-gradient{background:var(--title-gradient);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:text-gradient 5s linear infinite}@keyframes text-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}html.dark .text-gradient{animation:text-gradient 5s linear infinite reverse;text-shadow:0 0 10px rgba(167,139,250,.08)}.home-container .router-link-active,.home-container .router-link-exact-active{margin-top:20px}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--card-radius);box-shadow:var(--glass-shadow);transition:transform .3s ease,box-shadow .3s ease}.glass-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #1f268726}.btn-primary{background:var(--btn-bg);color:var(--btn-text);padding:10px 24px;border-radius:9999px;border:none;font-weight:600;cursor:pointer;transition:transform .2s ease,filter .2s ease,background .2s ease,color .2s ease;text-decoration:none;display:inline-block}.btn-primary:hover{filter:brightness(1.1);transform:scale(1.05)}.btn-primary-delete{background:#ff475733;color:#ff4757;padding:10px 24px;border-radius:9999px;border:none;font-weight:600;cursor:pointer}.btn-primary-delete:hover{filter:brightness(1.1);transform:scale(1.05)}.btn-success{background:var(--success);color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:600;transition:filter .12s ease,transform .12s ease}.btn-success:hover{filter:brightness(.95);transform:translateY(-1px)}.btn-danger{background:var(--danger);color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:600;transition:filter .12s ease,transform .12s ease}.btn-danger:hover{filter:brightness(.95);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--text-primary);padding:10px 24px;border-radius:9999px;border:1px solid var(--text-primary);font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;text-decoration:none;display:inline-block}.btn-outline:hover{background:var(--text-primary);color:var(--bg-primary, #fff)}html.dark .btn-outline:hover{color:#1a1f35}@media(max-width:768px){header.header-glass .login-btn{padding-top:12.5px}}.global-bg{animation-duration:120s!important;animation-timing-function:linear!important}@media(min-width:768px){.main-content,.page-container,.hero-section,.global-bg,.unity-container,.auth-card{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;filter:none!important}}@media(prefers-reduced-motion:reduce){*{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.global-bg{animation:none!important}}.btn-primary:hover{filter:none!important;transform:scale(1.05);box-shadow:0 8px 24px #00000014}.btn-success:hover,.btn-danger:hover{filter:none!important;transform:translateY(-1px);opacity:.95}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.fade-enter-from{opacity:0;transform:translateY(10px) scale(.99)}.fade-leave-to{opacity:0;transform:translateY(-10px) scale(.99)}@keyframes anim-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes anim-drop-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-spin{to{transform:rotate(360deg)}}.anim-fade-in{animation:anim-fade-in var(--dur-slow) var(--ease-out) backwards}.anim-rise-in{animation:anim-rise-in var(--dur-slow) var(--ease-out) backwards}.anim-pop-in{animation:anim-pop-in var(--dur-base) var(--ease-out) backwards}.stagger-group>.stagger-item{animation:anim-rise-in var(--dur-slow) var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * var(--stagger-step, 40ms))}.press{transition:transform var(--dur-fast) var(--ease-standard)}.press:active{transform:scale(.97)}.drop-enter-active,.drop-leave-active{transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.drop-enter-from,.drop-leave-to{opacity:0;transform:translateY(-6px) scale(.98)}.drawer-enter-active,.drawer-leave-active{transition:transform var(--dur-base) var(--ease-standard),opacity var(--dur-base) var(--ease-standard)}.drawer-enter-from,.drawer-leave-to{transform:translateY(-8px);opacity:0}.overlay-enter-active,.overlay-leave-active{transition:opacity var(--dur-base) var(--ease-standard)}.overlay-enter-from,.overlay-leave-to{opacity:0}.glass-card{animation:cardFadeIn var(--dur-slow) var(--ease-out) backwards;will-change:transform,opacity}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.rain-overlay{pointer-events:none;position:fixed;inset:0;z-index:0;overflow:hidden;opacity:.08}.rain-overlay:before{content:"";position:absolute;top:0;left:0;width:100%;height:200%;background-image:linear-gradient(180deg,rgba(255,255,255,.02) .5px,transparent 1px);background-size:2px 10px;animation:rain-fall .6s linear infinite;will-change:transform}@keyframes rain-fall{0%{transform:translateZ(0)}to{transform:translate3d(0,-20px,0)}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:99999}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.rain-overlay:before{animation:none}}.skeleton{position:relative;overflow:hidden;background:var(--color-surface-sunken, rgba(0, 0, 0, .05));border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(128,128,128,.14),transparent);animation:skeleton-shimmer 1.5s ease-in-out infinite;will-change:transform}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.skeleton-card{width:100%;height:300px;margin-bottom:20px}.skeleton-text{height:20px;margin-bottom:10px;width:80%}html{scroll-behavior:smooth}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn,.button,button:not(.theme-btn):not(.mobile-menu-btn){position:relative;overflow:hidden;transition:transform var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.btn:active,.button:active,button:not(.theme-btn):not(.mobile-menu-btn):active{transform:scale(.98)}.glass-card,.chart-card,.news-card,.creation-card{transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.chart-card img,.news-card img,.creation-card img{transition:transform var(--dur-slow) var(--ease-standard)}.chart-card:hover img,.news-card:hover img,.creation-card:hover img{transform:scale(1.05)}.scroll-progress{position:fixed;top:var(--header-height);left:0;width:0%;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--text-accent));z-index:var(--z-sticky);transition:width .1s ease-out}@media(max-width:768px){.scroll-progress{top:var(--header-height-mobile, 60px)}}*:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-xs)}[data-tooltip]{position:relative;cursor:help}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);padding:6px 12px;background:#000000e6;color:#fff;font-size:var(--fs-sm);border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-base),transform var(--dur-base);z-index:var(--z-tooltip)}[data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#000000e6;opacity:0;pointer-events:none;transition:opacity var(--dur-base)}[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) translateY(-4px)}[data-tooltip]:hover:after{opacity:1}.spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--color-surface-sunken, rgba(128, 128, 128, .2));border-top-color:var(--color-primary);border-radius:50%;animation:anim-spin .8s linear infinite}.loading-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity var(--dur-base)}.loading-overlay.active{opacity:1;pointer-events:all}.badge,.status-badge,.tag{animation:badge-appear var(--dur-base) var(--ease-out)}@keyframes badge-appear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:var(--color-surface-strong, rgba(255, 255, 255, .95));color:var(--color-text);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translate(400px);transition:transform var(--dur-slow) var(--ease-standard);z-index:var(--z-toast);max-width:350px}.toast.show{transform:translate(0)}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--danger)}.toast.info{border-left:4px solid var(--info, var(--primary-color))}.page-transition-enter-active,.page-transition-leave-active{transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.page-transition-enter-from{opacity:0;transform:translateY(20px)}.page-transition-leave-to{opacity:0;transform:translateY(-20px)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#0000000d}::-webkit-scrollbar-thumb{background:#0003;border-radius:6px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#0000004d;background-clip:padding-box}html.dark ::-webkit-scrollbar-track{background:#ffffff0d}html.dark ::-webkit-scrollbar-thumb{background:#fff3;background-clip:padding-box}html.dark ::-webkit-scrollbar-thumb:hover{background:#ffffff4d;background-clip:padding-box}.gpu-accelerated{transform:translateZ(0);will-change:transform}@media print{.no-print,header,footer,.theme-btn,.mobile-menu-btn{display:none!important}.glass-card{background:var(--color-bg)!important;box-shadow:none!important;border:1px solid var(--color-border)!important}}@media(max-width:767px){body{font-size:14px}.section-container,.content-container,.container{width:100%!important;padding-left:var(--mobile-padding)!important;padding-right:var(--mobile-padding)!important;box-sizing:border-box!important}.page-container{max-width:1200px!important;padding-left:var(--mobile-padding)!important;padding-right:var(--mobile-padding)!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important}.page-container,.content-wrapper{padding-left:var(--mobile-padding)!important;padding-right:var(--mobile-padding)!important;box-sizing:border-box!important}h1{font-size:var(--mobile-h1-size)!important;line-height:1.2!important}h2{font-size:var(--mobile-h2-size)!important;line-height:1.3!important}h3{font-size:var(--mobile-h3-size)!important}.button-group,.download-buttons,.action-buttons{flex-direction:column!important;width:100%!important;gap:12px!important;align-items:stretch!important}.button-group>*,.download-buttons>*,.action-buttons>*{width:100%!important;margin:0;text-align:center;display:flex;align-items:center;justify-content:center}button,.btn,.btn-action{display:flex;align-items:center;justify-content:center;text-align:center}.glass-card{padding:var(--mobile-card-padding)!important;border-radius:var(--mobile-card-radius)!important}.grid,.news-grid,.creation-grid,.chart-grid,.team-grid{grid-template-columns:1fr!important;gap:16px}*{max-width:100%;word-wrap:break-word;overflow-wrap:break-word}img{max-width:100%;height:auto}table{display:block;overflow-x:auto;white-space:nowrap}input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),textarea,select{font-size:16px!important;width:100%!important}.modal-content,.dialog{width:95%!important;max-width:95%!important;margin:10px auto!important}}@media(min-width:768px)and (max-width:1023px){.grid,.news-grid,.creation-grid,.chart-grid,.team-grid{grid-template-columns:repeat(2,1fr)!important}.section-container,.content-container{width:95%!important;padding:40px 24px!important}}@media(max-width:767px){.hero-section{height:auto!important;min-height:calc(100vh - 68px)!important;padding:40px 20px!important}.hero-layout{flex-direction:column!important;gap:30px!important;text-align:center!important;padding:0!important}.hero-info{text-align:center!important}.hero-logo{width:150px!important;height:150px!important;border-radius:30px!important}.main-title{font-size:2.5rem!important;letter-spacing:-1px!important}.sub-title{font-size:1.2rem!important;margin-bottom:20px!important}.scroll-hint{bottom:20px!important;font-size:.9rem!important}}@media(max-width:767px){.card,.news-card,.creation-card,.chart-card{margin-bottom:16px!important}.card-image,.news-card-image,.creation-card-image,.chart-card-image{height:200px!important;border-radius:8px!important}.card-content,.card-body{padding:12px!important}.card-title{font-size:1.1rem!important}.card-description{font-size:.85rem!important}}@media(max-width:767px){.header-glass{height:68px!important}.header-glass .container{padding:0 12px!important;gap:8px!important}.logo-text{font-size:1rem!important}.mobile-menu{top:var(--header-height-mobile, 68px)!important}.user-avatar{width:36px!important;height:36px!important}.theme-btn{font-size:1.1rem!important;padding:2px!important}.right-actions{gap:8px!important}.user-dropdown{right:8px!important;min-width:140px!important;pointer-events:auto!important}}@media(max-width:767px){.form-container{padding:20px!important}.form-group{margin-bottom:16px!important}.form-label{font-size:.9rem!important;margin-bottom:6px!important}.form-input,.form-textarea,.form-select{padding:10px 12px!important;font-size:16px!important}.form-button,.submit-button{width:100%!important;padding:12px!important}}@media(max-width:767px){.admin-dashboard{padding:16px!important}.admin-section{margin-bottom:24px!important}.stats-grid{grid-template-columns:1fr!important}.stat-card{padding:16px!important}.data-table-container{overflow-x:auto!important}.data-table{min-width:600px!important}.admin-tabs{overflow-x:auto!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch!important}.admin-tab{flex-shrink:0!important;padding:8px 16px!important;font-size:.9rem!important}}@media(max-width:767px){.profile-header{flex-direction:column!important;text-align:center!important;padding:20px!important}.profile-avatar{width:100px!important;height:100px!important;margin-bottom:16px!important}.profile-info{text-align:center!important}.profile-stats{flex-direction:column!important;gap:12px!important}.profile-tabs{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.profile-tab{flex-shrink:0!important;padding:8px 16px!important}}@media(max-width:767px){.charts-header{flex-direction:column!important;gap:16px!important}.chart-filters{width:100%!important;flex-direction:column!important}.filter-group{width:100%!important}.chart-grid{grid-template-columns:1fr!important}.chart-card-actions{flex-wrap:wrap!important}.chart-card-button{flex:1 1 auto!important;min-width:120px!important}}@media(max-width:767px){.player-container{padding:0!important;margin:0!important}.player-wrapper{height:calc(100vh - 60px)!important}.player-controls{padding:12px!important;flex-wrap:wrap!important}.player-button{padding:8px 12px!important;font-size:.85rem!important}}@media(max-width:767px){.site-footer{padding:24px 16px!important}.footer-content{flex-direction:column!important;text-align:center!important;gap:16px!important}.footer-links{flex-direction:column!important;gap:12px!important}.footer-social{justify-content:center!important}}.mobile-hide{display:none!important}@media(min-width:768px){.mobile-hide{display:block!important}.desktop-hide{display:none!important}}.mobile-only{display:block!important}@media(min-width:768px){.mobile-only{display:none!important}}@media(max-width:767px){button,a,.clickable{min-height:44px!important;min-width:44px!important}*{-webkit-overflow-scrolling:touch}}@media(max-width:767px)and (orientation:landscape){.hero-section{min-height:auto!important;padding:20px!important}.hero-logo{width:100px!important;height:100px!important}.main-title{font-size:2rem!important}.sub-title{font-size:1rem!important}}
