.search-wrap[data-v-2c15b77e]{position:relative;width:100%}.search-input[data-v-2c15b77e]{width:100%;height:36px;padding:0 16px 0 36px;border-radius:18px;border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-text-primary);font-size:13px;outline:none;transition:border .25s,background .25s,box-shadow .25s;-webkit-appearance:none}.search-input[data-v-2c15b77e]:focus{border-color:var(--color-input-focus);background:var(--color-bg-hover);box-shadow:0 0 0 3px var(--color-accent-soft)}.search-icon[data-v-2c15b77e]{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;pointer-events:none}.dropdown[data-v-2c15b77e]{position:absolute;top:44px;left:0;right:0;z-index:200;background:var(--color-bg-secondary);border:1px solid var(--color-card-border);border-radius:12px;max-height:280px;overflow-y:auto;padding:4px;box-shadow:0 8px 32px #0000004d}.result-item[data-v-2c15b77e]{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;text-decoration:none;color:var(--color-text-primary);transition:background .15s;min-height:44px}.result-item[data-v-2c15b77e]:active,.result-item[data-v-2c15b77e]:hover{background:var(--color-bg-hover)}.r-emoji[data-v-2c15b77e]{font-size:24px}.r-title[data-v-2c15b77e]{font-size:14px;font-weight:500}.r-meta[data-v-2c15b77e]{font-size:11px;color:var(--color-text-muted)}.r-info[data-v-2c15b77e]{display:flex;flex-direction:column;gap:2px}@media (max-width: 768px){.search-input[data-v-2c15b77e]{height:40px;font-size:14px}}.theme-toggle[data-v-3b831b37]{background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;-webkit-tap-highlight-color:transparent}.toggle-track[data-v-3b831b37]{position:relative;width:48px;height:26px;border-radius:13px;background:var(--color-card-border);display:flex;align-items:center;justify-content:space-between;padding:0 5px;transition:background .3s ease}.toggle-icon[data-v-3b831b37]{font-size:12px;line-height:1;position:relative;z-index:1;transition:opacity .3s ease}.toggle-icon.sun[data-v-3b831b37]{opacity:.4}.toggle-icon.moon[data-v-3b831b37],[data-theme=light] .toggle-icon.sun[data-v-3b831b37]{opacity:.8}[data-theme=light] .toggle-icon.moon[data-v-3b831b37]{opacity:.4}.toggle-thumb[data-v-3b831b37]{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--color-accent);transition:transform .3s var(--ease-out);box-shadow:0 1px 3px #0003}.toggle-thumb.active[data-v-3b831b37]{transform:translate(22px)}@media (max-width: 768px){.toggle-track[data-v-3b831b37]{width:40px;height:22px;border-radius:11px;padding:0 4px}.toggle-thumb[data-v-3b831b37]{width:16px;height:16px;top:3px;left:3px}.toggle-thumb.active[data-v-3b831b37]{transform:translate(18px)}.toggle-icon[data-v-3b831b37]{font-size:10px}}.navbar[data-v-d55f4d08]{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background:var(--color-nav-bg);backdrop-filter:var(--blur-nav);-webkit-backdrop-filter:var(--blur-nav);border-bottom:1px solid var(--color-nav-border);transition:background .3s ease,border-color .3s ease}.nav-left[data-v-d55f4d08]{display:flex;align-items:center;gap:24px}.logo[data-v-d55f4d08]{font-size:22px;font-weight:900;color:var(--color-accent);text-decoration:none;letter-spacing:2px}.nav-link[data-v-d55f4d08]{color:var(--color-text-secondary);text-decoration:none;font-size:14px;transition:color .2s}.nav-link[data-v-d55f4d08]:hover,.nav-link.router-link-active[data-v-d55f4d08]{color:var(--color-text-primary)}.nav-center[data-v-d55f4d08]{flex:1;max-width:360px;margin:0 24px}.nav-right[data-v-d55f4d08]{display:flex;align-items:center;gap:12px}.desktop-only[data-v-d55f4d08]{display:flex}@media (max-width: 768px){.desktop-only[data-v-d55f4d08]{display:none!important}}.hamburger[data-v-d55f4d08]{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;border:none;background:transparent;cursor:pointer}.hamburger span[data-v-d55f4d08]{display:block;height:2px;width:100%;background:var(--color-text-primary);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.hamburger span.open[data-v-d55f4d08]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger span.open[data-v-d55f4d08]:nth-child(2){opacity:0}.hamburger span.open[data-v-d55f4d08]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.btn-admin[data-v-d55f4d08]{padding:6px 14px;border-radius:8px;background:var(--color-admin-accent-soft);color:var(--color-admin-accent);text-decoration:none;font-size:13px;font-weight:700;transition:background .2s}.btn-admin[data-v-d55f4d08]:hover{background:#7c3aed40}.btn-login[data-v-d55f4d08]{padding:6px 18px;border-radius:8px;background:var(--color-accent);color:#fff;text-decoration:none;font-size:13px;font-weight:700;transition:background .2s,box-shadow .2s,transform .2s}.btn-login[data-v-d55f4d08]:hover{background:var(--color-accent-hover);box-shadow:0 4px 12px var(--color-accent-glow);transform:translateY(-1px)}.btn-login[data-v-d55f4d08]:active{transform:scale(.96)}.user-btn[data-v-d55f4d08]{display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--color-text-primary);font-size:13px;padding:4px 10px;border-radius:8px;transition:background .2s}.user-btn[data-v-d55f4d08]:hover{background:var(--color-bg-hover)}.avatar[data-v-d55f4d08]{font-size:18px}.drawer-overlay[data-v-d55f4d08]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:110}.drawer[data-v-d55f4d08]{position:fixed;top:0;left:0;bottom:0;width:min(300px,80vw);z-index:120;background:var(--color-bg-secondary);display:flex;flex-direction:column;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);padding-bottom:env(safe-area-inset-bottom)}.drawer.open[data-v-d55f4d08]{transform:translate(0)}.drawer-head[data-v-d55f4d08]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-card-border)}.drawer-logo[data-v-d55f4d08]{font-size:20px;font-weight:900;color:var(--color-accent);letter-spacing:2px}.drawer-close[data-v-d55f4d08]{width:32px;height:32px;border-radius:8px;border:none;background:var(--color-bg-hover);color:var(--color-text-secondary);font-size:16px;cursor:pointer}.drawer-search[data-v-d55f4d08]{padding:12px 16px}.drawer-nav[data-v-d55f4d08]{flex:1;padding:8px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.drawer-link[data-v-d55f4d08]{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:10px;color:var(--color-text-secondary);text-decoration:none;font-size:15px;transition:background .15s}.drawer-link[data-v-d55f4d08]:hover,.drawer-link[data-v-d55f4d08]:active{background:var(--color-bg-hover)}.drawer-link.admin[data-v-d55f4d08]{color:var(--color-admin-accent)}.drawer-link.highlight[data-v-d55f4d08]{color:var(--color-accent);font-weight:600}.drawer-footer[data-v-d55f4d08]{padding:12px 16px;border-top:1px solid var(--color-card-border)}.drawer-logout[data-v-d55f4d08]{width:100%;padding:10px;border-radius:10px;border:1px solid var(--color-card-border);background:transparent;color:var(--color-text-muted);font-size:14px;cursor:pointer}@media (max-width: 768px){.navbar[data-v-d55f4d08]{height:56px;padding:0 12px}.hamburger[data-v-d55f4d08]{display:flex}.nav-left[data-v-d55f4d08]{gap:10px}.logo[data-v-d55f4d08]{font-size:20px}.nav-right[data-v-d55f4d08]{gap:8px}.btn-login[data-v-d55f4d08]{padding:5px 14px;font-size:12px}.user-btn[data-v-d55f4d08]{padding:2px 6px}}.bottom-nav[data-v-d594182b]{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--color-mobile-nav-bg);backdrop-filter:var(--blur-mobile);-webkit-backdrop-filter:var(--blur-mobile);border-top:1px solid var(--color-card-border);display:flex;align-items:center;justify-content:space-around;transition:background .3s ease,border-color .3s ease}.bn-item[data-v-d594182b]{display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--color-text-muted);padding:4px 0;min-width:56px;transition:color .15s,transform .2s;-webkit-tap-highlight-color:transparent}.bn-item.active[data-v-d594182b]{color:var(--color-accent)}.bn-item[data-v-d594182b]:active{transform:scale(.92)}.bn-icon[data-v-d594182b]{font-size:20px;line-height:1}.bn-label[data-v-d594182b]{font-size:10px;font-weight:500}@media (min-width: 769px){.bottom-nav[data-v-d594182b]{display:none!important}}.app-shell{min-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg-primary);color:var(--color-text-primary);transition:background-color .3s ease,color .2s ease}.main-content{flex:1}.back-top{position:fixed;bottom:80px;right:20px;z-index:80;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-card-border);background:var(--color-card-bg);color:var(--color-text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .25s var(--ease-out)}.back-top:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}@media (max-width: 768px){.main-content{padding-bottom:calc(56px + env(safe-area-inset-bottom))}.back-top{bottom:70px;right:12px;width:36px;height:36px}}:root{--color-bg-primary: #0a0a0f;--color-bg-secondary: #14141e;--color-bg-tertiary: #1a1a2e;--color-bg-elevated: #1e1e2e;--color-bg-hover: rgba(255, 255, 255, .06);--color-text-primary: #e8e8ec;--color-text-secondary: #a0a0b0;--color-text-muted: #6a6a7a;--color-text-inverse: #1a1a2e;--color-accent: #7c3aed;--color-accent-hover: #6d28d9;--color-accent-soft: rgba(124, 58, 237, .15);--color-accent-glow: rgba(124, 58, 237, .3);--color-admin-accent: #7c3aed;--color-admin-accent-soft: rgba(124, 58, 237, .15);--color-admin-bg: #0d0d14;--color-admin-sidebar: #0f0f18;--color-card-bg: rgba(255, 255, 255, .04);--color-card-border: rgba(255, 255, 255, .06);--color-card-hover-bg: rgba(255, 255, 255, .08);--color-card-hover-shadow: 0 8px 30px rgba(0, 0, 0, .4);--hero-s1: 40%;--hero-l1: 12%;--hero-s2: 30%;--hero-l2: 6%;--hero-overlay-bg: rgba(0,0,0,.5);--hero-overlay-bg-hover: rgba(0,0,0,.75);--hero-dot-bg: rgba(255,255,255,.3);--color-nav-bg: rgba(10, 10, 15, .92);--color-nav-border: rgba(255, 255, 255, .06);--color-mobile-nav-bg: rgba(14, 14, 22, .95);--color-input-bg: rgba(255, 255, 255, .06);--color-input-border: rgba(255, 255, 255, .1);--color-input-focus: rgba(124, 58, 237, .3);--color-shimmer-1: #14141e;--color-shimmer-2: #1e1e2e;--color-shimmer-3: #14141e;--color-rating: #f0c040;--color-player-accent: #fb7299;--color-player-accent-glow: rgba(251, 114, 153, .3);--color-player-bg: #000000;--color-player-placeholder-bg: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--color-player-text: #ffffff;--color-player-hint: var(--color-player-accent);--color-player-sub: rgba(255, 255, 255, .6);--color-success: #4ade80;--color-warning: #f59e0b;--color-danger: #ef4444;--blur-nav: blur(16px);--blur-mobile: blur(20px);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 24px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--ease-out: cubic-bezier(.4, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}[data-theme=light]{--color-bg-primary: #f5f5f7;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f0f0f5;--color-bg-elevated: #ffffff;--color-bg-hover: rgba(0, 0, 0, .05);--color-text-primary: #1a1a2e;--color-text-secondary: #4a4a5a;--color-text-muted: #8a8a9a;--color-text-inverse: #e8e8ec;--color-accent: #7c3aed;--color-accent-hover: #6d28d9;--color-accent-soft: rgba(124, 58, 237, .1);--color-accent-glow: rgba(124, 58, 237, .15);--color-admin-accent: #7c3aed;--color-admin-accent-soft: rgba(124, 58, 237, .1);--color-admin-bg: #f0f0f5;--color-admin-sidebar: #ffffff;--color-card-bg: #ffffff;--color-card-border: rgba(0, 0, 0, .08);--color-card-hover-bg: #ffffff;--color-card-hover-shadow: 0 4px 20px rgba(0, 0, 0, .08);--hero-s1: 70%;--hero-l1: 90%;--hero-s2: 60%;--hero-l2: 84%;--hero-overlay-bg: rgba(0,0,0,.35);--hero-overlay-bg-hover: rgba(0,0,0,.55);--hero-dot-bg: rgba(0,0,0,.25);--color-nav-bg: rgba(255, 255, 255, .92);--color-nav-border: rgba(0, 0, 0, .08);--color-mobile-nav-bg: rgba(255, 255, 255, .95);--color-input-bg: rgba(0, 0, 0, .04);--color-input-border: rgba(0, 0, 0, .12);--color-input-focus: rgba(124, 58, 237, .25);--color-shimmer-1: #e8e8ec;--color-shimmer-2: #f0f0f5;--color-shimmer-3: #e8e8ec;--color-rating: #e6a800;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-player-bg: #000000;--color-player-placeholder-bg: linear-gradient(135deg, #e8e8ec 0%, #f0f0f5 100%);--color-player-text: var(--color-text-primary);--color-player-hint: var(--color-accent);--color-player-sub: var(--color-text-secondary)}html.theme-transition *,html.theme-transition *:before,html.theme-transition *:after{transition:background-color .3s ease,border-color .3s ease,color .2s ease,box-shadow .3s ease!important}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),[tabindex]:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.card-shimmer,.hero-shimmer,.shimmer-player{background:linear-gradient(90deg,var(--color-shimmer-1) 25%,var(--color-shimmer-2) 50%,var(--color-shimmer-3) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@media (prefers-reduced-motion: reduce){.card-shimmer,.hero-shimmer,.shimmer-player{animation:none}}
