:root{--bg-color: #000;--btn-bg: rgba(0, 0, 0, .5);--btn-hover-bg: rgba(0, 0, 0, .8);--btn-color: white;--dot-bg: rgba(255, 255, 255, .5);--dot-active-bg: white;--loading-bg: rgba(0, 0, 0, .6);--fullscreen-btn-size: 48px;--fullscreen-btn-font: 1.5rem;--music-bar-bg: rgba(10, 10, 20, .4);--music-btn-bg: rgba(35, 35, 50, .65);--music-btn-hover: rgba(255, 255, 255, .25);--music-btn-active: rgba(76, 175, 80, .8)}*{margin:0;padding:0;box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}button:focus,button:focus-visible{outline:none}html,body,#app{width:100%;height:100%;overflow:hidden}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-color)}.carousel-container{position:relative;width:100%;height:100%;background:var(--bg-color);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.user-area{position:absolute;top:1rem;right:1rem;z-index:30;display:flex;align-items:center;gap:8px;transition:opacity .2s,visibility .2s}.user-area.logged-in{background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:24px;padding:4px 4px 4px 8px}.user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;cursor:pointer;background:#333}.avatar-wrapper{position:relative;display:inline-flex}.vip-badge{position:absolute;bottom:-4px;left:50%;transform:translate(-50%);font-size:.55rem;font-weight:800;letter-spacing:.5px;color:#5d4037;background:linear-gradient(135deg,#ffd54f,#ffb300);border-radius:10px;padding:1px 7px;box-shadow:0 2px 6px #ffb30080;cursor:default;z-index:2;line-height:1.4;white-space:nowrap}.semi-transparent{opacity:.6}.guest-outline{border:2px solid rgba(255,255,255,.7);box-shadow:0 0 8px #ffffff4d}.login-bubble{position:absolute;top:50%;transform:translateY(-50%);right:52px;background:#fffffff2;color:#333;border-radius:10px;padding:8px 14px;font-size:.78rem;white-space:nowrap;box-shadow:0 2px 12px #0003;cursor:pointer;z-index:31;animation:bubbleIn .3s ease}.login-bubble:before{content:"";position:absolute;right:-8px;top:12px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid rgba(255,255,255,.95)}.guest-about-btn{position:absolute;top:3.8rem;right:1rem;background:#ffffff1f;color:#fffc;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 14px;font-size:.78rem;cursor:pointer;z-index:30;transition:background .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.guest-about-btn:hover{background:#ffffff38}@keyframes bubbleIn{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@media(max-width:480px){.user-area{top:.6rem;right:.6rem;gap:4px}.user-area.logged-in{padding:3px 3px 3px 6px;border-radius:20px}.user-avatar{width:32px;height:32px}.menu-btn{width:32px;height:32px;font-size:18px}.login-bubble{position:absolute;top:44px;right:0;left:auto;transform:none;white-space:normal;max-width:200px;width:max-content;font-size:.72rem;padding:8px 12px;text-align:left;border-radius:10px;box-shadow:0 4px 16px #0003;animation:bubbleInMobile .3s ease}.login-bubble:before{right:8px;left:auto;top:-7px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:7px solid rgba(255,255,255,.95);border-top:none}@keyframes bubbleInMobile{0%{opacity:0}to{opacity:1}}.guest-outline{border-width:2px}.guest-about-btn{top:.6rem;right:calc(.6rem + 40px);left:auto;bottom:auto;font-size:.75rem;padding:8px 16px;border-radius:20px;background:#ffffff2e;border-color:#ffffff4d}.dropdown-menu{top:52px;right:calc(.6rem + 38px);min-width:140px;padding:4px 0;max-height:calc(100vh - 65px);overflow-y:auto}.dropdown-menu button{padding:8px 12px;margin:1px 6px;font-size:13px}.menu-icon{width:24px;height:24px;border-radius:6px;font-size:.8rem;margin-right:6px}}.menu-btn{background:#00000080;border:none;color:#fff;font-size:28px;width:40px;height:40px;border-radius:50%;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;outline:none}.dropdown-menu{position:absolute;top:72px;right:calc(1rem + 48px);transform:translate(50%);background:#1e1e28f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:8px 0;min-width:150px;max-height:calc(100vh - 90px);overflow-y:auto;z-index:35;display:flex;flex-direction:column;box-shadow:0 4px 12px #0000004d;animation:menuSlideIn .25s ease}@keyframes menuSlideIn{0%{opacity:0}to{opacity:1}}.dropdown-menu button{background:none;border:none;color:#fff;padding:8px 12px;margin:2px 8px;text-align:left;cursor:pointer;font-size:14px;border-radius:20px;transition:background .15s}.dropdown-menu button:hover{background:#ffffff1f}.menu-icon{width:28px;height:28px;border-radius:7px;background:#ffffff14;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;margin-right:8px;vertical-align:middle}body.fullscreen .user-area,body.simulate-fullscreen .user-area{opacity:0;visibility:hidden;pointer-events:none}body.fullscreen .user-area.controls-visible,body.simulate-fullscreen .user-area.controls-visible{opacity:1;visibility:visible;pointer-events:auto}body.fullscreen .user-area:not(.logged-in),body.simulate-fullscreen .user-area:not(.logged-in){opacity:.5!important;visibility:visible!important;pointer-events:auto!important}body.fullscreen .nav-btn,body.simulate-fullscreen .nav-btn{opacity:0;pointer-events:none}body.fullscreen .dots,body.simulate-fullscreen .dots{display:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal-container{background:#1e1e2e;color:#e0e0e0;border-radius:20px;width:90%;max-width:400px;max-height:85vh;max-height:85dvh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #333}.modal-header h3{margin:0;font-size:1.1rem}.close-btn{background:none;border:none;color:#888;font-size:22px;cursor:pointer}.modal-body{padding:20px}.empty-text{text-align:center;color:#888;padding:20px 0}
