
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: "Microsoft Yahei", sans-serif;
            user-select: none;
        }
        body {
            background-color: #f7f9fc;
            padding: 12px;
        }
        .main-container {
            max-width: 1100px;
            margin: 0 auto;
            border: 4px solid #73a8f0;
            border-radius: 8px;
            overflow: hidden;
            background: #fffcf0;
        }
        /* ==========顶部蓝色栏：压缩垂直高度，更紧凑========== */
        .top-blue-bar {
            background-color: #73a8f0;
            display: flex;
            align-items: center;
            padding: 4px 10px;
            gap: 10px;
        }
        .top-blue-btn {
            padding: 3px 10px;
            border-radius: 10px;
            background: #ffffff;
            border: 1px solid #99b8e8;
            font-size: 13px;
            cursor: pointer;
            text-decoration: none !important;
        }
        .top-right-group {
            margin-left: auto;
            display: flex;
            gap: 10px;
            align-items: center;
        }

        /* VIP / 时光册 / 个人资料 / 换装：文字加粗+质感增强 */
        .vip-badge {
            font-size: 15px;
            font-weight: bold;
            padding: 4px 14px;
            border-radius: 12px;
            background: linear-gradient(180deg, #ffe88a, #ffcc00 45%, #ff9900);
            border: 1px solid #cc7700;
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.6),
                0 2px 5px rgba(200, 100, 0, 0.45);
            color: #702000;
            cursor: pointer;
            transition: transform 0.15s ease, filter 0.15s ease;
        }
        .vip-badge:hover {
            filter: brightness(1.08);
            transform: translateY(-1px);
        }

        .top-right-btn {
            padding: 4px 13px;
            border-radius: 12px;
            font-size: 13px;
            font-weight: 700;
            cursor: pointer;
            border: 1px solid;
            text-decoration: none !important;
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.35),
                0 2px 5px rgba(0,0,0,0.18);
            transition: transform 0.15s ease, filter 0.15s ease;
            text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
        }
        .top-right-btn:hover {
            filter: brightness(1.08);
            transform: translateY(-1px);
        }

        .btn-pink {
            background: linear-gradient(180deg, #ffeaf4, #ffc5dd);
            border-color: #f2a2bc;
            color: #7a2e4e;
        }
        .btn-yellow {
            background: linear-gradient(180deg, #fff8d6, #ffe88a);
            border-color: #e6c260;
            color: #704200;
        }
        .btn-sky {
            background: linear-gradient(180deg, #e8f4ff, #b8dcff);
            border-color: #73a8f0;
            color: #1e4a85;
        }

        /* =========房间标签栏：压缩垂直间距========== */
        .room-tab-bar {
            padding: 10px 14px 10px;
            display: flex;
            gap: 7px;
            flex-wrap: nowrap;
            align-items: center;
            background: linear-gradient(180deg,#fffdf7 0%,#f4edd6 100%);
            border-top: 1px solid rgba(255,255,255,.65);
            overflow: hidden;
        }
        .room-tab {
            position: relative;
            flex: 1 1 0;
            min-width: 0;
            padding: 8px 13px 9px 27px;
            border-radius: 13px;
            border: 1px solid #6e8cc4;
            background: linear-gradient(180deg,#ffffff 0%,#f2f6ff 46%,#dbe9ff 100%);
            font-size: 11.5px;
            font-weight: 900;
            color: #121212;
            cursor: pointer;
            text-decoration: none !important;
            text-align: center;
            letter-spacing: .3px;
            white-space: nowrap;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 3px 7px rgba(111,134,189,.20);
            text-shadow: 0 1px 0 rgba(255,255,255,.92);
            transition: transform .14s ease, filter .14s ease, box-shadow .14s ease;
        }
        .room-tab::before {
            content: '';
            position: absolute;
            left: 9px;
            top: 50%;
            transform: translateY(-50%);
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: radial-gradient(circle at 35% 35%, #ffffff 0 20%, #b7d5ff 35%, #679bff 100%);
            box-shadow: 0 0 8px rgba(103,155,255,.55);
        }
        .room-tab:hover {
            filter: brightness(1.04);
            transform: translateY(-1px);
            box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 4px 10px rgba(111,134,189,.28);
        }
        .room-tab.active {
            color:#111111;
            background: linear-gradient(180deg,#fff7c8 0%,#ffd95e 52%,#ffbf28 100%);
            border-color:#cf9a17;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 4px 10px rgba(210,155,27,.30);
            text-shadow: 0 1px 0 rgba(255,250,210,.95);
        }
        .room-tab.active::before {
            background: radial-gradient(circle at 35% 35%, #fffef5 0 20%, #ffe89b 35%, #ffae00 100%);
            box-shadow: 0 0 8px rgba(255,179,0,.65);
        }

        /* =========二级信息栏========== */
        .sub-bar {
            display: flex;
            align-items: center;
            padding: 3px 10px;
            background: #fffcf0;
            border-bottom: 1px solid #e9ddb0;
            position: relative;
        }
        .sub-bar-text {
            font-size: 14px;
            font-weight: 800;
            color: #111;
            letter-spacing: .2px;
        }
        .sub-right-buttons {
            margin-left: auto;
            display: flex;
            gap: 8px;
        }

        /* =========全服喇叭广播：显示在场景顶部，类似房间公告横条========== */
        .horn-list-container {
            position: absolute;
            top: 7px;
            left: 10px;
            right: 10px;
            z-index: 99;
            display: flex;
            flex-direction: column;
            gap: 4px;
            pointer-events: none;
        }
        .horn-item {
            width: 100%;
            min-height: 30px;
            display: flex;
            align-items: center;
            background: linear-gradient(180deg, rgba(230, 248, 255, 0.98), rgba(196, 234, 255, 0.95));
            color: #184765;
            border-radius: 8px;
            padding: 6px 14px 6px 44px;
            font-size: 13px;
            font-weight: 600;
            line-height: 1.35;
            border: 1px solid #46a6df;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            box-shadow:
                0 2px 8px rgba(0, 92, 145, 0.30),
                inset 0 0 0 1px rgba(255,255,255,0.25),
                0 0 10px rgba(105, 212, 255, 0.25);
            transition: opacity 0.3s ease;
            position: relative;
            overflow: hidden;
            animation: hornStrongGlow 1.8s ease-in-out infinite;
        }
        .horn-item::before {
            content: "🔊";
            position: absolute;
            left: 10px;
            top: 50%;
            transform: translateY(-50%);
            width: 22px;
            height: 22px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            background: radial-gradient(circle at 35% 35%, #fffef5, #ffe59c 72%);
            border: 1px solid #e1b84f;
            font-size: 12px;
            box-shadow: 0 0 8px rgba(255, 223, 117, 0.55);
        }
        /* 喇叭横条扫光加强一些 */
        .horn-item::after {
            content: "";
            position: absolute;
            top: -38%;
            bottom: -38%;
            width: 140px;
            left: -160px;
            transform: skewX(-20deg);
            background: linear-gradient(
                90deg,
                rgba(255,255,255,0),
                rgba(255,255,255,0.16),
                rgba(255,255,255,0.88),
                rgba(255,255,255,0.20),
                rgba(255,255,255,0)
            );
            animation: hornShimmer 2.1s linear infinite;
            pointer-events: none;
            mix-blend-mode: screen;
        }
        @keyframes hornShimmer {
            0% { left: -160px; opacity: 0; }
            10% { opacity: 0.95; }
            60% { left: calc(100% + 20px); opacity: 0.75; }
            100% { left: calc(100% + 20px); opacity: 0; }
        }
        @keyframes hornStrongGlow {
            0%, 100% {
                box-shadow:
                    0 2px 8px rgba(0, 92, 145, 0.30),
                    inset 0 0 0 1px rgba(255,255,255,0.22),
                    0 0 8px rgba(103, 210, 255, 0.18);
                filter: brightness(1);
            }
            50% {
                box-shadow:
                    0 3px 12px rgba(0, 92, 145, 0.40),
                    inset 0 0 0 1px rgba(255,255,255,0.32),
                    0 0 18px rgba(103, 210, 255, 0.55),
                    0 0 26px rgba(255, 245, 160, 0.20);
                filter: brightness(1.05);
            }
        }

        /* 玩家资料 / 动感魔法 / 退出房间：文字加粗+质感增强 */
        .sub-btn {
            padding: 5px 15px;
            border-radius: 13px;
            border: 1px solid;
            font-size: 13px;
            font-weight: 700;
            cursor: pointer;
            text-decoration: none !important;
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.45),
                0 2px 6px rgba(0,0,0,0.22);
            transition: transform 0.15s ease, filter 0.15s ease;
            text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
        }
        .sub-btn:hover {
            filter: brightness(1.08);
            transform: translateY(-1px);
        }

        .sub-btn.purple {
            background: linear-gradient(180deg, #f5ecff, #dcccf5);
            border-color: #b8a2dd;
            color: #483675;
        }
        .sub-btn.blue {
            background: linear-gradient(180deg, #e8f4ff, #b8d8f8);
            border-color: #73a8f0;
            color: #1e4a85;
        }
        .sub-btn.red {
            background: linear-gradient(180deg, #ffe8e8, #f8b0b0);
            border-color: #e87878;
            color: #852020;
        }
        /* 未加入房间时显示的“加入房间”按钮 */
        .sub-btn.lobby-join {
            display: none;
            padding: 4px 11px;
            font-size: 12px;
            background: linear-gradient(180deg, #f4fbff, #cfe9ff);
            border-color: #73a8f0;
            color: #1e5c99;
        }

        /* =========场景画布：加大高度========== */
        .scene-wrap {
            position: relative;
            width: 100%;
            height: 670px;
            border: 2px solid #88a8d8;
            overflow: hidden;
        }
        #scene {
            width: 100%;
            height: 100%;
            background-size: 107% 107%;
            background-position: left top;
            background-repeat: no-repeat;
            position: relative;
        }
        .player {
            position: absolute;
            width: 160px;
            height: 245px;
            pointer-events: none;
        }
        .player-img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        .name-tag {
            position: absolute;
            bottom: -22px;
            left: 50%;
            transform: translateX(-50%);
            text-align: center;
            font-size: 13px;
            padding: 2px 8px;
            border-radius: 2px;
            background: #ffdd44;
            border: 1px solid #d6b020;
            white-space: nowrap;
        }
        /* 自己发送聊天后，人物头顶短暂显示2秒 */
        .player-chat-bubble {
            position: absolute;
            left: 50%;
            top: -34px;
            transform: translateX(-50%);
            z-index: 8;
            max-width: 230px;
            min-width: 28px;
            padding: 6px 10px;
            border-radius: 8px;
            border: 1px solid #5f9bc4;
            background: rgba(244, 252, 255, 0.97);
            color: #183d59;
            font-size: 13px;
            line-height: 1.35;
            text-align: center;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            box-shadow: 0 2px 7px rgba(0, 70, 120, 0.22);
            opacity: 1;
            transition: opacity 0.16s ease, transform 0.16s ease;
        }
        .player-chat-bubble::after {
            content: "";
            position: absolute;
            left: 50%;
            bottom: -6px;
            width: 10px;
            height: 10px;
            transform: translateX(-50%) rotate(45deg);
            background: rgba(244, 252, 255, 0.97);
            border-right: 1px solid #5f9bc4;
            border-bottom: 1px solid #5f9bc4;
        }
        .player-chat-bubble.hide {
            opacity: 0;
            transform: translateX(-50%) translateY(-3px);
        }

        /*魔力值进度条*/
        .magic-bar-wrap {
            position: absolute;
            bottom: 10px;
            left: 10px;
            right: 10px;
            height: 14px;
            background: #cccccc;
            border-radius: 7px;
            overflow: hidden;
            border: 1px solid #6688bb;
        }
        .magic-bar-fill {
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, #40c8ff, #80e0ff);
            transition: width 0.3s ease;
        }
        .magic-label {
            position: absolute;
            left: 4px;
            top: -18px;
            font-size: 12px;
            color: #cc6600;
        }
        .magic-max {
            position: absolute;
            right: 6px;
            top: -18px;
            font-size: 12px;
            color: #222;
        }

        /* =========底部聊天区域：整体收窄，高度压缩========== */
        .bottom-chat-area {
            padding: 8px;
            background: #f3f0ff;
        }
        .chat-top-row {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 6px;
        }
        .chat-small-btn {
            padding: 3px 8px;
            border-radius: 12px;
            border: 1px solid #b8b8d0;
            font-size: 11px;
            cursor: pointer;
            text-decoration: none !important;
        }
        /* 全服喇叭按钮 */
        #btnHorn {
            font-size: 14px !important;
            padding: 5px 14px !important;
            background: linear-gradient(180deg, #ffdd66, #ffaa22);
            border: 1px solid #cc8800;
            box-shadow: 0 2px 3px rgba(180, 120, 0, 0.35);
            color: #773300;
            font-weight: bold;
        }
        #btnHorn:hover {
            background: linear-gradient(180deg, #ffe488, #ffbb44);
        }
        /* 喇叭行内输入框容器 */
        .horn-input-wrap {
            display: none;
            gap: 6px;
            align-items: center;
        }
        .horn-input-wrap.active {
            display: flex;
        }
        .horn-text-input {
            width: 240px;
            padding: 4px 8px;
            border-radius: 10px;
            border: 1px solid #b8b8d0;
            font-size: 12px;
            user-select: text;
        }
        .horn-send-btn {
            padding: 3px 10px;
            border-radius: 10px;
            border: none;
            background: #ff9922;
            color: white;
            cursor: pointer;
            font-size: 11px;
        }
        .chat-right-side {
            margin-left: auto;
            display: flex;
            gap: 8px;
        }
        .chat-box {
            height: 110px;
            background: #ffffff;
            border: 1px solid #b4b4cc;
            border-radius: 8px;
            padding: 8px;
            overflow-y: auto;
            font-size: 13px;
            transition: height 0.25s ease;
        }
        .chat-box.collapsed {
            height: 0px;
            padding: 0px;
            border: none;
        }
        .chat-line {
            margin: 4px 0;
            display: flex;
            align-items: center;
            gap: 8px;
            line-height: 1.5;
            flex-wrap: nowrap;
        }
        .chat-sender-tag {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0 8px;
            height: 28px;
            border-radius: 14px;
            background: linear-gradient(180deg, #fff8ca, #ffd866);
            border: 1px solid #d8ad1b;
            color: #6d4900;
            font-weight: 700;
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
            white-space: nowrap;
            flex: 0 0 auto;
        }
        .chat-sender-colon {
            color: #6d4900;
            font-weight: 700;
            line-height: 28px;
            margin-left: -2px;
            flex: 0 0 auto;
        }
        .chat-message-text {
            color: #222;
            word-break: break-word;
            white-space: pre-wrap;
            flex: 1 1 auto;
            min-width: 0;
            line-height: 28px;
        }
        .chat-system-line {
            margin: 4px 0;
            color: #6a56a5;
            line-height: 1.5;
        }
        /* =========聊天表情面板========== */
        .emoji-panel {
            display: none;
            grid-template-columns: repeat(auto-fill, minmax(38px, 1fr));
            gap: 2px;
            margin-top: 8px;
            padding: 8px;
            max-height: 190px;
            overflow-y: auto;
            background: #ffffff;
            border: 1px solid #c9b8ee;
            border-radius: 10px;
            box-shadow: inset 0 1px 2px rgba(70, 45, 120, 0.08);
        }
        .emoji-panel.active {
            display: grid;
        }
        .emoji-item {
            height: 36px;
            border: 1px solid transparent;
            border-radius: 6px;
            background: transparent;
            font-size: 25px;
            line-height: 1;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .emoji-item:hover {
            background: #eef6ff;
            border-color: #9dc8ef;
            transform: translateY(-1px);
        }
        #btnEmoji.active {
            background: #fff5c9;
            border-color: #e5ba4b;
            box-shadow: 0 0 0 2px rgba(229,186,75,0.15);
        }

        .chat-input-row {
            display: flex;
            gap: 8px;
            margin-top: 8px;
            align-items: center;
        }
        .chat-input {
            flex: 1;
            padding: 8px 12px;
            border: 1px solid #b4b4cc;
            border-radius: 18px;
            font-size: 14px;
            user-select: text;
        }
        .send-button {
            padding: 7px 16px;
            border-radius: 18px;
            border: none;
            background: #ff9922;
            color: white;
            cursor: pointer;
            text-decoration: none !important;
        }
        .mini-tool-group {
            display: flex;
            gap: 6px;
        }
        .mini-tool {
            width: 30px;
            height: 30px;
            border-radius: 50%;
            border: 1px solid #99aacc;
            background: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            text-decoration: none !important;
        }
        a {
            text-decoration: none !important;
        }

        /* =========遮罩层========== */
        .mask-layer {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, 0.45);
            z-index: 9998;
            display: none;
        }
        .mask-layer.active {
            display: block;
        }

        /* =========好友弹窗面板========== */
        .friend-modal {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 420px;
            max-height: 520px;
            background: #fffcf0;
            border: 3px solid #73a8f0;
            border-radius: 10px;
            z-index: 9999;
            padding: 12px;
            display: none;
        }
        .friend-modal.active {
            display: block;
        }
        .friend-modal-head {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 10px;
        }
        .friend-modal-title {
            font-weight: bold;
            font-size: 16px;
        }
        .friend-close-btn {
            padding: 2px 8px;
            cursor: pointer;
            border-radius: 8px;
            border: 1px solid #99aacc;
        }
        .friend-add-row {
            display: flex;
            gap: 6px;
            margin-bottom: 10px;
        }
        .friend-add-input {
            flex: 1;
            padding: 4px 8px;
            border-radius: 8px;
            border: 1px solid #b4b4cc;
        }
        .friend-add-btn {
            padding: 4px 10px;
            border-radius: 8px;
            border: none;
            background: #73a8f0;
            color: #fff;
            cursor: pointer;
        }
        .friend-list-wrap {
            max-height: 360px;
            overflow-y: auto;
        }
        .friend-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 6px 4px;
            border-bottom: 1px solid #e2e2e2;
        }
        .friend-del-btn {
            padding: 2px 6px;
            background: #ff8888;
            color: #fff;
            border: none;
            border-radius: 6px;
            cursor: pointer;
        }

        /* =========设置弹窗：打开后强制居中========== */
        .setting-modal {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 380px;
            background: #ffffff;
            border: 3px solid #b8a2dd;
            border-radius: 12px;
            z-index: 9999;
            padding: 0;
            display: none;
            overflow: hidden;
        }
        .setting-modal.active {
            display: block;
        }
        .setting-modal-head {
            background: linear-gradient(180deg, #f5ecff, #e8dcff);
            padding: 10px 12px;
            display: flex;
            justify-content: center;
            align-items: center;
            position: relative;
            border-bottom: 1px solid #d8c8f0;
            cursor: move;
        }
        .setting-modal-title {
            font-weight: bold;
            font-size: 15px;
            color: #483675;
        }
        .setting-close-btn {
            position: absolute;
            right: 12px;
            top: 50%;
            transform: translateY(-50%);
            width: 24px;
            height: 24px;
            border-radius: 50%;
            border: 1px solid #b8a2dd;
            background: #fff;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
            color: #483675;
        }
        .setting-body {
            padding: 16px 20px;
        }
        .setting-item {
            margin-bottom: 14px;
        }
        .setting-item-label {
            font-size: 13px;
            color: #333;
            margin-bottom: 4px;
        }
        .setting-item-desc {
            font-size: 11px;
            color: #888;
            margin-bottom: 6px;
        }
        .switch-wrap {
            display: flex;
            justify-content: flex-end;
            margin-top: -28px;
        }
        .switch-btn {
            width: 44px;
            height: 22px;
            border-radius: 11px;
            background: #ddd;
            position: relative;
            cursor: pointer;
            transition: background 0.2s ease;
        }
        .switch-btn.active {
            background: #40a0ff;
        }
        .switch-btn::after {
            content: '';
            position: absolute;
            top: 2px;
            left: 2px;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            background: #fff;
            transition: left 0.2s ease;
        }
        .switch-btn.active::after {
            left: 24px;
        }
        .music-row {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 14px;
        }
        .music-name {
            flex: 1;
            font-size: 13px;
            color: #333;
        }
        .music-play-btn {
            width: 24px;
            height: 24px;
            border-radius: 50%;
            border: 1px solid #ccc;
            background: #fff;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
        }
        .install-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 14px;
            padding: 8px 10px;
            background: #f8f8ff;
            border-radius: 6px;
        }
        .install-text {
            font-size: 12px;
            color: #666;
        }
        .install-btn {
            padding: 3px 10px;
            border-radius: 6px;
            border: none;
            background: #73a8f0;
            color: #fff;
            font-size: 12px;
            cursor: pointer;
        }
        .setting-bottom-btn {
            width: 100%;
            padding: 8px;
            border-radius: 8px;
            border: none;
            font-size: 14px;
            cursor: pointer;
            margin-bottom: 8px;
        }
        .btn-diagnose {
            background: #fff;
            border: 1px solid #d0c0e8;
            color: #483675;
        }
        .btn-logout {
            background: linear-gradient(180deg, #ffb0b0, #ff8888);
            color: #fff;
            font-weight: bold;
        }

        /* =========个人资料弹窗【修改：全部显示为0】========== */
        .profile-modal {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 520px;
            max-height: 620px;
            background: linear-gradient(180deg,#fcfaff,#f7f2ff);
            border: 3px solid #b8a2dd;
            border-radius: 14px;
            box-shadow: 0 8px 24px rgba(80,40,140,0.28), inset 0 1px 0 rgba(255,255,255,0.7);
            z-index: 9999;
            padding: 0;
            display: none;
            overflow: hidden;
        }
        .profile-modal.active {
            display: block;
        }
        .profile-modal-head {
            background: linear-gradient(180deg, #f8f0ff, #e9ddfb);
            padding: 12px 16px;
            text-align: center;
            border-bottom: 2px solid #d8c8f0;
            box-shadow: 0 2px 4px rgba(150,110,200,0.12);
        }
        .profile-modal-title {
            font-weight: bold;
            font-size: 16px;
            color: #483675;
            text-shadow: 0 1px 0 #ffffff;
        }
        .profile-body {
            padding: 18px 22px;
            max-height: 500px;
            overflow-y: auto;
        }
        /* 头像置顶显示 */
        .profile-avatar-top-wrap{
            display:flex;
            justify-content:center;
            margin-bottom:16px;
        }
        .profile-big-avatar{
            width:90px;
            height:90px;
            border-radius:14px;
            border:3px solid #b8a2dd;
            font-size:48px;
            display:flex;
            align-items:center;
            justify-content:center;
            background:#fff;
            box-shadow:0 3px 10px rgba(100,60,160,0.2);
        }
        .profile-info-row {
            margin-bottom: 12px;
            font-size: 17px;
            font-weight:bold;
            padding:6px 10px;
            background:rgba(255,255,255,0.7);
            border-radius:8px;
        }
        .profile-info-label{
            color:#603896;
        }
        .profile-info-value{
            color:#224488;
        }
        .profile-section-title {
            font-weight: bold;
            font-size: 16px;
            color: #483675;
            margin: 18px 0 10px;
            padding-bottom: 5px;
            border-bottom: 1px solid #e8e0f5;
        }
        .avatar-grid {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 9px;
            margin-bottom: 14px;
        }
        .avatar-item {
            width: 62px;
            height: 62px;
            border-radius: 14px;
            border: 2px solid #c7b8f1;
            background: linear-gradient(145deg,#ffffff,#f4effd);
            box-shadow:0 3px 8px rgba(115,90,180,0.10), inset 0 1px 0 rgba(255,255,255,.95);
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 26px;
            overflow: hidden;
            transition: transform 0.12s ease, box-shadow .12s ease;
        }
        .avatar-item:hover{
            transform:scale(1.06);
            box-shadow:0 5px 12px rgba(115,90,180,0.18), inset 0 1px 0 rgba(255,255,255,.95);
        }
        .avatar-item.selected {
            border-color: #8e5df3;
            background: linear-gradient(145deg,#fff9cf,#f4e7ff);
            box-shadow:0 0 0 2px rgba(142,93,243,0.28), 0 6px 14px rgba(121,88,188,0.18);
        }
        .profile-input {
            width: 100%;
            padding: 9px 12px;
            border-radius: 8px;
            border: 1px solid #d0c8e0;
            font-size: 15px;
            margin-bottom: 8px;
            background:#fff;
            box-shadow: inset 0 1px 2px rgba(0,0,0,0.06);
        }
        .profile-select {
            width: 100%;
            padding: 9px 12px;
            border-radius: 8px;
            border: 1px solid #d0c8e0;
            font-size: 15px;
            margin-bottom: 8px;
            background:#fff;
            box-shadow: inset 0 1px 2px rgba(0,0,0,0.06);
        }
        .profile-tip {
            font-size: 12px;
            color: #888;
            margin-bottom: 12px;
        }
        .save-profile-btn {
            width: 100%;
            padding: 11px;
            border-radius: 10px;
            border: none;
            background: linear-gradient(180deg, #ffdd66, #ffaa22);
            box-shadow:0 3px 8px rgba(200,120,0,0.3);
            color: #773300;
            font-weight: bold;
            font-size: 16px;
            cursor: pointer;
            margin-top: 10px;
            transition:transform 0.12s ease;
        }
        .save-profile-btn:hover{
            transform: translateY(-1px);
        }
    

/* ===== 个人资料长面板：只作用于大厅个人资料，不影响时光册/玩家资料 ===== */
#profileModal {
    width: min(560px, calc(100vw - 28px));
    height: min(670px, calc(100vh - 24px));
    max-height: calc(100vh - 24px);
    border: 3px solid #9c72ea;
    border-radius: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f1ff 100%);
    box-shadow: 0 14px 36px rgba(71, 42, 118, .30);
    overflow: hidden;
}
#profileModal.active { display: flex; flex-direction: column; }
.profile-custom-head {
    flex: 0 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 22px 24px 12px;
    background: rgba(255,255,255,.96);
}
.profile-custom-title {
    color: #6943a9;
    font-size: 27px;
    font-weight: 900;
    position: relative;
    padding-bottom: 12px;
}
.profile-custom-title::after {
    content: ""; position: absolute; left: 0; bottom: 0; width: 42px; height: 4px;
    border-radius: 4px; background: linear-gradient(90deg,#7b4dde,#bd91ff);
}
.profile-close-btn {
    border: none; background: transparent; font-size: 19px; color: #333; cursor: pointer;
    padding: 8px 10px; border-radius: 9px;
}
.profile-close-btn:hover { background: #f2ebff; }
#profileModal .profile-custom-body {
    flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 8px 22px 24px;
    scrollbar-width: thin; scrollbar-color: #888 #f0ecf8;
}
#profileModal .profile-custom-body::-webkit-scrollbar { width: 10px; }
#profileModal .profile-custom-body::-webkit-scrollbar-track { background: #f0ecf8; }
#profileModal .profile-custom-body::-webkit-scrollbar-thumb { background: #858585; border-radius: 9px; border: 2px solid #f0ecf8; }
.profile-hero { text-align: center; padding: 4px 0 14px; }
.profile-avatar-circle {
    width: 104px; height: 104px; margin: 0 auto 8px; border-radius: 50%; display: flex;
    align-items: center; justify-content: center; font-size: 54px; background: #fff;
    border: 6px solid #ffe39b; box-shadow: 0 5px 15px rgba(91,65,132,.18);
}
.profile-hero-name { color: #8b5600; font-size: 25px; font-weight: 900; margin: 2px 0 12px; }
.profile-plan-pill {
    display: inline-flex; align-items: center; min-height: 38px; padding: 0 17px; border-radius: 22px;
    background: linear-gradient(#f5f5f5,#e9e9e9); color: #6e6e6e; font-weight: 700;
    box-shadow: 0 3px 9px rgba(0,0,0,.12); margin-bottom: 4px;
}
.profile-menu-card {
    width: 100%; min-height: 54px; border-radius: 17px; font-size: 18px; font-weight: 800;
    margin: 10px 0 0; cursor: pointer; box-shadow: inset 0 1px rgba(255,255,255,.65);
}
.profile-menu-card.purple { border: 1.8px solid #9c72ea; background: #f0e8ff; color: #6740ac; }
.profile-menu-card.gold { border: 1.8px solid #e1b33c; background: #fff3bf; color: #996500; }
.profile-stats-card {
    margin: 16px 0 12px; padding: 16px 16px 14px; border-radius: 17px; border: 1.6px solid #c7adee;
    background: #f7f2ff; box-shadow: 0 5px 14px rgba(97,66,143,.10); color: #333;
}
.profile-stats-card div { line-height: 1.78; font-size: 16px; }
.profile-stats-card b { color: #6642a5; margin-right: 6px; }
#profileModal .profile-section-title {
    color: #6844a8; font-size: 18px; font-weight: 900; margin: 18px 0 10px; padding: 0 0 9px;
    border: 0; position: relative;
}
#profileModal .profile-section-title::after {
    content: ""; position: absolute; left: 0; bottom: 0; width: 47px; height: 3px; border-radius: 3px;
    background: linear-gradient(90deg,#7c4ddd,#bd91ff);
}
.avatar-scroll-shell {
    max-height: 205px; overflow-y: auto; padding: 10px; border-radius: 15px;
    background: #faf7ff; border: 1px solid #d9c7f3;
}
#profileModal .avatar-grid { grid-template-columns: repeat(7, 1fr); gap: 10px; margin: 0; }
#profileModal .avatar-item {
    width: 100%; aspect-ratio: 1; height: auto; min-height: 48px; border-radius: 13px;
    border: 1.6px solid #cbb4ec; background: #fff; font-size: 25px;
}
#profileModal .avatar-item.selected { border-color: #8c5ee1; box-shadow: 0 0 0 2px rgba(140,94,225,.16); background: #fff8d8; }
#profileModal .profile-input, #profileModal .profile-select {
    width: 100%; border-radius: 16px; border: 1.8px solid #c6abea; padding: 12px 14px; font-size: 17px;
    background: #fff; outline: none; box-shadow: 0 2px 8px rgba(93,59,146,.08); margin-bottom: 7px; user-select: text;
}
.profile-sign-input { min-height: 76px; resize: vertical; font-family: inherit; }
.profile-green-tip { color: #3f9b4c !important; }
.profile-sign-count { text-align: right; color: #8c8494; font-size: 13px; margin-top: -2px; }
#profileModal .save-profile-btn {
    min-height: 55px; border-radius: 15px; background: linear-gradient(#f5ad00,#ed9d00); color: #fff;
    font-size: 19px; margin-top: 15px; box-shadow: 0 4px 10px rgba(219,139,0,.26);
}

/* ===== 设置功能增强 ===== */
.setting-modal { width: 430px; max-width: calc(100vw - 28px); }
.setting-body { max-height: min(610px, calc(100vh - 90px)); overflow-y: auto; }
.music-control-card { padding: 10px; margin-bottom: 14px; border-radius: 10px; background: #f8f6ff; border: 1px solid #e4dcf2; }
.music-control-card .music-row { margin-bottom: 9px; }
.music-label { font-size: 14px; font-weight: 700; color: #333; flex: 1; }
.music-select { width: 100%; padding: 8px 9px; border: 1px solid #d1c5e8; border-radius: 8px; background: #fff; color: #3c3350; font-size: 13px; outline: none; }
.music-volume-row { display: grid; grid-template-columns: auto 1fr auto; gap: 8px; align-items: center; margin-top: 9px; font-size: 12px; color: #666; }
.music-volume-row input { width: 100%; accent-color: #7c61d9; }
.music-status { font-size: 11px; color: #786e86; margin-top: 7px; text-align: right; }
.diagnose-result { display: none; border: 1px solid #d9c9f1; background: #faf8ff; color: #4e4165; padding: 8px 10px; border-radius: 8px; font-size: 12px; line-height: 1.55; margin: -2px 0 9px; }
.diagnose-result.active { display: block; }
.btn-vip-test{
    color:#fff!important;
    border-color:#5e8ee6!important;
    background:linear-gradient(180deg,#69b8ff,#2b78df)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 3px 8px rgba(40,103,190,.22)!important;
}
.btn-vip-test[hidden]{display:none!important}
.btn-vip-test:hover{filter:brightness(1.06)}

/* ===== 炫酷充值等级徽章（不直接显示 VIP 文本） ===== */
.vip-rank-badge {
    position: relative; width: 48px; height: 34px; padding: 0; border-radius: 13px;
    display: flex; align-items: center; justify-content: center; overflow: visible;
    background: radial-gradient(circle at 50% 20%, #7af4ff 0%, #2e7bd8 35%, #1d245f 75%, #141234 100%);
    border: 1px solid #82e8ff; box-shadow: inset 0 0 9px rgba(255,255,255,.38), 0 0 7px rgba(79,214,255,.60), 0 3px 8px rgba(31,27,87,.40);
    color: #fff; animation: rankPulse 2.1s ease-in-out infinite;
}
.vip-rank-badge::before, .vip-rank-badge::after {
    content: ""; position: absolute; width: 8px; height: 8px; background: #e9fdff; transform: rotate(45deg); border-radius: 1px; opacity: .75;
}
.vip-rank-badge::before { left: -3px; top: 4px; animation: rankSpark 1.8s infinite; }
.vip-rank-badge::after { right: -3px; bottom: 4px; animation: rankSpark 1.8s .8s infinite; }
.vip-rank-gem { font-size: 23px; color: #dffcff; text-shadow: 0 0 5px #8af7ff, 0 0 10px #8d8cff; transform: translateY(-1px); }
.vip-rank-number {
    position: absolute; right: -7px; bottom: -7px; min-width: 20px; height: 20px; padding: 0 4px; border-radius: 10px;
    display: none; align-items: center; justify-content: center; font-size: 11px; font-weight: 900; color: #5b3300;
    background: linear-gradient(#fff5a8,#ffb20b); border: 1px solid #cb7900; box-shadow: 0 1px 5px rgba(0,0,0,.35);
}
.vip-rank-number.show { display: flex; }
@keyframes rankPulse { 0%,100%{filter:brightness(1); box-shadow:inset 0 0 9px rgba(255,255,255,.38),0 0 7px rgba(79,214,255,.55),0 3px 8px rgba(31,27,87,.40)} 50%{filter:brightness(1.12); box-shadow:inset 0 0 12px rgba(255,255,255,.55),0 0 14px rgba(79,214,255,.9),0 3px 10px rgba(31,27,87,.42)} }
@keyframes rankSpark { 0%,100%{transform:rotate(45deg) scale(.6);opacity:.15} 50%{transform:rotate(45deg) scale(1.15);opacity:1} }
.rank-modal { display:none; position:fixed; z-index:10020; left:50%; top:50%; transform:translate(-50%,-50%); width:min(400px,calc(100vw - 28px)); border:2px solid #65d9ff; border-radius:16px; overflow:hidden; background:linear-gradient(180deg,#171b47,#28225b); color:#fff; box-shadow:0 16px 40px rgba(0,0,0,.45),0 0 25px rgba(79,214,255,.35); }
.rank-modal.active { display:block; }
.rank-modal-head { display:flex; align-items:center; justify-content:space-between; padding:12px 14px; font-size:16px; font-weight:800; background:rgba(255,255,255,.08); }
.rank-modal-head button { width:28px; height:28px; border-radius:50%; border:1px solid #83dfff; background:rgba(255,255,255,.10); color:#fff; cursor:pointer; }
.rank-modal-body { padding:17px; text-align:center; }
.rank-big-emblem { width:80px; height:65px; margin:0 auto 10px; border-radius:20px; display:flex; align-items:center; justify-content:center; position:relative; background:radial-gradient(circle,#4e9df4,#252364 72%); border:1px solid #74e7ff; box-shadow:0 0 18px rgba(85,222,255,.55); }
.rank-big-emblem span { font-size:39px; color:#dffcff; text-shadow:0 0 10px #85f1ff; }
.rank-big-emblem b { position:absolute; right:-7px; bottom:-7px; min-width:25px; height:25px; border-radius:13px; background:#ffc52c; color:#633b00; border:1px solid #e28a00; display:flex; align-items:center; justify-content:center; }
.rank-total-text { font-size:17px; margin:9px 0; }
.rank-rule-text,.rank-note { font-size:12px; line-height:1.55; color:#d7d6ed; }
.rank-test-row { display:flex; gap:8px; margin:14px 0 10px; }
.rank-test-row input { flex:1; min-width:0; padding:9px 10px; border-radius:9px; border:1px solid #78dffc; outline:none; user-select:text; }
.rank-test-row button { padding:9px 12px; border:none; border-radius:9px; background:linear-gradient(#ffe872,#ffae16); color:#633700; font-weight:800; cursor:pointer; }

@media (max-width: 620px) {
    #profileModal { width: calc(100vw - 16px); height: calc(100vh - 16px); max-height: calc(100vh - 16px); border-radius: 16px; }
    #profileModal .avatar-grid { grid-template-columns: repeat(5, 1fr); }
}


/* ===== 本次：时光册三张装扮照片 ===== */
.timebook-modal { width: min(620px, calc(100vw - 28px)); }
.timebook-body { padding: 18px 20px 20px; }
.timebook-tip { text-align:center; color:#75678a; font-size:13px; margin-bottom:14px; }
.timebook-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:16px; }
.timebook-slot {
    position:relative; aspect-ratio:1/1; min-width:0; border:2px dashed #af8be9; border-radius:14px;
    background:linear-gradient(145deg,#fff,#f7f0ff); overflow:hidden; cursor:pointer; display:flex; align-items:center; justify-content:center;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 3px 9px rgba(87,55,130,.08);
}
.timebook-slot:hover { border-color:#8052dc; box-shadow:0 0 0 3px rgba(128,82,220,.10); }
.timebook-file-input { display:none; }
.timebook-image { width:100%; height:100%; object-fit:cover; display:none; }
.timebook-slot.has-photo .timebook-image { display:block; }
.timebook-slot.has-photo .timebook-placeholder { display:none; }
.timebook-placeholder { color:#765f8f; font-size:16px; font-weight:700; text-align:center; }
.timebook-placeholder small { display:block; margin-top:5px; font-size:11px; font-weight:400; color:#a090b3; }
@media (max-width:560px){ .timebook-grid{grid-template-columns:1fr;} .timebook-slot{max-width:260px;width:100%;justify-self:center;} }

/* ===== 本次：个人资料头像改为图像式头像 ===== */
.profile-avatar-circle { overflow:hidden; padding:0; }
.profile-avatar-circle img { width:100%; height:100%; object-fit:cover; display:block; }
#profileModal .avatar-item { padding:0; overflow:hidden; background:#fff; }
#profileModal .avatar-item img { width:100%; height:100%; object-fit:cover; display:block; image-rendering: auto; }
#profileModal .avatar-item.selected { border-color:#7e50dd; box-shadow:0 0 0 3px rgba(126,80,221,.20),0 2px 7px rgba(71,43,120,.18); background:#fff6cc; }

/* ===== 本次：质感充值等级徽章 ===== */
.vip-rank-badge {
    position: relative;
    width: 66px;
    height: 42px;
    border-radius: 14px;
    padding: 0;
    overflow: visible;
    background: linear-gradient(160deg,#12142b 0%,#213166 38%,#2a4ca5 72%,#17225a 100%);
    border: 1px solid #f8d978;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), inset 0 -1px 0 rgba(0,0,0,.25), 0 5px 12px rgba(19,25,68,.45), 0 0 12px rgba(243,212,108,.28);
    animation: luxRankGlow 2.8s ease-in-out infinite;
}
.vip-rank-badge::before,
.vip-rank-badge::after { content:''; position:absolute; pointer-events:none; }
.vip-rank-badge::before {
    inset: 3px;
    border-radius: 11px;
    background: linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,0) 42%, rgba(255,255,255,.06));
}
.vip-rank-badge::after {
    left: 7px;
    top: 5px;
    width: 22px;
    height: 22px;
    clip-path: polygon(50% 0%, 63% 22%, 85% 22%, 70% 42%, 78% 70%, 50% 55%, 22% 70%, 30% 42%, 15% 22%, 37% 22%);
    background: linear-gradient(180deg,#fff7c9 0%,#ffd757 60%,#e59a06 100%);
    box-shadow: 0 0 9px rgba(255,222,124,.55);
}
.vip-rank-badge.normal .vip-rank-gem,
.vip-rank-badge.empty .vip-rank-gem {
    color:#fdf6cf;
    text-shadow:0 0 6px rgba(255,238,177,.86), 0 0 13px rgba(90,155,255,.35);
}
.vip-rank-badge.elite {
    background: linear-gradient(160deg,#371000 0%,#7a1f08 33%,#c24814 64%,#531400 100%);
    border-color:#ffe8a3;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 -1px 0 rgba(0,0,0,.24), 0 5px 14px rgba(88,31,0,.45), 0 0 16px rgba(255,206,103,.42);
}
.vip-rank-badge.elite::after {
    background: linear-gradient(180deg,#fff8d7 0%,#ffd16a 45%,#ff8a26 100%);
    box-shadow: 0 0 10px rgba(255,187,75,.68);
}
.vip-rank-badge.elite .vip-rank-gem { color:#fff4c7; text-shadow:0 0 7px rgba(255,240,171,.95), 0 0 14px rgba(255,145,45,.7); font-weight:900; }
.vip-rank-gem {
    position:absolute;
    left:13px;
    top:7px;
    font-size:16px;
    font-weight:900;
    filter: drop-shadow(0 1px 0 rgba(0,0,0,.28));
}
.vip-rank-number {
    position:absolute;
    right:-6px;
    bottom:-7px;
    min-width:24px;
    height:24px;
    padding:0 7px;
    border-radius:12px;
    display:none;
    align-items:center;
    justify-content:center;
    color:#593100;
    background: linear-gradient(180deg,#fffbe2 0%,#ffd45b 52%,#eda80d 100%);
    border:1px solid #af6a00;
    box-shadow: 0 2px 6px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.8);
    font-size:13px;
    font-weight: 900;
    line-height:1;
}
.vip-rank-number.show { display:flex; }
@keyframes luxRankGlow {
    0%,100% { transform: translateY(0); filter: brightness(1); }
    50% { transform: translateY(-1px); filter: brightness(1.08); }
}

/* 人物昵称 + 等级徽章 */
.player { pointer-events:auto; cursor:pointer; }
.player-name-row {
    position:absolute;
    left:50%;
    bottom:-36px;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
    z-index:6;
}
.player-name-row .name-tag { position:static; left:auto; bottom:auto; transform:none; }
.player-vip-mini {
    height:22px;
    min-width:40px;
    padding:0 8px;
    border-radius:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    background:linear-gradient(160deg,#12142c 0%,#223165 40%,#2b4ba0 100%);
    border:1px solid #efcf6e;
    color:#fff1a8;
    box-shadow:inset 0 1px rgba(255,255,255,.18), 0 3px 8px rgba(35,43,92,.32), 0 0 7px rgba(241,207,107,.2);
    font-size:12px;
    font-weight:900;
    line-height:1;
}
.player-vip-mini i {
    position: relative;
    font-style:normal;
    color:#fff1c8;
    font-size:11px;
    text-shadow:0 0 5px rgba(255,240,177,.7);
}
.player-vip-mini::before {
    content:'';
    width:10px;
    height:10px;
    border-radius:50%;
    margin-right:-12px;
    position:absolute;
    left:5px;
    top:5px;
    background: radial-gradient(circle at 35% 35%, rgba(255,255,255,.95) 0 22%, #ffe08a 36%, rgba(255,187,38,.95) 100%);
    box-shadow:0 0 7px rgba(255,204,92,.55);
}
.player-vip-mini b { color:#ffec9a; font-size:12px; font-weight:900; margin-left:6px; }
.player-vip-mini.elite {
    background:linear-gradient(160deg,#4c1400 0%,#7f2309 42%,#c24e17 100%);
    border-color:#ffe08c;
    box-shadow:inset 0 1px rgba(255,255,255,.18), 0 3px 8px rgba(111,42,1,.38), 0 0 8px rgba(255,203,84,.35);
}
.player-vip-mini.elite::before { background: radial-gradient(circle at 35% 35%, rgba(255,255,255,.98) 0 22%, #fff3b2 35%, #ff9e2c 100%); box-shadow:0 0 8px rgba(255,183,68,.7); }
.player-vip-mini.elite i { color:#fff2b2; text-shadow:0 0 7px rgba(255,222,144,.8); font-weight:900; }
.player.selected-player::after { content:none; display:none; }

/* 玩家资料：头像和充值等级 */
.player-info-avatar { width:92px; height:92px; border-radius:50%; overflow:hidden; border:4px solid #f4d576; background:#fff; box-shadow:0 4px 12px rgba(75,52,118,.16); }
.player-info-avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.player-info-name-line { display:flex; align-items:center; justify-content:center; gap:8px; color:#603896; font-size:21px; font-weight:900; margin:2px 0 14px; }
.player-info-rank { display:none; height:25px; min-width:42px; padding:0 7px; border-radius:8px; align-items:center; justify-content:center; gap:4px; background:linear-gradient(145deg,#15142d,#39356d); border:1px solid #e5c35b; box-shadow:0 0 7px rgba(229,195,91,.32); }
.player-info-rank.show { display:inline-flex; }
.player-info-rank i { font-style:normal; color:#fff5cd; text-shadow:0 0 6px rgba(255,238,177,.8); font-size:12px; font-weight:900; }
.player-info-rank b { color:#ffe285; font-size:12px; font-weight:900; }
.player-info-rank.elite { background:linear-gradient(160deg,#481201,#7d2309 46%,#be4a16 100%); border-color:#ffe08c; box-shadow:0 0 8px rgba(255,198,83,.38); }
.player-info-rank.elite i { color:#fff2b2; text-shadow:0 0 7px rgba(255,222,144,.8); }

/* 等级信息弹窗升级为高级蓝金呼吸光。 */
.rank-modal {
    width:min(330px,calc(100vw - 28px));
    position:fixed;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    overflow:hidden;
    border:1px solid #64dfff;
    background:
        radial-gradient(circle at 22% 16%, rgba(86,200,255,.18), transparent 34%),
        radial-gradient(circle at 82% 82%, rgba(255,211,101,.10), transparent 28%),
        linear-gradient(180deg,#202862 0%, #1d2457 50%, #1a2049 100%);
    box-shadow:
        0 18px 42px rgba(5,12,39,.54),
        0 0 0 1px rgba(255,219,120,.18) inset,
        0 0 18px rgba(93,214,255,.28),
        0 0 34px rgba(255,205,96,.12);
    animation: rankModalGlowLuxury 3.2s ease-in-out infinite;
}
.rank-modal::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(120deg, transparent 16%, rgba(255,255,255,.10) 34%, rgba(138,231,255,.18) 48%, rgba(255,219,120,.11) 58%, transparent 74%);
    transform:translateX(-115%);
    animation: rankLightSweep 5.6s ease-in-out infinite;
}
.rank-modal::after {
    content:"";
    position:absolute;
    inset:10px;
    border-radius:20px;
    pointer-events:none;
    border:1px solid rgba(255,221,133,.18);
    box-shadow:inset 0 0 18px rgba(94,214,255,.06);
}
.rank-modal-head {
    position:relative;
    z-index:1;
    color:#ffffff;
    text-shadow:0 0 8px rgba(135,231,255,.20), 0 0 18px rgba(255,219,120,.10);
    background:linear-gradient(180deg, rgba(122,214,255,.12), rgba(255,213,111,.05));
    box-shadow: inset 0 -1px 0 rgba(135,231,255,.20);
}
.rank-modal-head button {
    box-shadow:
        0 0 10px rgba(109,220,255,.25),
        0 0 12px rgba(255,211,109,.10),
        inset 0 1px 0 rgba(255,255,255,.25);
}
.rank-modal-body {
    padding:22px 18px 24px;
    position:relative;
    z-index:1;
}
.rank-modal-body::before {
    content:"";
    position:absolute;
    inset:10px 12px 12px;
    border-radius:18px;
    pointer-events:none;
    box-shadow:inset 0 0 20px rgba(89,210,255,.08), inset 0 0 40px rgba(255,210,101,.04);
}
.rank-big-emblem {
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 30% 26%, rgba(122,229,255,.22), transparent 32%),
        linear-gradient(145deg,#0f1541 0%, #28357b 52%, #171d4e 100%);
    border-color:#f1cd65;
    box-shadow:
        0 0 0 1px rgba(255,232,160,.16) inset,
        0 0 14px rgba(255,208,87,.26),
        0 0 28px rgba(92,214,255,.22),
        inset 0 1px rgba(255,255,255,.18);
    animation: rankEmblemGlowLuxury 2.8s ease-in-out infinite;
}
.rank-big-emblem::after {
    content:"";
    position:absolute;
    inset:-20% auto -20% -35%;
    width:56%;
    transform:rotate(18deg);
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), rgba(255,227,157,.16), transparent);
    animation: rankEmblemSweep 4.8s ease-in-out infinite;
}
.rank-big-emblem span {
    color:#89edff;
    text-shadow:0 0 12px rgba(92,233,255,.95), 0 0 20px rgba(255,219,120,.18);
}
.rank-total-text {
    font-size:17px;
    margin:10px 0 8px;
    color:#ffffff;
    text-shadow:0 0 10px rgba(129,229,255,.10);
}
.rank-total-text b {
    color:#ffd768;
    text-shadow:0 0 8px rgba(255,217,104,.25);
}
.rank-rule-text,.rank-note,.rank-test-row { display:none !important; }
@keyframes rankModalGlowLuxury {
    0%,100% {
        box-shadow:
            0 18px 42px rgba(5,12,39,.54),
            0 0 0 1px rgba(255,219,120,.18) inset,
            0 0 16px rgba(93,214,255,.24),
            0 0 30px rgba(255,205,96,.10);
    }
    50% {
        box-shadow:
            0 20px 46px rgba(5,12,39,.56),
            0 0 0 1px rgba(255,222,132,.26) inset,
            0 0 24px rgba(93,214,255,.36),
            0 0 42px rgba(255,205,96,.18);
    }
}
@keyframes rankLightSweep {
    0%, 22% { transform:translateX(-115%); opacity:0; }
    30% { opacity:1; }
    52% { transform:translateX(125%); opacity:1; }
    60%,100% { transform:translateX(125%); opacity:0; }
}
@keyframes rankEmblemGlowLuxury {
    0%,100% {
        transform:translateY(0) scale(1);
        box-shadow:
            0 0 0 1px rgba(255,232,160,.16) inset,
            0 0 14px rgba(255,208,87,.26),
            0 0 28px rgba(92,214,255,.22),
            inset 0 1px rgba(255,255,255,.18);
    }
    50% {
        transform:translateY(-1px) scale(1.012);
        box-shadow:
            0 0 0 1px rgba(255,236,178,.24) inset,
            0 0 18px rgba(255,208,87,.34),
            0 0 34px rgba(92,214,255,.30),
            inset 0 1px rgba(255,255,255,.24);
    }
}
@keyframes rankEmblemSweep {
    0%,18% { transform:translateX(-120%) rotate(18deg); opacity:0; }
    25% { opacity:1; }
    45% { transform:translateX(220%) rotate(18deg); opacity:1; }
    55%,100% { transform:translateX(220%) rotate(18deg); opacity:0; }
}

/* ===== 2026-09-01 动感魔法 + VIP F 方案 + 光泽卡通头像优化 ===== */
.magic-modal {
    display:none;
    flex-direction:column;
    position:fixed;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    z-index:10030;
    width:min(390px, calc(100vw - 24px));
    max-height:min(84vh, 760px);
    overflow:hidden;
    border-radius:20px;
    background:#f8f6ef;
    box-shadow:0 18px 44px rgba(0,0,0,.26);
    border:1px solid #d9d0bf;
}
.magic-modal.active { display:flex; }
.magic-modal-head {
    flex:0 0 auto;
    padding:14px 18px 8px;
    text-align:center;
    border-bottom:1px solid rgba(95,118,163,.16);
}
.magic-modal-title {
    color:#1d6fa8;
    font-size:22px;
    font-weight:900;
    letter-spacing:1px;
}
.magic-modal-body {
    flex:1 1 auto;
    min-height:0;
    padding:12px 14px 14px;
    max-height:none;
    overflow:auto;
}
.magic-modal-body::-webkit-scrollbar { width:10px; }
.magic-modal-body::-webkit-scrollbar-thumb { background:#a9a29a; border-radius:8px; border:2px solid #f6f2e7; }
.magic-step-title {
    margin:6px 0 10px;
    text-align:center;
    color:#7a6a53;
    font-weight:800;
    font-size:14px;
}
.magic-target-box {
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d9d7cd;
    border-radius:10px;
    background:#fff;
    color:#242424;
    font-size:17px;
    font-weight:900;
    margin-bottom:8px;
}
.magic-target-list {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:center;
    padding:2px 0 12px;
    margin-bottom:8px;
    border-bottom:1px dashed #d6d2c7;
}
.magic-target-chip {
    min-width:74px;
    height:34px;
    padding:0 12px;
    border-radius:18px;
    border:1px solid #d6d0c4;
    background:#fff;
    color:#65533b;
    font-size:13px;
    font-weight:800;
    cursor:pointer;
}
.magic-target-chip.active {
    background:linear-gradient(180deg,#fff8dc,#f3e4b1);
    border-color:#d7a823;
    color:#6d4700;
    box-shadow:0 0 0 2px rgba(231,181,51,.12) inset;
}
.magic-spell-list {
    display:flex;
    flex-direction:column;
    gap:10px;
}
.magic-spell-item {
    border:1px solid #d6d4cb;
    border-radius:12px;
    background:#fff;
    padding:10px 10px 8px;
    text-align:center;
    cursor:pointer;
}
.magic-spell-item.active {
    background:linear-gradient(180deg,#fffdf4,#f7ebc6);
    border-color:#e0aa1e;
    box-shadow:0 0 0 2px rgba(225,170,30,.10) inset;
}
.magic-spell-name {
    font-size:15px;
    font-weight:900;
    line-height:1.2;
    margin-bottom:3px;
}
.magic-spell-name.blue { color:#045c8d; }
.magic-spell-name.orange { color:#c67a00; }
.magic-spell-name.red { color:#bf2b1f; }
.magic-spell-name.pink { color:#d94872; }
.magic-spell-cost {
    font-size:12px;
    color:#6d6d6d;
    font-weight:700;
}
.magic-action-row {
    position:relative;
    z-index:6;
    flex:0 0 auto;
    display:flex;
    gap:12px;
    justify-content:center;
    margin:0;
    padding:12px 14px 14px;
    background:linear-gradient(180deg,rgba(248,246,239,.92) 0%,#f8f6ef 42%,#f6f1e6 100%);
    border-top:1px solid rgba(196,184,154,.48);
    box-shadow:0 -7px 16px rgba(91,70,24,.07);
}
.magic-action-btn {
    min-width:110px;
    height:42px;
    border-radius:11px;
    border:1px solid #c4c0b7;
    background:#fff;
    color:#4f4f4f;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 2px 7px rgba(67,52,20,.08);
}
.magic-action-btn.primary {
    background:linear-gradient(180deg,#d6d6d6,#b7b7b7);
    color:#fff;
}
.magic-action-btn.primary.enabled {
    background:linear-gradient(180deg,#69b4f5 0%,#377edc 58%,#2766c7 100%);
    border-color:#2866be;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 9px rgba(37,101,193,.24);
}
.magic-cast-effect {
    position:absolute;
    left:50%;
    top:-28px;
    transform:translateX(-50%);
    min-width:74px;
    max-width:150px;
    padding:5px 10px;
    border-radius:14px;
    background:rgba(255,253,230,.96);
    border:1px solid #efc95c;
    color:#7b4500;
    font-size:12px;
    font-weight:900;
    text-align:center;
    box-shadow:0 4px 12px rgba(0,0,0,.18);
    z-index:9;
    animation:magicFloatOut 1.7s ease forwards;
}
@keyframes magicFloatOut {
    0% { opacity:0; transform:translate(-50%,6px) scale(.9); }
    16% { opacity:1; transform:translate(-50%,-2px) scale(1); }
    100% { opacity:0; transform:translate(-50%,-40px) scale(1.02); }
}

/* VIP 方案 F */
.vip-rank-badge,
.player-vip-mini,
.player-info-rank,
.rank-big-emblem {
    --vip-icon-url:url('/ui/vip-f-normal.png');
}
.vip-rank-badge.elite,
.player-vip-mini.elite,
.player-info-rank.elite,
.rank-big-emblem.elite {
    --vip-icon-url:url('/ui/vip-f-elite.png');
}
.vip-rank-badge {
    min-width:84px;
    height:38px;
    padding:0 14px 0 10px;
    border-radius:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    background:linear-gradient(160deg,#13192f 0%,#23376f 52%,#11162b 100%);
    border:1px solid #f0ca61;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.15), 0 5px 12px rgba(23,31,67,.35), 0 0 11px rgba(237,198,82,.20);
}
.vip-rank-badge.elite {
    background:linear-gradient(160deg,#4c1600 0%,#88260d 46%,#28130b 100%);
    border-color:#ffd674;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 5px 13px rgba(94,31,4,.34), 0 0 12px rgba(255,194,85,.26);
}
.vip-rank-badge.empty { opacity:.92; }
.vip-rank-gem,
.player-vip-mini i,
.player-info-rank i,
.rank-big-emblem span {
    background-image:var(--vip-icon-url);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    color:transparent !important;
    font-size:0 !important;
    text-shadow:none !important;
    overflow:hidden;
}
.vip-rank-gem { width:28px; height:24px; flex:0 0 28px; transform:none; }
.vip-rank-number {
    min-width:26px;
    height:22px;
    border-radius:11px;
    color:#593100;
    background:linear-gradient(180deg,#fff8db,#ffd25f 55%,#eca307 100%);
    border:1px solid #b56f00;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 2px 4px rgba(0,0,0,.30);
    font-weight:900;
    font-size:13px;
}
.rank-big-emblem {
    width:120px;
    height:96px;
    background:linear-gradient(145deg,#151427,#2d3669 56%,#151426);
    border:1px solid #efc95f;
    box-shadow:0 0 16px rgba(239,201,95,.34), inset 0 1px rgba(255,255,255,.13);
}
.rank-big-emblem.elite {
    background:linear-gradient(145deg,#311003,#7b2409 58%,#2d1209);
}
.rank-big-emblem span { width:86px; height:76px; display:block; }
.rank-big-emblem b { position:absolute; right:12px; bottom:14px; color:#ffe88d; font-size:18px; font-weight:900; text-shadow:0 1px 0 rgba(0,0,0,.35); }
.player-vip-mini {
    min-width:52px;
    height:24px;
    padding:0 8px 0 5px;
    gap:4px;
    border-radius:12px;
    background:linear-gradient(160deg,#13162c 0%,#22356d 50%,#101325 100%);
    border:1px solid #ecc861;
    box-shadow:inset 0 1px rgba(255,255,255,.14), 0 3px 8px rgba(33,38,76,.34), 0 0 8px rgba(233,198,94,.18);
}
.player-vip-mini.elite {
    background:linear-gradient(160deg,#461501 0%,#8a2a0f 48%,#2b1208 100%);
    border-color:#ffd878;
    box-shadow:inset 0 1px rgba(255,255,255,.16), 0 3px 8px rgba(92,31,3,.34), 0 0 8px rgba(255,194,87,.28);
}
.player-vip-mini::before { content:none !important; display:none !important; }
.player-vip-mini i { width:22px; height:18px; flex:0 0 22px; margin-right:0; }
.player-vip-mini b {
    margin-left:0;
    color:#ffe996;
    font-size:12px;
    font-weight:900;
    line-height:1;
}
.player-info-rank {
    min-width:54px;
    height:26px;
    padding:0 7px 0 5px;
    gap:4px;
    background:linear-gradient(160deg,#13162c 0%,#24356c 54%,#121426 100%);
    border:1px solid #e5c35b;
}
.player-info-rank.elite {
    background:linear-gradient(160deg,#491301 0%,#84260c 50%,#2a1209 100%);
}
.player-info-rank i { width:23px; height:19px; flex:0 0 23px; }
.player-info-rank b { color:#ffe78e; font-size:12px; font-weight:900; }
.player-name-row { gap:5px; }
.player-name-row .name-tag { font-weight:900; }

/* 光泽卡通头像显示优化 */
#profileModal .avatar-grid {
    grid-template-columns: repeat(7, 1fr);
    gap:10px;
}
#profileModal .avatar-item {
    width:100%;
    aspect-ratio:1 / 1;
    padding:0;
    overflow:hidden;
    border:2px solid #cbb8ef;
    border-radius:14px;
    background:linear-gradient(180deg,#fffefd,#fbf8ff);
}
#profileModal .avatar-item img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    image-rendering:-webkit-optimize-contrast;
    image-rendering:crisp-edges;
}
#profileModal .avatar-item.selected {
    border-color:#7e50dd;
    background:linear-gradient(180deg,#fffde2,#fff4c0);
}

/* ===== 2026-09-01 主页 / 玩家资料 / 钻石 / 换装增强 ===== */
.profile-info-hidden{ display:none !important; }

.player-sheet-modal{
    width:min(430px, calc(100vw - 26px));
    border:3px solid #e0ad1e;
    border-radius:24px;
    background:linear-gradient(180deg,#fffef9 0%, #fff7d9 100%);
    box-shadow:0 24px 48px rgba(79,46,0,.20);
}
.player-sheet-head{
    background:linear-gradient(180deg,#fffdf7,#f8f0d8);
    border-bottom:1px solid rgba(193,144,19,.25);
}
.player-sheet-body{
    padding:18px 18px 20px;
    max-height:min(76vh, 760px);
    overflow:auto;
}
.player-sheet-body::-webkit-scrollbar,
.home-page-body::-webkit-scrollbar,
.dress-body::-webkit-scrollbar{ width:10px; }
.player-sheet-body::-webkit-scrollbar-thumb,
.home-page-body::-webkit-scrollbar-thumb,
.dress-body::-webkit-scrollbar-thumb{ background:#b8ad8d; border-radius:8px; border:2px solid #f7f2e6; }
.player-sheet-top{ text-align:center; margin-bottom:14px; }
.player-sheet-avatar{
    width:88px; height:88px; margin:0 auto 10px; border-radius:50%; overflow:hidden;
    background:#fff; border:5px solid #f4d269; box-shadow:0 6px 18px rgba(102,78,18,.18);
}
.player-sheet-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.player-sheet-name-line{ display:flex; align-items:center; justify-content:center; gap:8px; font-size:20px; font-weight:900; color:#a56d00; margin-bottom:10px; }
.player-sheet-plan{
    min-width:170px; max-width:100%; padding:8px 18px; border-radius:999px; cursor:pointer;
    border:1px solid #d39400; color:#764600; font-size:14px; font-weight:900;
    background:linear-gradient(180deg,#ffe485,#f0bc22 62%,#dda001 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 4px 10px rgba(197,140,0,.18);
}
.player-sheet-panel{
    border:1px solid #e6c35b; border-radius:18px; background:linear-gradient(180deg,#fffaf0,#fff0bf);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 4px 12px rgba(187,142,33,.08);
    padding:16px 16px 14px; margin-bottom:14px;
}
.player-sheet-label{ font-size:15px; font-weight:900; color:#b37700; margin-bottom:8px; }
.player-sheet-value{ font-size:17px; font-weight:800; color:#4c3500; min-height:22px; }
.player-sheet-value.multiline{ white-space:pre-wrap; line-height:1.5; }
.player-sheet-panel.stats{ background:linear-gradient(180deg,#fffaf0,#ffeeb3); }
.player-sheet-stat{ font-size:16px; line-height:1.85; color:#5f4200; }
.player-sheet-stat b{ color:#a96d00; margin-right:4px; }
.player-sheet-action{
    width:100%; height:48px; border-radius:16px; margin-top:12px; border:none; cursor:pointer;
    font-size:16px; font-weight:900; box-shadow:0 4px 12px rgba(0,0,0,.10);
}
.player-sheet-action.soft{ background:linear-gradient(180deg,#f7f1ff,#e8ddff); color:#6a42b5; border:1px solid #c2a7f2; }
.player-sheet-action.gold{ background:linear-gradient(180deg,#ffe58a,#edbe27 65%,#daa103 100%); color:#744200; }
.player-sheet-action.purple{ background:linear-gradient(180deg,#9772e5,#6f49c6); color:#fff; }

.home-page-modal{
    width:min(760px, calc(100vw - 26px));
    border:3px solid #8d67dd;
    border-radius:24px;
    background:linear-gradient(180deg,#fdfcff 0%, #f4eeff 100%);
    box-shadow:0 24px 48px rgba(70,35,125,.22);
}
.home-page-head{ background:linear-gradient(180deg,#faf6ff,#efe6ff); }
.home-page-body{ padding:18px 20px 22px; max-height:min(80vh, 820px); overflow:auto; }
.home-page-hero{ text-align:center; margin-bottom:18px; }
.home-page-avatar{ width:88px; height:88px; margin:0 auto 10px; border-radius:50%; overflow:hidden; border:4px solid #f2d679; background:#fff; box-shadow:0 5px 14px rgba(86,60,135,.16); }
.home-page-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.home-page-name-line{ display:flex; justify-content:center; align-items:center; gap:8px; font-size:22px; font-weight:900; color:#6c46b5; margin-bottom:8px; }
.home-page-subline{ color:#7a5aab; font-size:14px; font-weight:700; }
.home-page-subline b{ color:#c07a00; }
.home-page-section-title{ font-size:16px; font-weight:900; color:#6d43b6; margin:16px 0 10px; }
.home-photo-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.home-photo-slot{
    aspect-ratio:1 / 1; border-radius:18px; overflow:hidden; position:relative; background:linear-gradient(180deg,#faf7ff,#ece4ff);
    border:1px solid #c8b6ef; box-shadow:0 4px 12px rgba(96,64,160,.10); display:flex; align-items:center; justify-content:center;
}
.home-photo-slot img{ width:100%; height:100%; object-fit:cover; display:none; }
.home-photo-slot.has-photo img{ display:block; }
.home-photo-slot span{ color:#907ab5; font-size:14px; font-weight:800; padding:0 10px; text-align:center; }
.home-photo-slot.has-photo span{ display:none; }
.home-outfit-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.home-outfit-card{
    border-radius:18px; padding:10px; background:linear-gradient(180deg,#fffdf7,#fff3c8);
    border:1px solid #e2bf63; box-shadow:0 4px 12px rgba(171,129,34,.10); text-align:center;
}
.home-outfit-thumb{
    height:132px; border-radius:14px; background:linear-gradient(180deg,#fffdf9,#f2eefc); border:1px solid #d7c8f2;
    display:flex; align-items:center; justify-content:center; overflow:hidden; margin-bottom:8px;
}
.home-outfit-img{ max-width:90%; max-height:92%; object-fit:contain; display:block; }
.home-outfit-name{ color:#7d5400; font-size:14px; font-weight:900; line-height:1.35; min-height:38px; display:flex; align-items:center; justify-content:center; }

.dress-modal{
    width:min(720px, calc(100vw - 26px));
    border:3px solid #6e8ff0; border-radius:24px;
    background:linear-gradient(180deg,#fcfeff 0%,#eef4ff 100%);
    box-shadow:0 24px 48px rgba(50,77,152,.20);
}
.dress-head{ background:linear-gradient(180deg,#f7fbff,#edf4ff); }
.dress-body{ padding:18px 18px 22px; max-height:min(80vh, 820px); overflow:auto; }
.dress-tip{ text-align:center; color:#5b6f98; font-size:13px; margin-bottom:14px; }
.dress-option-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.dress-option-card{
    border-radius:18px; padding:10px; cursor:pointer; background:linear-gradient(180deg,#ffffff,#f3f7ff);
    border:2px solid #c7d5fa; box-shadow:0 4px 12px rgba(89,121,205,.10); transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.dress-option-card:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgba(89,121,205,.16); }
.dress-option-card.active{ border-color:#5e88ef; box-shadow:0 0 0 3px rgba(94,136,239,.14), 0 6px 14px rgba(89,121,205,.16); }
.dress-option-thumb{
    height:148px; border-radius:14px; background:linear-gradient(180deg,#fffdf8,#f7f1ff); border:1px solid #d7cbf4;
    display:flex; align-items:center; justify-content:center; overflow:hidden; margin-bottom:8px;
}
.dress-option-thumb img{ max-width:90%; max-height:94%; object-fit:contain; display:block; }
.dress-option-name{ color:#365183; font-size:15px; font-weight:900; text-align:center; margin-bottom:4px; }
.dress-option-desc{ color:#6a7ea6; font-size:12px; font-weight:700; text-align:center; line-height:1.4; min-height:32px; }

@media (max-width:760px){
    .dress-option-grid, .home-outfit-grid, .home-photo-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
    .dress-option-grid, .home-outfit-grid, .home-photo-grid{ grid-template-columns:1fr; }
    .player-sheet-modal, .home-page-modal, .dress-modal{ width:min(96vw, 96vw); }
}

/* ===== 房间聊天字体：加粗加黑 ===== */
.chat-box {
    color: #000;
    font-weight: 800;
}
.chat-line {
    color: #000;
    font-weight: 800;
}
.chat-sender-tag {
    color: #000;
    font-weight: 900;
}
.chat-sender-colon {
    color: #000;
    font-weight: 900;
}
.chat-message-text {
    color: #000;
    font-weight: 800;
}
.chat-system-line {
    color: #000;
    font-weight: 800;
}

/* ===== 房间聊天字体：轻微增加字距和行距 ===== */
.chat-line {
    margin: 5px 0;
    gap: 9px;
    line-height: 1.6;
}
.chat-sender-tag,
.chat-sender-colon,
.chat-message-text,
.chat-system-line {
    letter-spacing: 0.4px;
}
.chat-system-line {
    margin: 5px 0;
    line-height: 1.6;
}

/* ===== 用户指定 VIP 图标：星形钻石 V 标识 ===== */
.vip-rank-badge,
.player-vip-mini,
.player-info-rank,
.rank-big-emblem {
    --vip-icon-url: url('/ui/vip-star-v.png') !important;
}
.vip-rank-badge.elite,
.player-vip-mini.elite,
.player-info-rank.elite,
.rank-big-emblem.elite {
    --vip-icon-url: url('/ui/vip-star-v.png') !important;
}

/* 顶部 VIP：缩小一点，并增加尊贵发光效果 */
.vip-rank-badge {
    position: relative !important;
    width: 52px !important;
    min-width: 52px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    isolation: isolate;
}
.vip-rank-badge::before,
.vip-rank-badge::after {
    content: none !important;
    display: none !important;
}
.vip-rank-gem {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 48px !important;
    height: 40px !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
    background-image: var(--vip-icon-url) !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    color: transparent !important;
    font-size: 0 !important;
    filter:
        drop-shadow(0 1px 2px rgba(255,255,255,.72))
        drop-shadow(0 0 5px rgba(255,224,138,.88))
        drop-shadow(0 0 10px rgba(255,187,92,.60))
        drop-shadow(0 2px 6px rgba(86,45,0,.28));
    animation: vipLuxGlow 2.2s ease-in-out infinite;
}
.vip-rank-number {
    right: -3px !important;
    bottom: -3px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 4px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.85),
        0 0 5px rgba(255,217,117,.66),
        0 2px 4px rgba(0,0,0,.26) !important;
}
@keyframes vipLuxGlow {
    0%, 100% {
        filter:
            drop-shadow(0 1px 2px rgba(255,255,255,.68))
            drop-shadow(0 0 4px rgba(255,224,138,.82))
            drop-shadow(0 0 8px rgba(255,187,92,.46))
            drop-shadow(0 2px 6px rgba(86,45,0,.26));
        transform: translate(-50%, -50%) scale(1) !important;
    }
    50% {
        filter:
            drop-shadow(0 1px 3px rgba(255,255,255,.88))
            drop-shadow(0 0 7px rgba(255,239,178,.96))
            drop-shadow(0 0 13px rgba(255,194,103,.76))
            drop-shadow(0 2px 7px rgba(86,45,0,.32));
        transform: translate(-50%, -50%) scale(1.03) !important;
    }
}

/* 人物昵称左侧的小 VIP 标识 */
.player-vip-mini {
    min-width: 42px !important;
    height: 24px !important;
    padding: 0 5px 0 3px !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.90) !important;
    border: 1px solid #e9c866 !important;
    box-shadow: 0 2px 5px rgba(83,56,0,.18) !important;
    gap: 2px !important;
}
.player-vip-mini i {
    width: 23px !important;
    height: 20px !important;
    flex: 0 0 23px !important;
    background-image: var(--vip-icon-url) !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    filter: drop-shadow(0 0 3px rgba(255,227,143,.72)) drop-shadow(0 1px 2px rgba(88,53,0,.18));
}
.player-vip-mini b {
    margin-left: 0 !important;
    color: #5b3b00 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
.player-vip-mini.elite {
    background: linear-gradient(180deg, rgba(255,248,220,.97), rgba(255,224,136,.94)) !important;
    border-color: #dfaa27 !important;
}

/* 玩家资料与等级弹窗里的 VIP 标识也统一使用同一个图 */
.player-info-rank i {
    width: 26px !important;
    height: 23px !important;
    flex: 0 0 26px !important;
    background-image: var(--vip-icon-url) !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}
.rank-big-emblem span {
    width: 86px !important;
    height: 76px !important;
    display: block !important;
    background-image: var(--vip-icon-url) !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* ===== 铃铛：全服喇叭持续模式 ===== */
#btnBell {
    position: relative;
    transition: transform .16s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease, filter .18s ease;
}
#btnBell.horn-mode-active {
    background: linear-gradient(180deg,#fffbe6 0%,#ffe998 52%,#ffc93f 100%);
    border-color:#d79a12;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92),
        0 0 0 2px rgba(255,211,88,.17),
        0 0 10px rgba(255,193,45,.58),
        0 0 18px rgba(255,222,119,.26);
    filter:saturate(1.08);
    animation: bellHornPulse 2s ease-in-out infinite;
}
#btnBell.horn-mode-active::after {
    content:"";
    position:absolute;
    inset:-4px;
    border-radius:50%;
    border:1px solid rgba(255,210,82,.52);
    pointer-events:none;
    animation: bellHornRing 2s ease-out infinite;
}
.chat-input.horn-mode-input {
    border-color:#e1a51b;
    background:linear-gradient(180deg,#fffef8,#fff8dc);
    box-shadow:inset 0 0 0 1px rgba(255,213,93,.12), 0 0 7px rgba(245,180,37,.16);
}
.send-button.horn-mode-send {
    min-width:76px;
    background:linear-gradient(180deg,#ffc65a 0%,#ff9f17 58%,#ec7900 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 0 8px rgba(255,160,23,.30);
    font-weight:800;
}
@keyframes bellHornPulse {
    0%,100% { transform:translateY(0); box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 0 0 2px rgba(255,211,88,.14),0 0 8px rgba(255,193,45,.44),0 0 15px rgba(255,222,119,.20); }
    50% { transform:translateY(-1px); box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 0 0 2px rgba(255,211,88,.22),0 0 13px rgba(255,193,45,.68),0 0 22px rgba(255,222,119,.34); }
}
@keyframes bellHornRing {
    0% { transform:scale(.92); opacity:.55; }
    70% { transform:scale(1.16); opacity:0; }
    100% { transform:scale(1.16); opacity:0; }
}

/* ===== 个人资料：窄版精致微调（仅 #profileModal） ===== */
#profileModal {
    width: min(470px, calc(100vw - 28px));
    height: min(690px, calc(100vh - 24px));
    max-height: calc(100vh - 24px);
    border-width: 2px;
    border-radius: 16px;
    box-shadow: 0 14px 32px rgba(71,42,118,.24), 0 0 0 1px rgba(255,255,255,.55) inset;
}
#profileModal .profile-custom-head {
    padding: 16px 18px 9px;
}
#profileModal .profile-custom-title {
    font-size: 23px;
    padding-bottom: 9px;
    letter-spacing: .2px;
}
#profileModal .profile-custom-title::after {
    width: 36px;
    height: 3px;
}
#profileModal .profile-close-btn {
    font-size: 17px;
    padding: 6px 8px;
    border-radius: 7px;
}
#profileModal .profile-custom-body {
    padding: 6px 16px 18px;
}
#profileModal .profile-custom-body::-webkit-scrollbar { width: 8px; }
#profileModal .profile-hero {
    padding: 2px 0 9px;
}
#profileModal .profile-avatar-circle {
    width: 86px;
    height: 86px;
    border-width: 4px;
    margin-bottom: 6px;
    box-shadow: 0 4px 12px rgba(91,65,132,.15);
}
#profileModal .profile-hero-name {
    font-size: 21px;
    margin: 1px 0 8px;
}
#profileModal .profile-plan-pill {
    min-height: 32px;
    padding: 0 14px;
    border-radius: 14px;
    font-size: 13px;
    box-shadow: 0 2px 7px rgba(0,0,0,.10);
}
#profileModal .profile-menu-card {
    min-height: 46px;
    border-radius: 12px;
    font-size: 15px;
    margin-top: 7px;
    box-shadow: inset 0 1px rgba(255,255,255,.62), 0 2px 6px rgba(91,64,142,.05);
}
#profileModal .profile-menu-card.purple { border-width: 1.4px; }
#profileModal .profile-menu-card.gold { border-width: 1.4px; }
#profileModal .profile-stats-card {
    margin: 11px 0 9px;
    padding: 12px 13px 10px;
    border-radius: 12px;
    border-width: 1.3px;
    box-shadow: 0 4px 11px rgba(97,66,143,.08);
}
#profileModal .profile-stats-card div {
    line-height: 1.62;
    font-size: 14px;
}
#profileModal .profile-stats-card b { margin-right: 4px; }
#profileModal .profile-section-title {
    font-size: 16px;
    margin: 13px 0 8px;
    padding-bottom: 7px;
}
#profileModal .profile-section-title::after {
    width: 40px;
    height: 3px;
}
#profileModal .avatar-scroll-shell {
    max-height: 180px;
    padding: 8px;
    border-radius: 11px;
    border-width: 1px;
}
#profileModal .avatar-grid {
    grid-template-columns: repeat(7, minmax(0,1fr));
    gap: 7px;
}
#profileModal .avatar-item {
    min-height: 42px;
    border-width: 1.4px;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(93,59,146,.06);
}
#profileModal .avatar-item.selected {
    box-shadow: 0 0 0 2px rgba(126,80,221,.14), 0 2px 6px rgba(93,59,146,.08);
}
#profileModal .profile-input,
#profileModal .profile-select {
    border-radius: 11px;
    border-width: 1.4px;
    padding: 10px 12px;
    font-size: 15px;
    margin-bottom: 5px;
    box-shadow: 0 2px 6px rgba(93,59,146,.06);
}
#profileModal .profile-sign-input {
    min-height: 66px;
}
#profileModal .profile-tip {
    font-size: 11px;
    margin-bottom: 9px;
}
#profileModal .profile-sign-count {
    font-size: 12px;
}
#profileModal .save-profile-btn {
    min-height: 48px;
    border-radius: 11px;
    font-size: 17px;
    margin-top: 11px;
    box-shadow: 0 3px 8px rgba(219,139,0,.22);
}
@media (max-width: 520px) {
    #profileModal {
        width: min(94vw, 470px);
    }
    #profileModal .avatar-grid { grid-template-columns: repeat(6, minmax(0,1fr)); }
}


/* ===== 本次覆盖：VIP资料/魔法动态/VIP详细介绍 ===== */
.vip-status-pill{
    letter-spacing:.4px;
}
#profileModal .profile-stats-card,
.player-sheet-panel.stats{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px 18px;
}
#profileModal .profile-stats-card > div,
.player-sheet-panel.stats .player-sheet-stat{
    margin:0;
}
#profileModal .profile-stats-card > div b,
.player-sheet-panel.stats .player-sheet-stat b{
    display:inline-block;
    min-width:82px;
}
.player-sheet-plan.vip-status-pill,
#profileModal .profile-plan-pill.vip-status-pill{
    background:linear-gradient(180deg,#fff4c4,#f1c74f 65%,#e4b11d 100%);
    color:#734400;
    border:1px solid #e0b43b;
    box-shadow:0 8px 18px rgba(224,180,59,.18);
}
.dress-section-title{
    margin:14px 0 10px;
    font-size:16px;
    font-weight:900;
    color:#5a3ca8;
}
.dress-section-title.vip{
    color:#9a6200;
}
.dress-vip-tip{
    margin:-2px 0 12px;
    padding:10px 12px;
    border-radius:12px;
    background:linear-gradient(180deg,#fff8e8,#fff0bb);
    color:#8a5a00;
    border:1px solid #efcf72;
    font-size:13px;
    line-height:1.5;
}
.vip-dress-grid .dress-option-card.locked{
    position:relative;
    border-color:#e1c77b;
    background:linear-gradient(180deg,#fffdf8,#fff5dc);
}
.vip-dress-grid .dress-option-card.locked::after{
    content:'未开通';
    position:absolute;
    top:10px; right:10px;
    padding:2px 8px;
    border-radius:999px;
    background:rgba(117,74,0,.88);
    color:#fff8d8;
    font-size:12px;
    font-weight:900;
}
.dress-option-card .dress-option-need{
    margin-top:6px;
    font-size:12px;
    color:#9f6a00;
    font-weight:700;
}
.magic-cast-effect{
    min-width:128px;
    max-width:192px;
    padding:10px 12px 12px;
    border-radius:18px;
    overflow:visible;
}
.magic-cast-effect .magic-effect-icon{
    display:block;
    font-size:24px;
    line-height:1;
    margin-bottom:4px;
}
.magic-cast-effect .magic-effect-title{
    font-size:14px;
    font-weight:900;
    margin-bottom:4px;
}
.magic-cast-effect .magic-effect-line{
    font-size:12px;
    line-height:1.35;
    font-weight:700;
}
.magic-cast-effect .magic-effect-spark{
    position:absolute;
    width:10px; height:10px;
    border-radius:50%;
    opacity:.9;
    animation:magicSpark 1.7s ease-out forwards;
}
.magic-cast-effect.theme-ocean{ background:linear-gradient(180deg,#effcff,#c9f0ff); border-color:#7fcbea; color:#0e5f86; }
.magic-cast-effect.theme-orange{ background:linear-gradient(180deg,#fff5e6,#ffd9a3); border-color:#f1aa47; color:#8c5100; }
.magic-cast-effect.theme-red{ background:linear-gradient(180deg,#fff0f0,#ffc7c7); border-color:#ef8a8a; color:#922e2e; }
.magic-cast-effect.theme-pink{ background:linear-gradient(180deg,#fff2fb,#ffd4ea); border-color:#eb94bf; color:#a03c70; }
.magic-cast-effect.theme-gold{ background:linear-gradient(180deg,#fff9ec,#ffe6ad); border-color:#e6bf5b; color:#855700; }
@keyframes magicSpark{
    0%{ opacity:0; transform:translate(0,0) scale(.4);}
    18%{ opacity:1; }
    100%{ opacity:0; transform:translate(var(--tx), var(--ty)) scale(1.4);}
}
.vip-guide-modal{
    display:none; position:fixed; z-index:10030; left:50%; top:50%; transform:translate(-50%,-50%);
    width:min(820px, calc(100vw - 28px)); max-height:calc(100vh - 20px); overflow:hidden;
    border-radius:20px; border:2px solid #c8bdf1; background:linear-gradient(180deg,#fbf8ff,#f2ecff);
    box-shadow:0 18px 46px rgba(69,42,123,.26);
}
.vip-guide-modal.active{ display:block; }
.vip-guide-head{ display:flex; align-items:center; justify-content:space-between; padding:14px 18px; background:linear-gradient(180deg,#f7f0ff,#ebe0ff); color:#5b37a7; font-size:17px; font-weight:900; }
.vip-guide-head button{ padding:8px 16px; border-radius:14px; border:1px solid #9b77e0; background:#fff; color:#6c40c0; font-weight:900; cursor:pointer; }
.vip-guide-body{ padding:18px 18px 20px; overflow:auto; max-height:calc(100vh - 90px); }
.vip-guide-main-title{ font-size:24px; font-weight:900; color:#5b37a7; margin-bottom:4px; }
.vip-guide-subtitle{ font-size:14px; color:#7b6f9d; margin-bottom:16px; }
.vip-plan-grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; }
.vip-plan-card{ border-radius:22px; padding:20px; border:2px solid #c9b7f6; background:linear-gradient(180deg,#faf7ff,#f1e9ff); box-shadow:0 12px 24px rgba(108,76,180,.08); }
.vip-plan-card.prime{ border-color:#e1b13b; background:linear-gradient(180deg,#fff8e9,#fff0c6); }
.vip-plan-name{ font-size:26px; font-weight:900; color:#6239b7; margin-bottom:8px; }
.vip-plan-card.prime .vip-plan-name{ color:#9a6200; }
.vip-plan-price{ font-size:20px; font-weight:900; color:#714ad5; margin-bottom:14px; }
.vip-plan-card.prime .vip-plan-price{ color:#c08000; }
.vip-plan-badge{ display:inline-flex; align-items:center; min-height:34px; padding:6px 12px; border-radius:999px; background:#fff7da; border:1px solid #ecc96d; color:#a36a00; font-size:13px; font-weight:800; margin-bottom:14px; }
.vip-plan-card ul{ list-style:none; padding:0; margin:0; }
.vip-plan-card li{ position:relative; padding-left:20px; margin:9px 0; color:#55487b; font-size:15px; font-weight:700; line-height:1.45; }
.vip-plan-card.prime li{ color:#654600; }
.vip-plan-card li::before{ content:'◆'; position:absolute; left:0; top:0; color:#855ce0; }
.vip-plan-card.prime li::before{ color:#c58b00; }
.vip-plan-open-btn{ margin-top:14px; width:100%; height:48px; border:none; border-radius:16px; background:linear-gradient(90deg,#9b66ff,#7b52db); color:#fff; font-size:20px; font-weight:900; cursor:pointer; }
.vip-plan-open-btn.prime{ background:linear-gradient(90deg,#f7c431,#cf8d00); }
.vip-guide-section{ margin-top:20px; }
.vip-guide-section-title{ font-size:16px; font-weight:900; color:#6740be; margin-bottom:12px; }
.vip-growth-grid, .vip-level-grid, .vip-showcase-grid{ display:grid; gap:12px; }
.vip-growth-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.vip-level-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.vip-showcase-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.vip-growth-item, .vip-level-card, .vip-showcase-card{ border-radius:16px; border:1px solid #d8caef; background:#fff; padding:14px; box-shadow:0 6px 16px rgba(85,55,135,.06); }
.vip-growth-item{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.vip-growth-item span{ color:#5d5078; font-size:15px; font-weight:800; }
.vip-growth-item b{ color:#7d53dd; font-size:26px; }
.vip-level-card{ text-align:center; background:linear-gradient(180deg,#faf7ff,#f4efff); }
.vip-level-card b{ display:block; font-size:32px; color:#6e44cb; margin-bottom:6px; }
.vip-level-card span{ color:#6d6490; font-size:15px; font-weight:700; }
.vip-note-panel{ margin-bottom:10px; padding:12px 14px; border-radius:16px; font-size:15px; font-weight:900; line-height:1.6; }
.vip-note-panel span{ font-size:14px; font-weight:700; color:#635a77; }
.vip-note-panel.light{ background:linear-gradient(180deg,#fffdf8,#f8f2df); border:1px solid #e4d5a9; color:#765300; }
.vip-note-panel.plus{ background:linear-gradient(180deg,#f7f3ff,#efe7ff); border:1px solid #cebaf5; color:#6640b4; }
.vip-note-panel.prime{ background:linear-gradient(180deg,#fff8ea,#ffefc3); border:1px solid #ecc866; color:#955f00; }
.vip-unlock-list{ padding:2px 2px 0; }
.vip-unlock-list > div{ margin:8px 0; font-size:15px; color:#5a5276; font-weight:700; }
.vip-unlock-list b{ color:#5d35b4; }
.vip-showcase-card{ position:relative; padding-top:18px; }
.vip-showcase-thumb{ height:128px; border-radius:14px; background:linear-gradient(180deg,#fff,#f7f2ff); display:flex; align-items:center; justify-content:center; overflow:hidden; border:1px solid #ebe1ff; }
.vip-showcase-thumb img{ width:100px; height:118px; object-fit:contain; }
.vip-showcase-name{ margin-top:10px; font-size:15px; font-weight:900; color:#52399a; }
.vip-showcase-desc{ margin-top:5px; font-size:12px; line-height:1.45; color:#786b9b; }
.vip-showcase-lock{ margin-top:8px; display:inline-flex; align-items:center; padding:4px 10px; border-radius:999px; background:#fff4d0; color:#8b5f00; border:1px solid #e3c067; font-size:12px; font-weight:900; }
.vip-guide-footnote{ margin-top:18px; padding:14px; border:1px dashed #d0c0ed; border-radius:16px; color:#6a5f87; background:rgba(255,255,255,.72); line-height:1.7; font-size:14px; }
.vip-guide-contact{ margin-top:18px; border-radius:16px; padding:16px; text-align:center; background:#fff; border:1px solid #ddd4ef; color:#675987; font-size:16px; font-weight:900; }
.vip-guide-contact b{ display:block; margin-top:6px; font-size:28px; color:#5a36ae; letter-spacing:1px; }
@media (max-width: 760px){
    .vip-plan-grid, .vip-growth-grid, .vip-level-grid, .vip-showcase-grid{ grid-template-columns:1fr; }
    #profileModal .profile-stats-card, .player-sheet-panel.stats{ grid-template-columns:1fr; }
}

/* ===== 2026-09-01：VIP每日钻石领取 / 精致动感魔法 / VIP换装栏优化 ===== */
.rank-modal {
    width:min(420px, calc(100vw - 28px)) !important;
    max-height:calc(100vh - 28px) !important;
}
.rank-modal-body {
    max-height:calc(100vh - 86px) !important;
    overflow-y:auto !important;
    scrollbar-width:thin;
    scrollbar-color:rgba(111,220,255,.65) rgba(18,27,72,.35);
}
.rank-modal-body::-webkit-scrollbar{ width:7px; }
.rank-modal-body::-webkit-scrollbar-thumb{ background:linear-gradient(#70dbff,#e8c55f); border-radius:8px; }
.vip-daily-card{
    position:relative;
    margin-top:15px;
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(255,215,105,.55);
    background:
        radial-gradient(circle at 12% 5%,rgba(84,215,255,.16),transparent 34%),
        radial-gradient(circle at 90% 92%,rgba(255,208,85,.13),transparent 31%),
        linear-gradient(145deg,rgba(17,28,81,.96),rgba(32,38,102,.95));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 16px rgba(76,207,255,.14),0 0 20px rgba(255,205,82,.08);
    overflow:hidden;
}
.vip-daily-card::after{
    content:"";
    position:absolute;
    left:-45%; top:-120%; width:42%; height:320%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),rgba(255,222,126,.12),transparent);
    transform:rotate(18deg);
    animation:vipDailySweep 6s ease-in-out infinite;
    pointer-events:none;
}
.vip-daily-title-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; position:relative; z-index:1; }
.vip-daily-title{ font-size:16px; font-weight:900; color:#fff7da; letter-spacing:.5px; text-align:left; text-shadow:0 0 10px rgba(255,216,105,.18); }
.vip-daily-sub{ margin-top:3px; font-size:11px; color:#a8cce4; text-align:left; }
.vip-daily-level{
    min-width:58px; height:34px; padding:0 11px; border-radius:11px; display:flex; align-items:center; justify-content:center;
    color:#ffe38d; font-weight:900; font-size:13px; background:linear-gradient(180deg,rgba(255,220,111,.18),rgba(47,77,151,.14));
    border:1px solid rgba(255,218,109,.46); box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 10px rgba(255,212,94,.12);
}
.vip-daily-level b{ font-size:17px; margin-left:2px; }
.vip-reward-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:12px; position:relative; z-index:1; }
.vip-reward-slot{
    min-width:0; padding:10px 7px 8px; border-radius:12px; border:1px solid rgba(109,205,255,.26);
    background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
.vip-reward-time{ display:block; font-size:11px; color:#b9d7ed; margin-bottom:5px; }
.vip-reward-amount{ display:block; color:#ffe28b; font-size:16px; font-weight:900; text-shadow:0 0 8px rgba(255,214,100,.22); white-space:nowrap; }
.vip-reward-btn{
    width:100%; height:29px; margin-top:7px; border-radius:9px; border:1px solid rgba(147,177,220,.33);
    background:rgba(125,145,184,.20); color:#aebbd0; font-size:11px; font-weight:900; cursor:default;
}
.vip-reward-btn.ready{
    cursor:pointer; color:#553400; border-color:#e4b62f;
    background:linear-gradient(180deg,#fff2a8,#ffc63c 57%,#e99d06);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 0 10px rgba(255,199,52,.30);
    animation:vipRewardReady 1.8s ease-in-out infinite;
}
.vip-reward-btn.claimed{ color:#84d9bc; border-color:rgba(94,215,172,.35); background:rgba(67,161,130,.14); }
.vip-countdown-panel{ margin-top:11px; display:grid; grid-template-columns:1fr 1fr; gap:8px; position:relative; z-index:1; }
.vip-countdown-row{
    min-width:0; padding:8px 9px; border-radius:11px; background:rgba(7,13,48,.45); border:1px solid rgba(101,205,255,.20);
}
.vip-countdown-row>span{ display:block; font-size:10px; color:#9cbfd7; margin-bottom:5px; }
.vip-digital-time{
    display:inline-block; min-width:88px; padding:5px 7px; border-radius:8px;
    font-family:"Consolas","Arial Narrow",monospace; font-size:15px; font-weight:900; letter-spacing:1px;
    color:#bff3ff; background:linear-gradient(180deg,rgba(73,193,255,.18),rgba(27,58,118,.16));
    border:1px solid rgba(94,220,255,.34); box-shadow:inset 0 0 8px rgba(91,220,255,.10),0 0 8px rgba(67,201,255,.10);
    text-shadow:0 0 8px rgba(93,224,255,.42);
}
.vip-digital-time.gold{ color:#ffe49a; border-color:rgba(255,213,92,.34); background:linear-gradient(180deg,rgba(255,208,79,.16),rgba(95,65,15,.12)); text-shadow:0 0 8px rgba(255,213,94,.34); }
.vip-daily-tip{ position:relative; z-index:1; margin-top:9px; color:#b9c8dc; font-size:11px; line-height:1.45; }
@keyframes vipDailySweep{ 0%,25%{ transform:translateX(0) rotate(18deg); opacity:0; } 32%{opacity:1;} 52%{ transform:translateX(370%) rotate(18deg); opacity:.9;} 60%,100%{transform:translateX(370%) rotate(18deg); opacity:0;} }
@keyframes vipRewardReady{ 0%,100%{filter:brightness(1); transform:translateY(0);} 50%{filter:brightness(1.08); transform:translateY(-1px);} }

/* 魔法效果：不仅显示文字，目标人物本身会跟着互动 */
.magic-cast-effect{
    top:-42px !important;
    min-width:110px !important;
    max-width:185px !important;
    padding:7px 10px !important;
    border-radius:12px !important;
    backdrop-filter:blur(3px);
    box-shadow:0 6px 18px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.72) !important;
    animation:magicInfoFloat 2.35s ease forwards !important;
    pointer-events:none;
}
.magic-effect-icon{ display:block; font-size:20px; filter:drop-shadow(0 2px 3px rgba(0,0,0,.12)); }
.magic-effect-title{ font-size:13px; font-weight:900; margin:1px 0 2px; }
.magic-effect-line{ font-size:10px; line-height:1.35; font-weight:700; opacity:.82; }
@keyframes magicInfoFloat{
    0%{opacity:0; transform:translate(-50%,8px) scale(.88)}
    14%{opacity:1; transform:translate(-50%,0) scale(1)}
    76%{opacity:1; transform:translate(-50%,-8px) scale(1)}
    100%{opacity:0; transform:translate(-50%,-22px) scale(.96)}
}
.magic-player-aura{
    position:absolute; left:50%; top:43%; width:126px; height:174px; transform:translate(-50%,-50%);
    pointer-events:none; z-index:8; overflow:visible;
}
.magic-aura-glow{
    position:absolute; inset:18% 18%; border-radius:50%; opacity:.7; filter:blur(12px);
    background:radial-gradient(circle,rgba(255,225,119,.24),rgba(91,214,255,.10) 50%,transparent 72%);
    animation:magicGlowPulse .72s ease-in-out infinite alternate;
}
.magic-aura-ring{
    position:absolute; left:9%; right:9%; bottom:9%; height:34%; border-radius:50%; border:2px solid rgba(255,220,111,.60);
    box-shadow:0 0 8px rgba(255,211,80,.30),inset 0 0 8px rgba(94,214,255,.18);
    animation:magicRingSpin 1.2s ease-in-out infinite;
}
.magic-aura-particle{
    position:absolute; left:50%; top:50%; font-size:18px; opacity:0; z-index:3;
    filter:drop-shadow(0 2px 3px rgba(0,0,0,.14));
    animation:magicParticleBurst 1.55s var(--delay,0s) ease-out infinite;
}
.magic-aura-particle:nth-child(1){--px:-58px;--py:-67px}.magic-aura-particle:nth-child(2){--px:48px;--py:-58px}
.magic-aura-particle:nth-child(3){--px:-64px;--py:-5px}.magic-aura-particle:nth-child(4){--px:57px;--py:5px}
.magic-aura-particle:nth-child(5){--px:-45px;--py:55px}.magic-aura-particle:nth-child(6){--px:42px;--py:62px}
.magic-aura-particle:nth-child(7){--px:-8px;--py:-82px}.magic-aura-particle:nth-child(8){--px:8px;--py:79px}
@keyframes magicParticleBurst{
    0%{opacity:0; transform:translate(-50%,-50%) scale(.35) rotate(-10deg)}
    18%{opacity:1}
    68%{opacity:1; transform:translate(calc(-50% + var(--px)),calc(-50% + var(--py))) scale(1.08) rotate(10deg)}
    100%{opacity:0; transform:translate(calc(-50% + var(--px)),calc(-50% + var(--py) - 14px)) scale(.78) rotate(18deg)}
}
@keyframes magicGlowPulse{ from{transform:scale(.88);opacity:.35} to{transform:scale(1.12);opacity:.82} }
@keyframes magicRingSpin{ 0%{transform:rotateX(66deg) rotateZ(0deg) scale(.82);opacity:.28} 50%{opacity:.9} 100%{transform:rotateX(66deg) rotateZ(360deg) scale(1.05);opacity:.22} }

.magic-reacting .player-img{ transform-origin:50% 88%; }
.magic-react-bigfish .player-img{ animation:magicReactFloat .55s ease-in-out 4; }
.magic-react-calf .player-img{ animation:magicReactShake .25s ease-in-out 8; }
.magic-react-cage .player-img{ animation:magicReactSqueeze .48s ease-in-out 4; }
.magic-react-peek .player-img{ animation:magicReactPeek .55s ease-in-out 4; }
.magic-react-hit .player-img{ animation:magicReactPop .42s ease-in-out 5; }
.magic-react-kiss .player-img{ animation:magicReactKiss .52s ease-in-out 4; }
.magic-react-catch .player-img{ animation:magicReactCatch .48s ease-in-out 4; }
.magic-react-crack .player-img{ animation:magicReactBloom .50s ease-in-out 4; }
.magic-react-spit .player-img{ animation:magicReactWiggle .27s ease-in-out 8; }
@keyframes magicReactFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(2deg)}}
@keyframes magicReactShake{0%,100%{transform:translateX(0) rotate(0)}25%{transform:translateX(-6px) rotate(-4deg)}75%{transform:translateX(6px) rotate(4deg)}}
@keyframes magicReactSqueeze{0%,100%{transform:scale(1)}50%{transform:scale(.94,1.05)}}
@keyframes magicReactPeek{0%,100%{transform:rotate(0)}35%{transform:rotate(-5deg)}70%{transform:rotate(4deg)}}
@keyframes magicReactPop{0%,100%{transform:scale(1)}50%{transform:scale(1.08) translateY(-4px)}}
@keyframes magicReactKiss{0%,100%{transform:rotate(0) translateY(0)}50%{transform:rotate(-3deg) translateY(-5px)}}
@keyframes magicReactCatch{0%,100%{transform:scale(1)}50%{transform:scale(.97) translateY(3px)}}
@keyframes magicReactBloom{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-7px) scale(1.04)}}
@keyframes magicReactWiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}

.magic-player-aura.aura-bigfish .magic-aura-ring{border-color:rgba(96,223,255,.78);box-shadow:0 0 12px rgba(72,207,255,.42)}
.magic-player-aura.aura-calf .magic-aura-ring,.magic-player-aura.aura-peek .magic-aura-ring,.magic-player-aura.aura-catch .magic-aura-ring,.magic-player-aura.aura-spit .magic-aura-ring{border-color:rgba(255,202,76,.78)}
.magic-player-aura.aura-cage .magic-aura-ring{border-color:rgba(255,112,151,.78);box-shadow:0 0 13px rgba(255,98,140,.38)}
.magic-player-aura.aura-hit .magic-aura-ring,.magic-player-aura.aura-kiss .magic-aura-ring,.magic-player-aura.aura-crack .magic-aura-ring{border-color:rgba(255,121,189,.80);box-shadow:0 0 13px rgba(255,108,185,.40)}

/* VIP专享换装栏：更像独立的尊享区域 */
.dress-section-title.vip{
    margin-top:18px !important; padding:10px 13px !important; border-radius:11px !important;
    color:#6a4600 !important; border:1px solid #e0b43d !important;
    background:linear-gradient(90deg,#fff7d7,#ffe9a1,#fff8dc) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 9px rgba(175,126,22,.10) !important;
}
.dress-section-title.vip::before{ content:"✦ "; color:#cf9300; text-shadow:0 0 6px rgba(255,191,36,.28); }
.dress-vip-tip{ color:#8a6b2c !important; font-size:12px !important; margin:7px 2px 10px !important; }
.vip-dress-grid{
    padding:10px; border-radius:14px; border:1px solid #ead08a;
    background:linear-gradient(145deg,rgba(255,251,232,.96),rgba(250,240,255,.92));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 4px 12px rgba(114,76,18,.07);
}
.vip-dress-grid .dress-option-card{ border-color:#e0c570; background:linear-gradient(180deg,#fffef9,#fff5d5); }
.vip-dress-grid .dress-option-card.active{ border-color:#d99b00; box-shadow:0 0 0 3px rgba(255,197,42,.15),0 6px 14px rgba(175,123,17,.14); }

/* ===== QQShow2000 授权素材换装库整合 ===== */
.player-visual{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    pointer-events:none;
    transform-origin:50% 88%;
}
.player-visual .player-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:contain;
    z-index:10;
}
.qqshow-wear-layer{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:contain;
    pointer-events:none;
    user-select:none;
    image-rendering:auto;
}
.player-name-row{ z-index:100; }
/* 魔法互动时让人物与换装图层整体一起运动 */
.magic-reacting .player-img{ animation:none !important; transform:none !important; }
.magic-react-bigfish .player-visual{ animation:magicReactFloat .55s ease-in-out 4; }
.magic-react-calf .player-visual{ animation:magicReactShake .25s ease-in-out 8; }
.magic-react-cage .player-visual{ animation:magicReactSqueeze .48s ease-in-out 4; }
.magic-react-peek .player-visual{ animation:magicReactPeek .55s ease-in-out 4; }
.magic-react-hit .player-visual{ animation:magicReactPop .42s ease-in-out 5; }
.magic-react-kiss .player-visual{ animation:magicReactKiss .52s ease-in-out 4; }
.magic-react-catch .player-visual{ animation:magicReactCatch .48s ease-in-out 4; }
.magic-react-crack .player-visual{ animation:magicReactBloom .50s ease-in-out 4; }
.magic-react-spit .player-visual{ animation:magicReactWiggle .27s ease-in-out 8; }

.dress-modal{
    width:min(820px, calc(100vw - 28px));
    max-height:min(860px, calc(100vh - 24px));
}
.dress-body{
    max-height:min(790px, calc(100vh - 94px));
    padding:14px 16px 20px;
}
.qq-dress-toolbar{
    position:sticky;
    top:-14px;
    z-index:12;
    padding:12px 0 10px;
    background:linear-gradient(180deg,#fbfdff 0%,#f4f7ff 90%,rgba(244,247,255,.92) 100%);
    border-bottom:1px solid #d8e1f4;
}
.qq-dress-tier-tabs{ display:flex; gap:8px; margin-bottom:10px; }
.qq-dress-tier{
    flex:1;
    height:38px;
    border:1px solid #9cb7e7;
    border-radius:10px;
    background:linear-gradient(180deg,#fff,#eaf1ff);
    color:#31548d;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
}
.qq-dress-tier.active{
    color:#fff;
    border-color:#477fd9;
    background:linear-gradient(180deg,#67a6f3,#3375d4);
    box-shadow:0 3px 9px rgba(51,117,212,.23),inset 0 1px 0 rgba(255,255,255,.35);
}
.qq-dress-tier.vip{ border-color:#e2bd52; color:#8d5d00; background:linear-gradient(180deg,#fffdf5,#fff2c8); }
.qq-dress-tier.vip.active{
    color:#6a3f00;
    border-color:#d79a00;
    background:linear-gradient(180deg,#ffe989,#f5b820);
    box-shadow:0 3px 9px rgba(201,139,0,.22),inset 0 1px 0 rgba(255,255,255,.55);
}
.qq-dress-search-row{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; }
.qq-dress-search{
    height:36px;
    min-width:0;
    padding:0 12px;
    border:1px solid #b8c9e9;
    border-radius:9px;
    background:#fff;
    color:#263a5e;
    outline:none;
    font-size:13px;
}
.qq-dress-search:focus{ border-color:#6496e7; box-shadow:0 0 0 3px rgba(83,139,225,.10); }
.qq-dress-tool-btn{
    height:36px;
    padding:0 12px;
    border:1px solid #b9cae8;
    border-radius:9px;
    background:#fff;
    color:#405a84;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.qq-dress-tool-btn.danger{ color:#a14d4d; border-color:#e0b7b7; }
.qq-dress-selected{
    margin-top:8px;
    min-height:28px;
    padding:6px 10px;
    border-radius:8px;
    background:#eef4ff;
    color:#4d648d;
    font-size:12px;
    line-height:1.4;
}
.qq-dress-category-bar{
    display:flex;
    gap:7px;
    padding:10px 1px 8px;
    overflow-x:auto;
    scrollbar-width:thin;
}
.qq-dress-category{
    flex:0 0 auto;
    height:31px;
    padding:0 11px;
    border:1px solid #c3d1eb;
    border-radius:9px;
    background:#fff;
    color:#536789;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.qq-dress-category.active{
    border-color:#5b8ce1;
    color:#27589e;
    background:#eaf2ff;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.qq-dress-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    min-height:330px;
}
.qq-dress-card{
    position:relative;
    min-width:0;
    padding:7px 6px 8px;
    border:1px solid #c9d4ea;
    border-radius:11px;
    background:linear-gradient(180deg,#fff,#f5f8ff);
    cursor:pointer;
    box-shadow:0 2px 6px rgba(53,82,132,.08);
    overflow:hidden;
}
.qq-dress-card:hover{ transform:translateY(-1px); border-color:#83a9ea; box-shadow:0 5px 12px rgba(61,104,176,.15); }
.qq-dress-card.active{
    border-color:#4f86e4;
    box-shadow:0 0 0 3px rgba(79,134,228,.13),0 5px 12px rgba(61,104,176,.15);
    background:linear-gradient(180deg,#f9fcff,#e8f2ff);
}
.qq-dress-card.locked{ opacity:.72; filter:saturate(.72); }
.qq-dress-card.locked::after{
    content:'VIP';
    position:absolute;
    right:6px;
    top:6px;
    padding:2px 5px;
    border-radius:6px;
    background:linear-gradient(180deg,#ffe37a,#e7a500);
    color:#6e4200;
    font-size:9px;
    font-weight:900;
    box-shadow:0 2px 5px rgba(133,87,0,.18);
}
.qq-dress-thumb{
    position:relative;
    height:118px;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:
      linear-gradient(45deg,#f3f3f3 25%,transparent 25%) 0 0/14px 14px,
      linear-gradient(-45deg,#f3f3f3 25%,transparent 25%) 0 7px/14px 14px,
      linear-gradient(45deg,transparent 75%,#f3f3f3 75%) 7px -7px/14px 14px,
      linear-gradient(-45deg,transparent 75%,#f3f3f3 75%) -7px 0/14px 14px,#fff;
}
.qq-dress-thumb img{ width:100%; height:100%; object-fit:contain; display:block; }
.qq-dress-image-fallback{
    display:none;
    position:absolute;
    inset:0;
    align-items:center;
    justify-content:center;
    padding:8px;
    color:#8a93a5;
    font-size:10px;
    font-weight:800;
    text-align:center;
}
.qq-dress-thumb img.qq-dress-image-error + .qq-dress-image-fallback{ display:flex; }
.qq-dress-name{
    margin-top:6px;
    color:#344e79;
    font-size:11px;
    font-weight:800;
    line-height:1.3;
    min-height:29px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    word-break:break-all;
}
.qq-dress-vip-line{ color:#a17100; font-size:10px; font-weight:900; text-align:center; margin-top:2px; }
.qq-dress-pager{ display:flex; align-items:center; justify-content:center; gap:12px; padding:12px 0 4px; }
.qq-dress-pager button{
    height:31px; padding:0 14px; border:1px solid #afc2e6; border-radius:8px; background:#fff; color:#385b94; font-weight:800; cursor:pointer;
}
.qq-dress-pager button:disabled{ opacity:.4; cursor:default; }
.qq-dress-pager span{ color:#647493; font-size:12px; font-weight:700; }
.qq-dress-loading{ grid-column:1/-1; min-height:220px; display:flex; align-items:center; justify-content:center; color:#71809b; font-size:14px; }
.qq-dress-loading.error{ color:#b14b4b; }
.dress-legacy-block{
    margin-top:14px;
    border:1px solid #d8e0ef;
    border-radius:10px;
    background:#fafcff;
    overflow:hidden;
}
.dress-legacy-block summary{ padding:11px 13px; color:#586d94; font-size:13px; font-weight:900; cursor:pointer; }
.dress-legacy-block[open]{ padding:0 12px 12px; }
.dress-legacy-block[open] summary{ margin:0 -12px 8px; border-bottom:1px solid #e2e7f1; }
@media(max-width:700px){
    .qq-dress-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
    .qq-dress-search-row{ grid-template-columns:1fr 1fr; }
    .qq-dress-search{ grid-column:1/-1; }
}
@media(max-width:500px){
    .qq-dress-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
    .qq-dress-thumb{ height:96px; }
}

/* ===== QQShow 换装贴合校准 + VIP独立开通 ===== */
/* QQShow 原始素材使用 140x226 坐标系；这里按当前大厅人物底图做像素级校准 */
.qqshow-wear-layer{
    left:3.85% !important;
    top:-3.27% !important;
    right:auto !important;
    bottom:auto !important;
    width:92.95% !important;
    height:98.25% !important;
    object-fit:fill !important;
    transform:none !important;
    transform-origin:0 0 !important;
}
.player.qqshow-active .player-visual{
    overflow:visible;
}
.qq-dress-tier.vip::after{
    content:" · ¥30或30钻石开通";
    font-size:11px;
    font-weight:800;
    opacity:.78;
}
.qq-dress-vip-line{
    font-weight:900;
    letter-spacing:.2px;
}
.qq-dress-card.locked .qq-dress-vip-line{
    color:#a46a00;
}
.vip-open-price-banner{
    margin:0 0 16px;
    padding:14px 16px;
    border:1px solid #e7bd45;
    border-radius:16px;
    background:linear-gradient(135deg,#fff9dc,#ffefaf);
    color:#7a4d00;
    font-weight:900;
    text-align:center;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 5px 14px rgba(173,116,0,.10);
}
.vip-open-price-banner b{
    color:#c17a00;
    font-size:20px;
}
.vip-plan-grid.vip-single{
    grid-template-columns:1fr !important;
}
.vip-plan-grid.vip-single .vip-plan-card{
    max-width:640px;
    width:100%;
    margin:0 auto;
}

/* ===== V17.6.16 男女同轨 QQShow 原生换装 =====
   男女人物使用完全相同的 player-visual、140x226 标准坐标、层级、尺寸和运动容器。
   只有默认人物素材不同；不再存在男生专用缩放、Y偏移、头部跟随或 CSS 清晰度补丁。 */
.player.qqshow-active .player-img{
    opacity:0 !important;
    visibility:hidden !important;
}
.player.qqshow-active .qqshow-wear-layer{
    left:0 !important;
    top:var(--qq-layer-y, 0) !important;
    right:auto !important;
    bottom:auto !important;
    width:100% !important;
    height:100% !important;
    object-fit:fill !important;
    transform:none !important;
    transform-origin:50% 88% !important;
}
.player.qqshow-active .player-visual{
    overflow:visible;
}
.player.qqshow-overlay-active .qqshow-wear-layer{
    left:0 !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transform:none !important;
    transform-origin:50% 88% !important;
}
.player.qqshow-overlay-active .player-img{
    opacity:1 !important;
    visibility:visible !important;
}
/* ===== 2026-09-01 换装页：预览后确认保存 ===== */
.dress-modal{
    width:min(980px, calc(100vw - 28px));
    max-height:min(870px, calc(100vh - 24px));
}
.dress-body{
    max-height:min(800px, calc(100vh - 92px));
    padding:14px 16px 14px;
}
.dress-workspace{
    display:grid;
    grid-template-columns:210px minmax(0,1fr);
    gap:14px;
    align-items:start;
}
.dress-preview-panel{
    position:sticky;
    top:0;
    z-index:14;
    padding:13px 12px 12px;
    border:1px solid #bfd0ee;
    border-radius:14px;
    background:linear-gradient(180deg,#ffffff 0%,#f3f7ff 100%);
    box-shadow:0 6px 16px rgba(61,91,150,.11), inset 0 1px 0 rgba(255,255,255,.9);
}
.dress-preview-title{
    text-align:center;
    color:#395b91;
    font-size:15px;
    font-weight:900;
    margin-bottom:10px;
    letter-spacing:.4px;
}
.dress-preview-stage{
    min-height:300px;
    border:1px solid #d0daf0;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:
        radial-gradient(circle at 50% 78%,rgba(102,150,231,.16),transparent 34%),
        linear-gradient(45deg,#f5f7fb 25%,transparent 25%) 0 0/16px 16px,
        linear-gradient(-45deg,#f5f7fb 25%,transparent 25%) 0 8px/16px 16px,
        linear-gradient(45deg,transparent 75%,#f5f7fb 75%) 8px -8px/16px 16px,
        linear-gradient(-45deg,transparent 75%,#f5f7fb 75%) -8px 0/16px 16px,
        #fff;
}
.dress-preview-visual{
    position:relative;
    width:174px;
    height:276px;
    flex:0 0 auto;
}
.dress-preview-layer,
.dress-preview-base{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    pointer-events:none;
    user-select:none;
}
.dress-preview-layer{
    object-fit:fill;
    image-rendering:auto;
    top:var(--qq-layer-y, 0);
    bottom:auto;
}
.dress-preview-base{ object-fit:contain; z-index:10; }
.dress-preview-visual.qqshow-overlay-only .dress-preview-layer{ object-fit:contain; }
.dress-preview-status{
    margin-top:10px;
    min-height:30px;
    padding:7px 8px;
    border-radius:9px;
    background:#edf3ff;
    color:#50678e;
    text-align:center;
    font-size:12px;
    font-weight:900;
    line-height:1.35;
}
.dress-preview-status.changed{
    color:#966000;
    background:linear-gradient(180deg,#fff8d9,#fff0b9);
    border:1px solid #efd078;
}
.dress-preview-hint{
    margin-top:7px;
    text-align:center;
    color:#8794aa;
    font-size:11px;
}
.dress-library-panel{ min-width:0; }
.dress-library-panel .qq-dress-toolbar{
    top:-14px;
}
.dress-library-panel .qq-dress-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    min-height:330px;
}
.dress-save-bar{
    position:sticky;
    bottom:-14px;
    z-index:20;
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin:14px -16px -14px;
    padding:12px 16px 14px;
    border-top:1px solid #d7e0f2;
    background:linear-gradient(180deg,rgba(248,251,255,.94),#f2f6ff 34%,#edf3ff 100%);
    box-shadow:0 -7px 18px rgba(55,82,137,.08);
}
.dress-action-btn{
    min-width:126px;
    height:42px;
    border-radius:11px;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
}
.dress-action-btn.secondary{
    border:1px solid #bdc8dd;
    background:#fff;
    color:#52647f;
}
.dress-action-btn.primary{
    min-width:170px;
    border:1px solid #2c71ce;
    color:#fff;
    background:linear-gradient(180deg,#68b4f7 0%,#377fdc 55%,#2868c8 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 4px 11px rgba(44,113,206,.24);
}
.dress-action-btn:hover{ transform:translateY(-1px); }

@media(max-width:780px){
    .dress-workspace{ grid-template-columns:1fr; }
    .dress-preview-panel{ position:relative; top:auto; }
    .dress-preview-stage{ min-height:250px; }
    .dress-preview-visual{ width:150px; height:238px; }
    .dress-library-panel .qq-dress-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:520px){
    .dress-library-panel .qq-dress-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dress-save-bar{ justify-content:stretch; }
    .dress-action-btn{ flex:1; min-width:0 !important; }
}


/* ===== 2026-09-02 当前房间玩家选择 + 5钻石踢出房间 ===== */
.room-player-picker-modal{
    width:min(410px, calc(100vw - 28px));
    max-height:min(72vh, 650px);
    border:3px solid #9a69e7;
    border-radius:22px;
    background:linear-gradient(180deg,#ffffff 0%,#fbf8ff 100%);
    box-shadow:0 20px 46px rgba(72,42,120,.28);
    overflow:hidden;
}
.room-player-picker-modal.active{ display:flex; flex-direction:column; }
.room-player-picker-head{
    flex:0 0 auto; display:flex; align-items:center; justify-content:space-between;
    padding:18px 20px 13px; background:rgba(255,255,255,.96); border-bottom:1px solid #eadfff;
}
.room-player-picker-title{
    color:#6a41ae; font-size:22px; line-height:1; font-weight:900; position:relative; padding-bottom:9px;
}
.room-player-picker-title::after{
    content:""; position:absolute; left:0; bottom:0; width:38px; height:3px; border-radius:3px;
    background:linear-gradient(90deg,#7c4ddd,#be94ff);
}
.room-player-picker-close{
    border:0; background:transparent; color:#333; font-size:17px; padding:7px 8px; border-radius:9px; cursor:pointer;
}
.room-player-picker-close:hover{ background:#f3edff; }
.room-player-picker-body{ flex:1 1 auto; min-height:0; padding:12px 18px 18px; overflow-y:auto; }
.room-player-picker-body::-webkit-scrollbar{ width:9px; }
.room-player-picker-body::-webkit-scrollbar-thumb{ background:#a79ab9; border-radius:10px; border:2px solid #f8f4ff; }
.room-player-picker-list{ display:flex; flex-direction:column; gap:8px; }
.room-player-picker-item{
    width:100%; min-height:54px; border:1.5px solid #cfbaf4; border-radius:15px;
    background:linear-gradient(180deg,#fbf8ff,#f4edff); padding:7px 11px; display:flex; align-items:center; gap:10px;
    cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 2px 7px rgba(92,58,149,.06);
    transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.room-player-picker-item:hover{ transform:translateY(-1px); border-color:#a77ae9; box-shadow:0 4px 12px rgba(92,58,149,.12); }
.room-player-picker-item.selected{ border-color:#dfa816; background:linear-gradient(180deg,#fff9df,#ffe999); }
.room-player-picker-avatar{
    width:38px; height:38px; border-radius:50%; overflow:hidden; flex:0 0 38px; background:#fff;
    border:2px solid #e4cf74; box-shadow:0 2px 7px rgba(84,59,10,.12);
}
.room-player-picker-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.room-player-picker-name{
    min-width:0; flex:1 1 auto; text-align:left; color:#2c2435; font-size:16px; font-weight:900;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.room-player-picker-vip,
.room-player-picker-item.rose-gold-player .room-player-picker-vip{
    flex:0 0 auto; min-width:31px; height:24px; padding:0 7px; border-radius:12px; display:inline-flex;
    align-items:center; justify-content:center; font-size:11px; font-weight:900; color:#714600;
    background:linear-gradient(180deg,#fff2a6,#ffc934); border:1px solid #d69a0c; box-shadow:0 0 7px rgba(255,199,44,.20);
}
.room-player-picker-self{
    flex:0 0 auto; font-size:11px; color:#72539e; border:1px solid #c7b2e8; background:#f7f2ff;
    border-radius:10px; padding:3px 7px;
}
.room-player-picker-empty{ display:none; text-align:center; color:#8e859b; font-size:14px; padding:35px 10px; }
.player-sheet-action.kick{
    color:#8f2b20; border:1px solid #e58472;
    background:linear-gradient(180deg,#fff0e8 0%,#ffc7b8 55%,#ffad9c 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 4px 12px rgba(200,77,52,.13);
}
.player-sheet-action.kick:hover{ filter:brightness(1.025); }
.player-sheet-action.kick:disabled{ opacity:.62; cursor:wait; }

/* ===== 2026-09-02 弹窗比例统一 / VIP踢人 / 公开装扮资料 ===== */
/* 所有主要弹窗统一更舒服的视觉比例，不改变原有交互逻辑 */
.vip-guide-modal{
    width:min(690px, calc(100vw - 44px)) !important;
    max-height:min(760px, calc(100vh - 46px)) !important;
    border-radius:16px !important;
    border-width:1.5px !important;
    box-shadow:0 18px 44px rgba(55,37,94,.24) !important;
}
.vip-guide-head{
    padding:11px 15px !important;
    font-size:15px !important;
}
.vip-guide-head button{
    padding:6px 13px !important;
    border-radius:10px !important;
    font-size:12px !important;
}
.vip-guide-body{
    padding:14px 15px 17px !important;
    max-height:min(700px, calc(100vh - 100px)) !important;
}
.vip-guide-main-title{ font-size:21px !important; }
.vip-guide-subtitle{ font-size:12px !important; margin-bottom:11px !important; }
.vip-open-price-banner{ padding:10px 12px !important; border-radius:11px !important; font-size:13px !important; }
.vip-plan-card{ padding:15px !important; border-radius:15px !important; }
.vip-plan-name{ font-size:20px !important; }
.vip-plan-price{ font-size:16px !important; }
.vip-plan-card li{ line-height:1.65 !important; font-size:12px !important; }
.vip-guide-section{ margin-top:13px !important; }
.vip-guide-section-title{ font-size:14px !important; margin-bottom:8px !important; }
.vip-growth-grid,.vip-level-grid{ gap:8px !important; }
.vip-growth-item,.vip-level-card{ min-height:48px !important; border-radius:10px !important; }
.vip-note-panel{ border-radius:11px !important; padding:10px 12px !important; font-size:12px !important; }
.vip-guide-footnote,.vip-guide-contact{ font-size:11px !important; line-height:1.6 !important; }

.setting-modal{
    width:min(390px, calc(100vw - 36px)) !important;
    max-height:min(650px, calc(100vh - 42px)) !important;
    border-radius:15px !important;
}
.friend-modal{
    width:min(390px, calc(100vw - 36px)) !important;
    max-height:min(540px, calc(100vh - 42px)) !important;
    border-width:2px !important;
    border-radius:15px !important;
    box-shadow:0 16px 38px rgba(35,65,116,.20);
}
.timebook-modal{
    width:min(550px, calc(100vw - 40px)) !important;
    max-height:min(680px, calc(100vh - 42px)) !important;
    border-radius:16px !important;
}
#profileModal{
    width:min(450px, calc(100vw - 40px)) !important;
    height:min(650px, calc(100vh - 40px)) !important;
    max-height:calc(100vh - 40px) !important;
    border-radius:15px !important;
}
.home-page-modal{
    width:min(650px, calc(100vw - 40px)) !important;
    max-height:min(720px, calc(100vh - 42px)) !important;
    border-radius:16px !important;
    border-width:2px !important;
}
.player-sheet-modal{
    width:min(410px, calc(100vw - 40px)) !important;
    max-height:min(720px, calc(100vh - 42px)) !important;
    border-radius:16px !important;
    border-width:2px !important;
}
.player-sheet-body{
    padding:14px 15px 17px !important;
    max-height:min(650px, calc(100vh - 108px)) !important;
}
.room-player-picker-modal{
    width:min(380px, calc(100vw - 40px)) !important;
    max-height:min(590px, calc(100vh - 44px)) !important;
    border-radius:16px !important;
    border-width:2px !important;
}
.room-player-picker-head{ padding:14px 16px 10px !important; }
.room-player-picker-title{ font-size:19px !important; }
.magic-modal{
    width:min(410px, calc(100vw - 40px)) !important;
    max-height:min(720px, calc(100vh - 42px)) !important;
    border-radius:16px !important;
}
.rank-modal{
    width:min(350px, calc(100vw - 40px)) !important;
    max-height:min(620px, calc(100vh - 44px)) !important;
    border-radius:15px !important;
}
.dress-modal{
    width:min(900px, calc(100vw - 40px)) !important;
    max-height:min(800px, calc(100vh - 42px)) !important;
    border-radius:17px !important;
    border-width:2px !important;
}
.dress-body{
    max-height:min(730px, calc(100vh - 104px)) !important;
}

/* 玩家资料：公开展示当前保存装扮 */
.player-outfit-public-card{
    margin:0 0 12px;
    padding:11px 12px 10px;
    border:1px solid #e5c35e;
    border-radius:14px;
    background:linear-gradient(180deg,#fffdf7,#fff3c7);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 4px 10px rgba(175,130,28,.07);
}
.player-outfit-public-title{
    color:#a96d00;
    font-size:14px;
    font-weight:900;
    text-align:center;
    margin-bottom:7px;
}
.player-outfit-public-stage{
    width:150px;
    height:238px;
    margin:0 auto;
    border:1px solid #ead48b;
    border-radius:12px;
    overflow:hidden;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(circle at 50% 82%,rgba(250,207,86,.16),transparent 36%),
        linear-gradient(45deg,#fbfaf5 25%,transparent 25%) 0 0/16px 16px,
        linear-gradient(-45deg,#fbfaf5 25%,transparent 25%) 0 8px/16px 16px,
        #fff;
}
.player-outfit-public-visual{
    position:relative;
    width:150px;
    height:238px;
}
.player-outfit-public-layer,
.player-outfit-public-base{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    pointer-events:none;
}
.player-outfit-public-layer{
    object-fit:fill;
    top:var(--qq-layer-y, 0);
    bottom:auto;
}
.player-outfit-public-base{ object-fit:contain; z-index:10; }
.player-outfit-public-visual.qqshow-overlay-only .player-outfit-public-layer{ object-fit:contain; }
.player-outfit-public-note{
    margin-top:7px;
    text-align:center;
    color:#846527;
    font-size:11px;
    font-weight:700;
}

/* 踢人是 VIP 专享特权 */
.player-sheet-action.kick{
    background:linear-gradient(180deg,#ffdf72,#f0aa14) !important;
    color:#6d3e00 !important;
    border:1px solid #d7960a !important;
}
.player-sheet-action.kick:disabled{
    cursor:not-allowed !important;
    opacity:.62 !important;
    filter:saturate(.55) !important;
    box-shadow:none !important;
}

/* VIP 装扮未开通也允许预览，只限制保存 */
.qq-dress-card.preview-only{
    opacity:1 !important;
    cursor:pointer !important;
    filter:none !important;
    border-color:#e2c56e !important;
    background:linear-gradient(180deg,#fffdf7,#fff7dd) !important;
}
.qq-dress-card.preview-only:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 15px rgba(199,151,29,.15) !important;
}
.qq-dress-vip-line{
    line-height:1.35;
}

@media(max-width:760px){
    .vip-guide-modal,.dress-modal,.home-page-modal{ width:calc(100vw - 18px) !important; max-height:calc(100vh - 18px) !important; }
    .vip-guide-body{ max-height:calc(100vh - 76px) !important; }
    .dress-body{ max-height:calc(100vh - 78px) !important; }
    .player-sheet-modal,.room-player-picker-modal,#profileModal,.setting-modal,.magic-modal,.rank-modal,.friend-modal,.timebook-modal{ width:calc(100vw - 20px) !important; }
}

/* ===== 2026-09-02 玩家资料顶部踢人 / 简洁VIP / 公开5张时光册 ===== */
.player-sheet-head{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:54px;
    padding:11px 150px 11px 16px !important;
}
.player-sheet-kick-top{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    min-height:32px;
    padding:0 12px;
    border:1px solid #dda21c;
    border-radius:10px;
    background:linear-gradient(180deg,#fff4bd 0%,#ffd662 56%,#efb72c 100%);
    color:#6e4300;
    font-size:12px;
    font-weight:900;
    letter-spacing:.15px;
    cursor:pointer;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 3px 8px rgba(168,112,0,.15);
    white-space:nowrap;
}
.player-sheet-kick-top:hover:not(:disabled){
    transform:translateY(calc(-50% - 1px));
    filter:brightness(1.025);
}
.player-sheet-kick-top:disabled{
    opacity:.52;
    cursor:not-allowed;
    filter:saturate(.55);
}

/* 个人资料顶部VIP状态只显示简洁状态 */
#profileModal .profile-plan-pill.vip-status-pill{
    min-height:32px !important;
    height:32px !important;
    min-width:116px !important;
    width:auto !important;
    padding:0 18px !important;
    margin-bottom:5px !important;
    justify-content:center !important;
    font-size:13px !important;
    letter-spacing:.2px !important;
}

/* 时光册：普通3张，VIP5张 */
.timebook-grid{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:8px !important;
}
.timebook-slot{
    border-radius:11px !important;
    min-width:0;
}
.timebook-placeholder{
    font-size:13px !important;
}
.timebook-placeholder small{
    font-size:10px !important;
}
.timebook-slot.vip-locked{
    cursor:not-allowed;
    border-style:solid !important;
    border-color:#e5c267 !important;
    background:linear-gradient(180deg,#fffaf0,#fff0c8) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.timebook-slot.vip-locked::after{
    content:'VIP';
    position:absolute;
    right:5px;
    top:5px;
    padding:2px 5px;
    border-radius:6px;
    background:linear-gradient(180deg,#ffe98a,#eeb82c);
    color:#744800;
    font-size:9px;
    font-weight:900;
}

/* 个人资料与玩家资料公开时光册 */
.public-timebook-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:7px;
    width:100%;
}
.public-timebook-slot{
    aspect-ratio:1 / 1;
    min-width:0;
    position:relative;
    overflow:hidden;
    border:1px solid #d7c5ee;
    border-radius:10px;
    background:
        linear-gradient(45deg,#fbf9ff 25%,transparent 25%) 0 0/12px 12px,
        linear-gradient(-45deg,#fbf9ff 25%,transparent 25%) 0 6px/12px 12px,
        #f1ecf8;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 2px 6px rgba(79,55,123,.06);
}
.public-timebook-slot img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.public-timebook-slot span{
    padding:0 4px;
    text-align:center;
    color:#a293b4;
    font-size:9px;
    font-weight:700;
}
#profileModal .profile-timebook-title{
    margin-top:14px !important;
}
#profileModal .profile-timebook-grid{
    margin-bottom:5px;
}
.player-timebook-public-panel{
    padding:12px !important;
}
.player-timebook-public-panel .player-sheet-label{
    text-align:center;
    margin-bottom:9px;
}
.player-timebook-public-panel .public-timebook-slot{
    border-color:#ead58d;
    background:#fffdf6;
}

/* 我的主页同步支持5张公开时光册照片 */
.home-photo-grid{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:9px !important;
}
.home-photo-slot{
    border-radius:12px !important;
}

@media (max-width:620px){
    .player-sheet-head{ padding-right:126px !important; }
    .player-sheet-kick-top{ right:8px; padding:0 9px; font-size:11px; }
    .timebook-grid{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    .public-timebook-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
    .home-photo-grid{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
.player-sheet-head{
    padding:11px 12px !important;
}
.player-sheet-head .profile-modal-title{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    white-space:nowrap;
}
@media (max-width:620px){
    .player-sheet-head{ padding:11px 10px !important; }
}


/* ===== 2026-09-02：顶部房间一键进入 / 动感魔法大型互动特效 ===== */
/* “加入房间”保留为兼容DOM但不再显示；退出后直接点击顶部房间标签进入。 */
#btnJoinRoom{ display:none !important; }

/* 更大、更有层次的目标魔法光场。与QQShow图层一起运动，不改变任何换装数据。 */
.magic-player-aura{
    left:50% !important;
    top:45% !important;
    width:226px !important;
    height:300px !important;
    transform:translate(-50%,-50%) !important;
    z-index:72 !important;
    overflow:visible !important;
    isolation:isolate;
}
.magic-player-aura::before,
.magic-player-aura::after{
    content:"";
    position:absolute;
    inset:19% 15%;
    border-radius:50%;
    pointer-events:none;
}
.magic-player-aura::before{
    border:1px solid rgba(255,255,255,.78);
    box-shadow:0 0 24px rgba(255,255,255,.36), inset 0 0 22px rgba(255,255,255,.22);
    animation:magicLuxuryHalo 1.4s ease-in-out infinite alternate;
}
.magic-player-aura::after{
    inset:29% 24%;
    background:radial-gradient(circle,rgba(255,255,255,.48) 0 10%,rgba(255,231,137,.25) 30%,rgba(91,211,255,.12) 52%,transparent 72%);
    filter:blur(7px);
    animation:magicLuxuryBreath .78s ease-in-out infinite alternate;
}
.magic-aura-glow{
    inset:13% 10% !important;
    opacity:.92 !important;
    filter:blur(20px) !important;
    background:radial-gradient(circle,rgba(255,255,255,.46),rgba(255,218,102,.28) 28%,rgba(88,203,255,.18) 50%,transparent 73%) !important;
}
.magic-aura-ring{
    left:4% !important;
    right:4% !important;
    bottom:12% !important;
    height:31% !important;
    border-width:3px !important;
    box-shadow:0 0 20px rgba(255,220,111,.46),inset 0 0 16px rgba(94,214,255,.26) !important;
    animation-duration:1.35s !important;
}
.magic-aura-ring-secondary{
    left:18% !important;
    right:18% !important;
    bottom:23% !important;
    height:22% !important;
    opacity:.68;
    animation-direction:reverse !important;
    animation-duration:1.05s !important;
}
.magic-aura-core{
    position:absolute;
    left:50%; top:43%;
    transform:translate(-50%,-50%);
    display:flex; align-items:center; justify-content:center;
    width:58px; height:58px;
    border-radius:50%;
    font-size:34px;
    background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.98),rgba(255,246,199,.88) 38%,rgba(255,204,88,.38) 63%,transparent 72%);
    filter:drop-shadow(0 0 12px rgba(255,227,139,.72));
    animation:magicCorePop 1.05s ease-in-out infinite alternate;
    z-index:4;
}
.magic-aura-particle{
    font-size:25px !important;
    z-index:6 !important;
    filter:drop-shadow(0 3px 5px rgba(0,0,0,.17)) drop-shadow(0 0 7px rgba(255,255,255,.62)) !important;
    animation-duration:1.85s !important;
}
.magic-aura-particle:nth-child(1){--px:-96px;--py:-112px}.magic-aura-particle:nth-child(2){--px:82px;--py:-104px}
.magic-aura-particle:nth-child(3){--px:-106px;--py:-34px}.magic-aura-particle:nth-child(4){--px:101px;--py:-20px}
.magic-aura-particle:nth-child(5){--px:-88px;--py:72px}.magic-aura-particle:nth-child(6){--px:84px;--py:91px}
.magic-aura-particle:nth-child(7){--px:-30px;--py:-137px}.magic-aura-particle:nth-child(8){--px:34px;--py:126px}
.magic-aura-particle:nth-child(9){--px:-116px;--py:24px}.magic-aura-particle:nth-child(10){--px:116px;--py:42px}
.magic-aura-particle:nth-child(11){--px:-58px;--py:113px}.magic-aura-particle:nth-child(12){--px:61px;--py:-130px}

.magic-cast-effect{
    top:-74px !important;
    min-width:158px !important;
    max-width:236px !important;
    padding:10px 14px 11px !important;
    border-radius:18px !important;
    border-width:1px !important;
    box-shadow:0 10px 28px rgba(0,0,0,.24),0 0 0 1px rgba(255,255,255,.55) inset,0 0 22px rgba(255,225,134,.18) !important;
    backdrop-filter:blur(8px) saturate(1.15) !important;
    z-index:84 !important;
    animation:magicInfoFloatLuxury 3s cubic-bezier(.18,.82,.2,1) forwards !important;
}
.magic-cast-effect .magic-effect-icon{font-size:30px !important;margin-bottom:3px !important;}
.magic-cast-effect .magic-effect-title{font-size:15px !important;letter-spacing:.4px;}
.magic-cast-effect .magic-effect-line{font-size:11px !important;line-height:1.45 !important;}

/* 双人互动：所有同房玩家都通过服务器收到同一条magic-cast并绘制这条轨迹。 */
.magic-scene-interaction{
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:66;
    overflow:hidden;
}
.magic-interaction-link{
    position:absolute;
    height:1px;
    transform-origin:0 50%;
    overflow:visible;
}
.magic-link-beam{
    position:absolute;
    left:0; right:0; top:-2px;
    height:4px;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.94) 16%,rgba(255,222,109,.96) 50%,rgba(255,255,255,.95) 84%,transparent);
    filter:drop-shadow(0 0 7px rgba(255,220,108,.75));
    transform:scaleX(0);
    transform-origin:left center;
    animation:magicBeamGrow 2.25s cubic-bezier(.18,.78,.22,1) forwards;
}
.magic-link-particle{
    position:absolute;
    left:0; top:0;
    font-size:21px;
    line-height:1;
    opacity:0;
    filter:drop-shadow(0 0 7px rgba(255,255,255,.9));
    transform:translate(-50%,calc(-50% + var(--y,0px)));
    animation:magicLinkTravel 1.7s var(--d,0s) cubic-bezier(.2,.72,.22,1) forwards;
}
.magic-target-burst{
    position:absolute;
    width:190px; height:190px;
    transform:translate(-50%,-50%);
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
}
.magic-target-burst span{
    position:relative; z-index:4;
    font-size:48px;
    filter:drop-shadow(0 0 13px rgba(255,255,255,.95)) drop-shadow(0 5px 6px rgba(0,0,0,.16));
    animation:magicBurstIcon 2.25s ease-out forwards;
}
.magic-target-burst i,
.magic-target-burst b{
    position:absolute;
    inset:19px;
    border-radius:50%;
    border:3px solid rgba(255,255,255,.86);
    box-shadow:0 0 26px rgba(255,220,105,.56),inset 0 0 26px rgba(91,213,255,.18);
    animation:magicBurstRing 2.25s ease-out forwards;
}
.magic-target-burst b{
    inset:43px;
    border-width:2px;
    animation-delay:.12s;
    animation-direction:reverse;
}
.magic-caster-active .player-visual{
    transform-origin:50% 88%;
    animation:magicCasterGesture .42s ease-in-out 5;
    filter:drop-shadow(0 0 10px rgba(255,225,113,.62));
}
.magic-caster-active::before{
    content:"✦";
    position:absolute;
    left:50%; top:34%;
    transform:translate(-50%,-50%);
    z-index:65;
    font-size:34px;
    color:#fff4b8;
    text-shadow:0 0 8px #fff,0 0 18px rgba(255,194,64,.9);
    animation:magicCasterSpark 2s ease-out forwards;
    pointer-events:none;
}

.magic-scene-interaction.theme-ocean .magic-link-beam{background:linear-gradient(90deg,transparent,#eaffff,#63dcff,#eaffff,transparent);filter:drop-shadow(0 0 8px rgba(58,202,255,.9));}
.magic-scene-interaction.theme-pink .magic-link-beam,.magic-scene-interaction.theme-red .magic-link-beam{background:linear-gradient(90deg,transparent,#fff0fa,#ff86c5,#fff3fa,transparent);filter:drop-shadow(0 0 8px rgba(255,99,181,.86));}
.magic-scene-interaction.theme-orange .magic-link-beam,.magic-scene-interaction.theme-gold .magic-link-beam{background:linear-gradient(90deg,transparent,#fff9d8,#ffc44e,#fff9d8,transparent);filter:drop-shadow(0 0 8px rgba(255,184,49,.88));}

.magic-player-aura.theme-ocean .magic-aura-glow{background:radial-gradient(circle,rgba(241,255,255,.68),rgba(80,217,255,.34) 32%,rgba(50,154,255,.14) 55%,transparent 73%) !important;}
.magic-player-aura.theme-pink .magic-aura-glow,.magic-player-aura.theme-red .magic-aura-glow{background:radial-gradient(circle,rgba(255,249,254,.72),rgba(255,137,196,.36) 31%,rgba(255,77,148,.13) 57%,transparent 73%) !important;}
.magic-player-aura.theme-orange .magic-aura-glow,.magic-player-aura.theme-gold .magic-aura-glow{background:radial-gradient(circle,rgba(255,254,238,.72),rgba(255,205,91,.38) 32%,rgba(255,154,46,.12) 56%,transparent 73%) !important;}

@keyframes magicLuxuryHalo{from{transform:rotate(-6deg) scale(.88);opacity:.42}to{transform:rotate(7deg) scale(1.08);opacity:.92}}
@keyframes magicLuxuryBreath{from{transform:scale(.86);opacity:.35}to{transform:scale(1.18);opacity:.9}}
@keyframes magicCorePop{from{transform:translate(-50%,-50%) scale(.82) rotate(-5deg)}to{transform:translate(-50%,-50%) scale(1.08) rotate(5deg)}}
@keyframes magicInfoFloatLuxury{0%{opacity:0;transform:translate(-50%,16px) scale(.78)}14%{opacity:1;transform:translate(-50%,0) scale(1.03)}72%{opacity:1;transform:translate(-50%,-12px) scale(1)}100%{opacity:0;transform:translate(-50%,-35px) scale(.93)}}
@keyframes magicBeamGrow{0%{opacity:0;transform:scaleX(0)}18%{opacity:1}60%{transform:scaleX(1);opacity:1}100%{transform:scaleX(1);opacity:0}}
@keyframes magicLinkTravel{0%{left:0%;opacity:0;transform:translate(-50%,calc(-50% + var(--y,0px))) scale(.45)}12%{opacity:1}72%{opacity:1}100%{left:100%;opacity:0;transform:translate(-50%,calc(-50% + var(--y,0px))) scale(1.25)}}
@keyframes magicBurstRing{0%{opacity:0;transform:scale(.18) rotate(0deg)}20%{opacity:1}72%{opacity:.86}100%{opacity:0;transform:scale(1.34) rotate(155deg)}}
@keyframes magicBurstIcon{0%{opacity:0;transform:scale(.3) rotate(-18deg)}22%{opacity:1;transform:scale(1.18) rotate(6deg)}72%{opacity:1;transform:scale(.96) rotate(-3deg)}100%{opacity:0;transform:scale(1.28) rotate(8deg)}}
@keyframes magicCasterGesture{0%,100%{transform:translateY(0) rotate(0)}45%{transform:translateY(-6px) rotate(-2deg)}70%{transform:translateY(-3px) rotate(2deg)}}
@keyframes magicCasterSpark{0%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotate(0)}22%{opacity:1}100%{opacity:0;transform:translate(-50%,-105%) scale(1.5) rotate(135deg)}}

@media (max-width:700px){
    .magic-player-aura{width:190px !important;height:258px !important;}
    .magic-cast-effect{min-width:140px !important;max-width:205px !important;}
    .magic-target-burst{width:160px;height:160px;}
}

/* ============================================================
   LTS 大厅界面重排试验版 v1
   仅重排入口 / 图标 / 名称 / 布局，不改变任何功能 ID 与业务逻辑
   ============================================================ */
:root{
    --remix-navy:#294c7a;
    --remix-navy-deep:#1e385d;
    --remix-blue:#5f91d6;
    --remix-blue-soft:#eaf3ff;
    --remix-cream:#fffaf0;
    --remix-gold:#e3a92a;
    --remix-purple:#6b51a6;
    --remix-line:#c6d7ee;
    --remix-ink:#24334d;
}
body{
    background:
        radial-gradient(circle at 50% -120px, rgba(140,184,244,.34), transparent 420px),
        linear-gradient(180deg,#eef5ff 0%,#f8f3ff 52%,#eef3fb 100%);
    padding:16px;
}
.main-container.ui-remix-v1{
    max-width:1280px;
    margin:0 auto;
    display:grid;
    grid-template-columns:156px minmax(0,1fr);
    align-items:stretch;
    border:2px solid #6e99cf;
    border-radius:18px;
    overflow:hidden;
    background:#f8fbff;
    box-shadow:0 16px 42px rgba(45,73,121,.20),0 2px 8px rgba(45,73,121,.12);
}

/* ----- 左侧功能导航 ----- */
.ui-remix-v1 .top-blue-bar.classic-side-panel{
    grid-column:1;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:7px;
    padding:14px 11px 12px;
    min-height:100%;
    background:
        radial-gradient(circle at 50% 0, rgba(255,255,255,.16), transparent 180px),
        linear-gradient(180deg,var(--remix-navy) 0%,var(--remix-navy-deep) 100%);
    border-right:1px solid rgba(255,255,255,.18);
    position:relative;
}
.ui-remix-v1 .side-brand{
    display:flex;
    align-items:center;
    gap:8px;
    padding:4px 3px 12px;
    margin-bottom:3px;
    border-bottom:1px solid rgba(255,255,255,.17);
}
.ui-remix-v1 .side-brand-mark{
    width:44px;height:44px;
    display:flex;align-items:center;justify-content:center;
    border-radius:13px;
    background:linear-gradient(180deg,#fff7ca,#ffcf55);
    color:#5e4210;
    font-size:17px;font-weight:900;letter-spacing:.8px;
    border:1px solid rgba(255,220,113,.78);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 12px rgba(13,31,58,.24);
}
.ui-remix-v1 .side-brand-copy{display:flex;flex-direction:column;color:#fff;line-height:1.1;min-width:0}
.ui-remix-v1 .side-brand-copy b{font-size:15px;white-space:nowrap}
.ui-remix-v1 .side-brand-copy small{font-size:8px;letter-spacing:1.3px;color:#bcd4f2;margin-top:4px;white-space:nowrap}
.ui-remix-v1 .side-section-title{
    margin:6px 4px 1px;
    color:#a9c7ed;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
}
.ui-remix-v1 .top-right-group.side-nav-group,
.ui-remix-v1 .side-room-actions{
    margin:0;
    display:flex;
    flex-direction:column;
    gap:7px;
    align-items:stretch;
}
.ui-remix-v1 .side-nav-item,
.ui-remix-v1 .top-blue-btn.side-nav-item,
.ui-remix-v1 .top-right-btn.side-nav-item,
.ui-remix-v1 .sub-btn.side-nav-item,
.ui-remix-v1 .chat-small-btn.side-nav-item{
    width:100%;
    min-height:42px;
    padding:7px 8px;
    border-radius:11px;
    border:1px solid rgba(255,255,255,.20);
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    color:#f8fbff;
    background:rgba(255,255,255,.075);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 2px 5px rgba(9,25,48,.10);
    text-shadow:none;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
    transition:transform .14s ease,background .14s ease,border-color .14s ease;
}
.ui-remix-v1 .side-nav-item:hover{
    transform:translateX(2px);
    background:rgba(255,255,255,.15);
    border-color:rgba(255,255,255,.35);
    filter:none;
}
.ui-remix-v1 .side-nav-icon{
    width:25px;height:25px;
    flex:0 0 25px;
    border-radius:8px;
    display:flex;align-items:center;justify-content:center;
    color:#fff6ce;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.12);
    font-size:15px;
    font-weight:900;
}
.ui-remix-v1 .side-panel-spacer{flex:1 1 24px;min-height:18px}
.ui-remix-v1 .side-system-item{background:rgba(190,218,255,.10)!important}
.ui-remix-v1 .side-exit-item{background:rgba(255,129,129,.12)!important;color:#ffe6e6!important}

/* VIP徽章改成侧栏入口 */
.ui-remix-v1 .vip-badge.side-vip-entry,
.ui-remix-v1 .vip-rank-badge.side-vip-entry,
.ui-remix-v1 .vip-rank-badge.side-vip-entry.elite,
.ui-remix-v1 .vip-rank-badge.side-vip-entry.empty{
    width:100%;
    height:48px;
    min-height:48px;
    padding:7px 8px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:7px;
    border-radius:12px;
    border:1px solid rgba(255,226,123,.58);
    background:linear-gradient(135deg,rgba(255,219,93,.25),rgba(255,164,59,.12));
    color:#fff3bd;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 3px 10px rgba(14,25,47,.18);
    opacity:1;
    transform:none;
}
.ui-remix-v1 .vip-rank-badge.side-vip-entry::before,
.ui-remix-v1 .vip-rank-badge.side-vip-entry::after{display:none!important}
.ui-remix-v1 .vip-rank-badge.side-vip-entry .side-nav-icon{color:#ffe579;background:rgba(255,213,79,.14)}
.ui-remix-v1 .side-nav-label{font-size:12px;font-weight:800;white-space:nowrap}
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-gem{
    width:auto!important;height:auto!important;flex:0 0 auto!important;
    font-size:11px!important;margin-left:auto;color:#ffe98e!important;transform:none!important;
    background:none!important;filter:none!important;text-shadow:none!important;
}
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    position:static!important;
    width:20px!important;height:20px!important;
    min-width:20px!important;
    display:flex!important;
    align-items:center;justify-content:center;
    border-radius:50%;
    font-size:10px!important;font-weight:900!important;
    color:#5d3d00!important;background:#ffe689!important;border:1px solid #d7a92f!important;
    box-shadow:none!important;
}

/* ----- 右侧主舞台 ----- */
.ui-remix-v1 .classic-main-stage{
    grid-column:2;
    min-width:0;
    display:flex;
    flex-direction:column;
    background:linear-gradient(180deg,#f9fbff 0%,#f6f8fc 100%);
}
.ui-remix-v1 .room-map-panel{
    padding:13px 14px 12px;
    background:linear-gradient(180deg,#ffffff 0%,#f4f7fb 100%);
    border-bottom:1px solid #c9d9ee;
}
.ui-remix-v1 .room-map-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}
.ui-remix-v1 .room-map-kicker{
    font-size:9px;font-weight:900;letter-spacing:1.8px;color:#82a0c8;margin-bottom:2px;
}
.ui-remix-v1 .room-map-title{
    font-size:18px;font-weight:900;color:#274a79;letter-spacing:.5px;
}
.ui-remix-v1 .sub-bar{
    padding:6px 8px 6px 12px;
    border:1px solid #c7d8ee;
    border-radius:12px;
    background:#eef5ff;
    min-width:250px;
    box-shadow:inset 0 1px 0 #fff;
}
.ui-remix-v1 .sub-bar-text{font-size:12px;color:#60728b;font-weight:700}
.ui-remix-v1 .sub-bar-text span{color:#274a79;font-size:13px;margin-left:4px}
.ui-remix-v1 .sub-right-buttons{gap:6px}
.ui-remix-v1 .sub-btn.lobby-join{
    padding:5px 10px;
    border-radius:9px;
    font-size:11px;
    background:#fff;
    color:#315f98;
    box-shadow:none;
}

/* 房间由“一排按钮”改为房间地图网格 */
.ui-remix-v1 .room-tab-bar{
    padding:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    background:transparent;
    border:0;
    overflow:visible;
}
.ui-remix-v1 .room-tab{
    min-height:38px;
    padding:7px 9px 7px 30px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    text-align:left;
    border-radius:10px;
    border:1px solid #c4d5ea;
    background:linear-gradient(180deg,#fff,#eef4fc);
    color:#334b68;
    font-size:11px;
    font-weight:800;
    box-shadow:0 2px 4px rgba(60,90,130,.07),inset 0 1px 0 #fff;
}
.ui-remix-v1 .room-tab::before{
    left:11px;width:9px;height:9px;
    background:radial-gradient(circle at 35% 35%,#fff 0 18%,#99c4ff 40%,#5d8fcf 100%);
    box-shadow:0 0 0 3px rgba(103,151,213,.10);
}
.ui-remix-v1 .room-tab:hover{transform:translateY(-1px);filter:none;border-color:#8dafda}
.ui-remix-v1 .room-tab.active{
    background:linear-gradient(180deg,#fff7cc,#ffe178);
    border-color:#d7ad41;
    color:#6c4a00;
    box-shadow:0 3px 8px rgba(191,145,30,.16),inset 0 1px 0 rgba(255,255,255,.9);
}

/* 场景改成主舞台卡片 */
.ui-remix-v1 .scene-wrap{
    margin:12px 14px 0;
    width:auto;
    height:610px;
    border:1px solid #6f94c6;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(42,73,115,.14),inset 0 0 0 3px rgba(255,255,255,.45);
    background:#dfeafb;
}
.ui-remix-v1 #scene{background-size:cover;background-position:center center}
.ui-remix-v1 .scene-corner-label{
    position:absolute;
    left:12px;top:12px;
    z-index:120;
    display:flex;align-items:center;gap:7px;
    padding:5px 9px;
    border-radius:9px;
    color:#fff;
    background:rgba(27,55,91,.78);
    border:1px solid rgba(255,255,255,.25);
    box-shadow:0 2px 8px rgba(0,0,0,.16);
    pointer-events:none;
    backdrop-filter:blur(4px);
}
.ui-remix-v1 .scene-corner-label span{
    font-size:8px;font-weight:900;letter-spacing:1px;color:#ffdf73;
}
.ui-remix-v1 .scene-corner-label b{font-size:11px;letter-spacing:.2px}
.ui-remix-v1 .horn-list-container{top:47px;left:12px;right:12px}
.ui-remix-v1 .magic-bar-wrap{
    left:14px;right:14px;bottom:12px;height:12px;
    border-radius:8px;
    border:1px solid rgba(41,77,119,.55);
    background:rgba(227,235,245,.82);
    box-shadow:0 1px 4px rgba(22,54,94,.18);
}
.ui-remix-v1 .magic-label{top:-20px;color:#fff;background:rgba(42,68,102,.72);padding:2px 7px;border-radius:7px;font-size:10px}
.ui-remix-v1 .magic-max{top:-20px;color:#fff;background:rgba(42,68,102,.72);padding:2px 7px;border-radius:7px;font-size:10px}

/* 聊天区域变成独立控制台 */
.ui-remix-v1 .bottom-chat-area{
    margin:10px 14px 14px;
    padding:10px;
    border:1px solid #c8d7ea;
    border-radius:14px;
    background:linear-gradient(180deg,#fff 0%,#f1f5fb 100%);
    box-shadow:0 5px 14px rgba(55,84,121,.08);
}
.ui-remix-v1 .chat-top-row{gap:7px;margin-bottom:8px;min-height:31px}
.ui-remix-v1 .chat-title-block{
    display:flex;align-items:center;gap:6px;margin-right:3px;color:#2d496c;
}
.ui-remix-v1 .chat-title-block b{font-size:13px}
.ui-remix-v1 .chat-title-block small{font-size:8px;color:#9aacc1;letter-spacing:1px;margin-left:2px}
.ui-remix-v1 .chat-title-dot{width:8px;height:8px;border-radius:50%;background:#69c276;box-shadow:0 0 0 3px rgba(105,194,118,.14)}
.ui-remix-v1 .chat-small-btn{
    padding:5px 9px;
    border-radius:8px;
    border:1px solid #c7d5e6;
    background:#fff;
    color:#536a87;
    font-size:10px;
    font-weight:700;
}
.ui-remix-v1 #btnHorn.world-horn-btn{
    padding:5px 10px!important;
    border-radius:8px!important;
    font-size:10px!important;
    color:#765000!important;
    background:linear-gradient(180deg,#fff5c8,#ffe17a)!important;
    border:1px solid #dfbc55!important;
    box-shadow:none!important;
}
.ui-remix-v1 .chat-online-tip{font-size:9px;color:#91a3ba;white-space:nowrap}
.ui-remix-v1 .chat-box{
    height:105px;
    border:1px solid #d2ddea;
    border-radius:10px;
    background:#fbfdff;
    box-shadow:inset 0 1px 3px rgba(45,72,105,.05);
}
.ui-remix-v1 .chat-input-row{gap:8px;margin-top:8px}
.ui-remix-v1 .mini-tool-group{
    order:0;
    gap:5px;
    padding:3px;
    border:1px solid #d0dceb;
    border-radius:11px;
    background:#eef3f9;
}
.ui-remix-v1 .mini-tool{
    width:44px;height:34px;
    border-radius:8px;
    border:1px solid transparent;
    background:transparent;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:0;
    color:#425c7d;
}
.ui-remix-v1 .mini-tool:hover,.ui-remix-v1 .mini-tool.active{background:#fff;border-color:#c5d5e8}
.ui-remix-v1 .mini-tool-icon{font-size:13px;font-weight:900;line-height:13px}
.ui-remix-v1 .mini-tool small{font-size:8px;line-height:10px;font-weight:700;margin-top:1px}
.ui-remix-v1 #btnBell.horn-mode-active{
    background:#fff0b5!important;border-color:#d8ac31!important;color:#775100!important;
    box-shadow:0 0 0 2px rgba(226,181,58,.14)!important;
}
.ui-remix-v1 .chat-input{
    order:1;
    min-width:0;
    padding:9px 13px;
    border-radius:10px;
    border:1px solid #c7d4e5;
    background:#fff;
    font-size:13px;
}
.ui-remix-v1 .send-button{
    order:2;
    min-width:76px;
    height:38px;
    padding:0 16px;
    border-radius:10px;
    background:linear-gradient(180deg,#5e95dd,#3d76c1);
    color:#fff;
    font-weight:800;
    box-shadow:0 3px 7px rgba(52,101,166,.20),inset 0 1px 0 rgba(255,255,255,.25);
}
.ui-remix-v1 .send-button.horn-mode-send{background:linear-gradient(180deg,#f1bd42,#cf8e13)}

/* 新布局中弹窗遮罩仍覆盖全屏，不跟侧栏层级冲突 */
.ui-remix-v1 + .mask-layer{z-index:9998}

/* 适配较窄屏：侧栏缩成顶部工具区 */
@media (max-width:900px){
    body{padding:6px}
    .main-container.ui-remix-v1{display:block;border-radius:12px}
    .ui-remix-v1 .top-blue-bar.classic-side-panel{
        min-height:0;
        display:grid;
        grid-template-columns:1fr repeat(4,minmax(78px,auto));
        align-items:center;
        gap:6px;
        padding:8px;
    }
    .ui-remix-v1 .side-brand{border:0;margin:0;padding:0}
    .ui-remix-v1 .side-brand-copy small,.ui-remix-v1 .side-section-title,.ui-remix-v1 .side-panel-spacer{display:none}
    .ui-remix-v1 .top-right-group.side-nav-group,.ui-remix-v1 .side-room-actions{display:contents}
    .ui-remix-v1 .side-nav-item,.ui-remix-v1 .vip-badge.side-vip-entry{min-height:34px;height:34px;padding:4px 7px;justify-content:center}
    .ui-remix-v1 .side-nav-icon{width:20px;height:20px;flex-basis:20px;font-size:12px}
    .ui-remix-v1 .side-system-item,.ui-remix-v1 .side-exit-item{display:none!important}
    .ui-remix-v1 .room-tab-bar{grid-template-columns:repeat(3,1fr)}
    .ui-remix-v1 .scene-wrap{height:560px}
}
@media (max-width:640px){
    .ui-remix-v1 .top-blue-bar.classic-side-panel{grid-template-columns:1fr 1fr 1fr}
    .ui-remix-v1 .side-brand{grid-column:1 / -1}
    .ui-remix-v1 .room-map-head{align-items:flex-start;flex-direction:column}
    .ui-remix-v1 .sub-bar{width:100%;min-width:0}
    .ui-remix-v1 .room-tab-bar{grid-template-columns:repeat(2,1fr)}
    .ui-remix-v1 .scene-wrap{height:500px;margin-left:8px;margin-right:8px}
    .ui-remix-v1 .bottom-chat-area{margin-left:8px;margin-right:8px}
    .ui-remix-v1 .chat-title-block small,.ui-remix-v1 .chat-online-tip{display:none}
    .ui-remix-v1 .mini-tool-group{order:2;width:100%}
    .ui-remix-v1 .chat-input-row{flex-wrap:wrap}
    .ui-remix-v1 .chat-input{flex:1 1 calc(100% - 84px)}
}

/* =====================================================================
   2026-09-03 V2：大厅细化 / 原VIP星形图标 / 玫瑰金身份 / VIP详情重做
   仅改视觉与展示，不改变房间、聊天、换装、VIP、钻石等业务逻辑。
   ===================================================================== */

/* 左栏稍微收窄，并换成更沉稳的蓝靛色 */
.main-container.ui-remix-v1{
    grid-template-columns:144px minmax(0,1fr) !important;
}
.ui-remix-v1 .top-blue-bar.classic-side-panel{
    padding:12px 9px 11px !important;
    gap:6px !important;
    background:
        radial-gradient(circle at 32% 0,rgba(115,179,255,.22),transparent 165px),
        linear-gradient(180deg,#294f7d 0%,#1d3e68 52%,#17355c 100%) !important;
}
.ui-remix-v1 .side-brand{
    gap:7px !important;
    padding:3px 2px 10px !important;
}
.ui-remix-v1 .side-brand-mark{
    width:40px !important;height:40px !important;border-radius:11px !important;
    background:linear-gradient(145deg,#fff7cf 0%,#ffd969 55%,#eab343 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -2px 4px rgba(122,76,0,.12),0 4px 10px rgba(8,25,48,.25) !important;
}
.ui-remix-v1 .side-brand-copy b{font-size:14px !important}
.ui-remix-v1 .side-brand-copy small{font-size:7px !important;letter-spacing:1.05px !important}
.ui-remix-v1 .side-section-title{margin:5px 4px 1px !important;color:#b8d1ee !important}
.ui-remix-v1 .side-nav-item,
.ui-remix-v1 .top-blue-btn.side-nav-item,
.ui-remix-v1 .top-right-btn.side-nav-item,
.ui-remix-v1 .sub-btn.side-nav-item,
.ui-remix-v1 .chat-small-btn.side-nav-item{
    min-height:39px !important;
    padding:6px 7px !important;
    gap:7px !important;
    border-radius:10px !important;
    border-color:rgba(208,229,255,.22) !important;
    background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.055)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(7,24,47,.16),0 2px 6px rgba(9,25,48,.14) !important;
}
.ui-remix-v1 .side-nav-item:hover{
    background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.09)) !important;
    border-color:rgba(231,242,255,.40) !important;
}
.ui-remix-v1 .side-nav-icon{
    width:24px !important;height:24px !important;flex:0 0 24px !important;
    border-radius:8px !important;
    font-size:13px !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.34) !important;
    background:linear-gradient(145deg,#6f91bd,#385f91) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -2px 4px rgba(10,29,55,.20),0 2px 5px rgba(3,18,39,.24) !important;
    text-shadow:0 1px 2px rgba(0,0,0,.28) !important;
}
/* 各入口使用不同的宝石色，不改按钮ID与逻辑 */
.ui-remix-v1 #btnProfile .side-nav-icon{background:linear-gradient(145deg,#f0c56d,#a76c25)!important}
.ui-remix-v1 #btnDress .side-nav-icon{background:linear-gradient(145deg,#8cd4ef,#3d86b3)!important}
.ui-remix-v1 #btnTimeBook .side-nav-icon{background:linear-gradient(145deg,#e79ab8,#aa5479)!important}
.ui-remix-v1 #btnPlayerInfo .side-nav-icon{background:linear-gradient(145deg,#b3a1f2,#6552aa)!important}
.ui-remix-v1 #btnMagic .side-nav-icon{background:linear-gradient(145deg,#73d4ca,#2d8e88)!important}
.ui-remix-v1 #btnFriend .side-nav-icon{background:linear-gradient(145deg,#ef9f9f,#ad5353)!important}
.ui-remix-v1 #btnSetting .side-nav-icon{background:linear-gradient(145deg,#9fb2ca,#526b89)!important}
.ui-remix-v1 #btnExitRoom .side-nav-icon{background:linear-gradient(145deg,#dc8a8a,#964242)!important}

/* 尊享等级：恢复原来的 VIP 星形钻石图标 */
.ui-remix-v1 .vip-badge.side-vip-entry,
.ui-remix-v1 .vip-rank-badge.side-vip-entry,
.ui-remix-v1 .vip-rank-badge.side-vip-entry.elite,
.ui-remix-v1 .vip-rank-badge.side-vip-entry.empty{
    height:44px !important;min-height:44px !important;padding:5px 6px !important;gap:6px !important;
    border-radius:11px !important;
    background:linear-gradient(135deg,rgba(247,200,118,.24),rgba(210,111,148,.12)) !important;
    border-color:rgba(255,218,156,.58) !important;
}
.ui-remix-v1 .side-nav-vip-icon{
    width:31px !important;height:31px !important;flex:0 0 31px !important;padding:0 !important;
    border:0 !important;background:transparent !important;box-shadow:none !important;overflow:visible !important;
}
.ui-remix-v1 .side-nav-vip-icon img{
    display:block;width:31px;height:31px;object-fit:contain;
    filter:drop-shadow(0 2px 3px rgba(0,0,0,.28)) drop-shadow(0 0 5px rgba(255,207,132,.26));
}
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-gem{display:none !important}
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-remix-v1 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    margin-left:auto !important;
    width:19px !important;height:19px !important;min-width:19px !important;
    color:#7b4318 !important;
    background:linear-gradient(180deg,#fff1cd,#e9b468) !important;
    border-color:#c78a48 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 4px rgba(53,22,4,.18) !important;
}

/* 顶部房间区整体压低、收窄，保留房间地图逻辑 */
.ui-remix-v1 .room-map-panel{
    margin:9px 12px 0 !important;
    padding:7px 9px 8px !important;
    border:1px solid #c8d7ea !important;
    border-radius:12px !important;
    background:linear-gradient(180deg,#fbfdff,#f0f5fb) !important;
    box-shadow:0 3px 9px rgba(48,78,117,.07),inset 0 1px 0 #fff !important;
}
.ui-remix-v1 .room-map-head{gap:8px !important;margin-bottom:6px !important}
.ui-remix-v1 .room-map-kicker{font-size:7px !important;letter-spacing:1.25px !important;margin-bottom:0 !important}
.ui-remix-v1 .room-map-title{font-size:14px !important;line-height:18px !important}
.ui-remix-v1 .sub-bar{
    min-width:220px !important;padding:4px 6px 4px 9px !important;border-radius:9px !important;
}
.ui-remix-v1 .sub-bar-text{font-size:10px !important}
.ui-remix-v1 .sub-bar-text span{font-size:11px !important}
.ui-remix-v1 .sub-btn.lobby-join{padding:4px 8px !important;font-size:10px !important;border-radius:7px !important}
.ui-remix-v1 .room-tab-bar{gap:5px !important}
.ui-remix-v1 .room-tab{
    min-height:30px !important;
    padding:4px 7px 4px 25px !important;
    border-radius:8px !important;
    font-size:10px !important;
}
.ui-remix-v1 .room-tab::before{left:9px !important;width:7px !important;height:7px !important;box-shadow:0 0 0 2px rgba(103,151,213,.10) !important}

/* 主场景左上角 LIVE / 房间场景 已从HTML删除；保底隐藏旧缓存 */
.ui-remix-v1 .scene-corner-label{display:none !important}
.ui-remix-v1 .horn-list-container{top:12px !important}

/* 尊享等级弹窗也使用原VIP星形图 */
.rank-big-emblem .rank-big-vip-icon{
    width:92px;height:92px;object-fit:contain;display:block;margin:0 auto 3px;
    filter:drop-shadow(0 5px 10px rgba(7,18,54,.36)) drop-shadow(0 0 10px rgba(255,198,123,.24));
}
.rank-big-emblem{height:auto !important;min-height:118px !important;padding-top:4px !important}
.rank-big-emblem b{margin-top:-7px !important;position:relative !important;z-index:2 !important}

/* ===== VIP详细介绍 V2：海军蓝 + 香槟金 + 玫瑰金 ===== */
.vip-guide-modal.vip-guide-v2{
    width:min(720px,calc(100vw - 38px)) !important;
    max-height:min(760px,calc(100vh - 38px)) !important;
    border:1px solid #7890ad !important;
    border-radius:18px !important;
    background:#eef3f8 !important;
    box-shadow:0 24px 56px rgba(18,35,58,.34),0 2px 8px rgba(18,35,58,.18) !important;
}
.vip-guide-v2 .vip-guide-v2-head{
    padding:12px 15px !important;
    background:linear-gradient(115deg,#183554 0%,#244f74 56%,#5b596a 100%) !important;
    color:#fff !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
}
.vip-guide-head-copy{display:flex;flex-direction:column;line-height:1.08}
.vip-guide-head-copy b{font-size:15px;letter-spacing:.3px}
.vip-guide-head-kicker{font-size:7px;letter-spacing:2px;color:#c3d9ee;margin-bottom:4px}
.vip-guide-v2 .vip-guide-head button{
    padding:6px 12px !important;border-radius:9px !important;
    border:1px solid rgba(255,225,184,.55) !important;
    background:linear-gradient(180deg,#fff7e6,#edd4ad) !important;color:#72502b !important;
    box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(0,0,0,.14) !important;
}
.vip-guide-v2 .vip-guide-v2-body{
    padding:13px 14px 16px !important;
    max-height:min(700px,calc(100vh - 92px)) !important;
    background:
        radial-gradient(circle at 92% 2%,rgba(210,126,146,.14),transparent 230px),
        linear-gradient(180deg,#f6f9fc 0%,#edf2f7 100%) !important;
}
.vip-guide-v2-hero{
    display:grid;grid-template-columns:76px minmax(0,1fr) 102px;align-items:center;gap:13px;
    padding:13px;border-radius:15px;
    background:linear-gradient(120deg,#213e5e 0%,#2b587a 65%,#705c69 100%);
    border:1px solid #385e7f;box-shadow:0 8px 18px rgba(25,53,78,.15),inset 0 1px 0 rgba(255,255,255,.10);
}
.vip-guide-v2-emblem{width:70px;height:70px;display:flex;align-items:center;justify-content:center}
.vip-guide-v2-emblem img{width:68px;height:68px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.28))}
.vip-guide-v2 .vip-guide-main-title{font-size:23px !important;color:#fff !important;margin:0 0 4px !important;letter-spacing:.4px}
.vip-guide-v2 .vip-guide-subtitle{font-size:11px !important;line-height:1.5 !important;color:#d3e3ef !important;margin:0 !important}
.vip-guide-v2-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.vip-guide-v2-tags span{font-size:9px;font-weight:800;color:#f9e6c2;padding:3px 7px;border-radius:999px;border:1px solid rgba(245,216,170,.30);background:rgba(255,255,255,.08)}
.vip-guide-v2-price{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(160deg,#f6e1bb,#d5a66d 58%,#b77a63);border:1px solid #f6dbb3;color:#613d2c;box-shadow:inset 0 1px 0 rgba(255,255,255,.76)}
.vip-guide-v2-price small{font-size:9px;font-weight:800;opacity:.78}
.vip-guide-v2-price b{font-size:25px;line-height:1.05;margin:3px 0}
.vip-guide-v2-price span{font-size:8px;font-weight:700;opacity:.72}
.vip-guide-v2-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.vip-benefit-card{position:relative;min-height:82px;padding:10px 10px 9px 39px;border-radius:12px;background:#fff;border:1px solid #cbd8e5;box-shadow:0 3px 10px rgba(35,61,91,.055)}
.vip-benefit-card i{position:absolute;left:9px;top:10px;width:23px;height:23px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:13px;font-weight:900;color:#fff;background:linear-gradient(145deg,#5b86ad,#294f74);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 2px 5px rgba(23,50,75,.18)}
.vip-benefit-card b{display:block;color:#284664;font-size:11px;margin-bottom:4px}
.vip-benefit-card span{display:block;color:#75869a;font-size:9px;line-height:1.5}
.vip-benefit-card.rose{border-color:#d7aaa5;background:linear-gradient(145deg,#fff,#fff3ef)}
.vip-benefit-card.rose i{background:linear-gradient(145deg,#e7b8ad,#a95f5c)}
.vip-benefit-card.rose b{color:#9c5552}
.vip-guide-v2-section{margin-top:10px;padding:11px;border-radius:13px;background:#fff;border:1px solid #ccd9e5;box-shadow:0 3px 10px rgba(35,61,91,.045)}
.vip-guide-v2-section-head{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;margin-bottom:9px}
.vip-guide-v2-section-head>span{font-size:7px;letter-spacing:1.5px;color:#9aaaba;font-weight:900}
.vip-guide-v2-section-head>b{font-size:13px;color:#294863}
.vip-guide-v2-section-head>small{font-size:9px;color:#8797a8}
.vip-level-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.vip-level-node{position:relative;padding:8px 4px 7px;border-radius:9px;text-align:center;background:linear-gradient(180deg,#f4f7fa,#e8eef4);border:1px solid #ced9e4}
.vip-level-node b{display:block;font-size:11px;color:#315774}
.vip-level-node span{display:block;font-size:9px;color:#7d8d9f;margin-top:2px}
.vip-level-node.rose{background:linear-gradient(145deg,#fff1ed,#e9b8ad);border-color:#ce8d85;box-shadow:0 0 0 2px rgba(206,141,133,.08)}
.vip-level-node.rose b{color:#8e4c4a}
.vip-level-node.rose em{position:absolute;top:-7px;right:3px;font-style:normal;font-size:7px;font-weight:900;padding:2px 5px;border-radius:999px;color:#fff;background:#b66b65;box-shadow:0 2px 4px rgba(112,49,46,.18)}
.vip-guide-v2-note{margin-top:7px;font-size:9px;color:#8494a5;line-height:1.45}
.vip-daily-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.vip-daily-rule-grid>div{display:grid;grid-template-columns:70px repeat(3,1fr);align-items:center;gap:5px;padding:8px;border-radius:10px;background:#f2f6fa;border:1px solid #d5e0ea}
.vip-daily-rule-grid b{font-size:11px;color:#315470}
.vip-daily-rule-grid span{font-size:9px;color:#6f8194;text-align:center}
.vip-guide-v2 .vip-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important}
.vip-guide-v2 .vip-showcase-card{padding:9px !important;border-radius:11px !important;border:1px solid #cfdae6 !important;background:linear-gradient(180deg,#fff,#f3f6f9) !important;box-shadow:none !important}
.vip-guide-v2 .vip-showcase-thumb{height:90px !important;border-radius:9px !important;background:#eef3f7 !important;border-color:#d7e0e9 !important}
.vip-guide-v2 .vip-showcase-thumb img{width:75px !important;height:86px !important}
.vip-guide-v2 .vip-showcase-name{font-size:11px !important;color:#2f516f !important;margin-top:6px !important}
.vip-guide-v2 .vip-showcase-desc{font-size:9px !important;color:#7b8a9b !important;margin-top:3px !important}
.vip-guide-v2 .vip-showcase-lock{font-size:8px !important;padding:3px 6px !important;margin-top:5px !important;background:#edf3f8 !important;border-color:#cbd8e4 !important;color:#55708b !important}
.vip-guide-v2-footer{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:13px;background:linear-gradient(110deg,#223f5e,#365f78);border:1px solid #365d79;color:#fff}
.vip-guide-v2-footer>div{display:flex;flex-direction:column;gap:2px}
.vip-guide-v2-footer span{font-size:8px;letter-spacing:1.2px;color:#b9cfdf}
.vip-guide-v2-footer b{font-size:12px}
.vip-guide-v2-footer small{font-size:9px;color:#d7e3ec}
.vip-guide-v2 .vip-plan-open-btn.prime{width:auto !important;height:34px !important;margin:0 !important;padding:0 15px !important;border-radius:9px !important;font-size:11px !important;background:linear-gradient(180deg,#f1d3a3,#c9945c) !important;color:#593923 !important;border:1px solid #f2d7b0 !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 3px 7px rgba(0,0,0,.14) !important}

/* ===== 成长值 >= 2000：选择玩家列表黄金闪动 ===== */
.room-player-picker-item.rose-gold-player{
    position:relative;overflow:hidden;
    border-color:#c98279 !important;
    background:linear-gradient(115deg,#fff8f4 0%,#f4c9bf 45%,#d89a8e 72%,#fff2ed 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 4px 13px rgba(158,83,74,.20),0 0 0 1px rgba(255,221,210,.52) !important;
    animation:roseGoldPickerPulse 1.65s ease-in-out infinite;
}
.room-player-picker-item.rose-gold-player::after{
    content:"";position:absolute;top:-35%;bottom:-35%;width:26px;left:-35px;pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);
    transform:rotate(18deg);animation:roseGoldPickerSweep 2.15s ease-in-out infinite;
}
.room-player-picker-item.rose-gold-player .room-player-picker-avatar{border-color:#c57d75 !important;box-shadow:0 0 0 2px rgba(255,239,233,.72),0 3px 9px rgba(139,70,64,.22) !important}
.room-player-picker-item.rose-gold-player .room-player-picker-name{color:#6c3736 !important;text-shadow:0 1px 0 rgba(255,255,255,.46)}
.room-player-picker-rose{flex:0 0 auto;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:900;color:#fff;background:linear-gradient(180deg,#cf887e,#9c514d);border:1px solid rgba(125,58,54,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 2px 5px rgba(116,55,51,.18)}
.room-player-picker-item.rose-gold-player .room-player-picker-vip{color:#75413a;background:linear-gradient(180deg,#fff1df,#ddb08d);border-color:#bb7768}
@keyframes roseGoldPickerPulse{0%,100%{filter:brightness(1);box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 4px 13px rgba(158,83,74,.18),0 0 0 1px rgba(255,221,210,.50)}50%{filter:brightness(1.055);box-shadow:inset 0 1px 0 #fff,0 5px 16px rgba(174,88,78,.27),0 0 9px rgba(236,164,149,.35)}}
@keyframes roseGoldPickerSweep{0%,32%{left:-38px;opacity:0}40%{opacity:.9}66%{left:calc(100% + 18px);opacity:.72}74%,100%{left:calc(100% + 18px);opacity:0}}

/* ===== 满2000后的个人资料 / 玩家资料玫瑰金主题 ===== */
#profileModal.rose-gold-profile,
#playerInfoModal.rose-gold-profile{
    border-color:#b66f68 !important;
    background:linear-gradient(180deg,#fffaf7,#f7ded7) !important;
    box-shadow:0 22px 52px rgba(113,56,52,.28),0 0 0 1px rgba(255,228,220,.72) !important;
}
#profileModal.rose-gold-profile .profile-custom-head,
#playerInfoModal.rose-gold-profile .profile-modal-head{
    background:linear-gradient(110deg,#8f514f 0%,#bd7a70 47%,#dca694 100%) !important;
    border-bottom-color:#c7867d !important;color:#fff !important;
}
#profileModal.rose-gold-profile .profile-custom-title,
#playerInfoModal.rose-gold-profile .profile-modal-title{color:#fff !important;text-shadow:0 1px 2px rgba(92,40,38,.28)}
#profileModal.rose-gold-profile .profile-custom-title::after,
#playerInfoModal.rose-gold-profile .profile-modal-title::after{background:linear-gradient(90deg,#ffe9dc,#f3c6b5) !important}
#profileModal.rose-gold-profile .profile-custom-body,
#playerInfoModal.rose-gold-profile .player-sheet-body{background:linear-gradient(180deg,#fffaf7,#f8e6df) !important}
#profileModal.rose-gold-profile .profile-hero-name,
#playerInfoModal.rose-gold-profile .player-sheet-name-line>span:first-child{color:#9b5752 !important}
#profileModal.rose-gold-profile .profile-avatar-circle,
#playerInfoModal.rose-gold-profile .player-sheet-avatar{border-color:#c27d73 !important;box-shadow:0 0 0 4px #fff2ed,0 5px 13px rgba(135,67,61,.20) !important}
#profileModal.rose-gold-profile .profile-plan-pill,
#playerInfoModal.rose-gold-profile .player-sheet-plan{background:linear-gradient(180deg,#f2c4b5,#d89483) !important;border-color:#bc7469 !important;color:#6d3734 !important}
#profileModal.rose-gold-profile .profile-menu-card,
#profileModal.rose-gold-profile .profile-stats-card,
#profileModal.rose-gold-profile .avatar-scroll-shell,
#playerInfoModal.rose-gold-profile .player-sheet-panel,
#playerInfoModal.rose-gold-profile .player-outfit-public-card{
    border-color:#deb2a8 !important;
    background:linear-gradient(180deg,#fffdfb,#f8e5df) !important;
    box-shadow:0 3px 10px rgba(133,69,63,.07) !important;
}
#profileModal.rose-gold-profile .profile-section-title,
#playerInfoModal.rose-gold-profile .player-sheet-label{color:#9c5a54 !important}
#profileModal.rose-gold-profile .profile-input,
#profileModal.rose-gold-profile .profile-select{border-color:#d7a49a !important;background:#fffaf8 !important}
#profileModal.rose-gold-profile .save-profile-btn{background:linear-gradient(180deg,#d99d8d,#ad665f) !important;box-shadow:0 4px 10px rgba(133,64,58,.18) !important}

@media (max-width:900px){
    .main-container.ui-remix-v1{grid-template-columns:1fr !important}
    .ui-remix-v1 .side-nav-vip-icon{width:24px !important;height:24px !important;flex-basis:24px !important}
    .ui-remix-v1 .side-nav-vip-icon img{width:24px;height:24px}
    .vip-guide-v2-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
    .vip-guide-v2-hero{grid-template-columns:60px 1fr}.vip-guide-v2-price{grid-column:1/-1;min-height:58px;flex-direction:row;gap:8px}
    .vip-guide-v2-emblem,.vip-guide-v2-emblem img{width:55px;height:55px}
    .vip-guide-v2-benefits{grid-template-columns:1fr}
    .vip-level-track{grid-template-columns:repeat(3,1fr)}
    .vip-daily-rule-grid{grid-template-columns:1fr}
    .vip-guide-v2 .vip-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}

/* =====================================================================
   2026-09-03 V3：老QQ秀房间布局试验版
   目标：顶部细工具栏 + 单行房间导航 + 超大场景 + 底部窄聊天区。
   只改变布局与视觉，所有原按钮 ID / 房间 / 聊天 / VIP / 换装 / 魔法逻辑不变。
   ===================================================================== */
:root{
    --oldqq-blue:#5278a6;
    --oldqq-blue-dark:#315779;
    --oldqq-blue-pale:#dceaf7;
    --oldqq-bar:#eef5fb;
    --oldqq-line:#8ba9c7;
    --oldqq-cream:#fff9e9;
    --oldqq-gold:#e8b83c;
    --oldqq-text:#243b55;
}
body{
    background:linear-gradient(180deg,#dfe9f4 0%,#f2f5f9 42%,#e6edf5 100%) !important;
    padding:8px !important;
}
.main-container.ui-oldqq-room-v3{
    width:min(1180px,calc(100vw - 16px));
    max-width:1180px;
    margin:0 auto;
    display:block;
    overflow:hidden;
    border:1px solid #6686a5;
    border-radius:5px;
    background:#dfe8f3;
    box-shadow:0 3px 12px rgba(30,58,88,.20);
}

/* ----- 顶部工具栏：把V2左栏横过来 ----- */
.ui-oldqq-room-v3 .top-blue-bar.classic-side-panel{
    height:49px;
    min-height:49px;
    padding:5px 7px;
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:5px;
    border:0;
    border-bottom:1px solid #274b70;
    background:
        linear-gradient(180deg,rgba(255,255,255,.20),transparent 45%),
        linear-gradient(180deg,#587eab 0%,#3c638d 52%,#315579 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -1px 0 rgba(0,0,0,.10);
}
.ui-oldqq-room-v3 .side-brand{
    flex:0 0 126px;
    height:38px;
    margin:0 4px 0 0;
    padding:0 9px 0 2px;
    display:flex;
    align-items:center;
    gap:7px;
    border:0;
    border-right:1px solid rgba(255,255,255,.22);
}
.ui-oldqq-room-v3 .side-brand-mark{
    width:36px;height:31px;
    display:flex;align-items:center;justify-content:center;
    border-radius:5px;
    color:#63410b;
    font-size:15px;font-weight:900;letter-spacing:.4px;
    background:linear-gradient(180deg,#fff8c9,#f4c84f 56%,#dda52a);
    border:1px solid #f9df83;
    box-shadow:inset 0 1px 0 #fff,0 1px 3px rgba(16,37,59,.28);
}
.ui-oldqq-room-v3 .side-brand-copy{display:flex;flex-direction:column;line-height:1.05;color:#fff}
.ui-oldqq-room-v3 .side-brand-copy b{font-size:13px;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.28)}
.ui-oldqq-room-v3 .side-brand-copy small{font-size:7px;letter-spacing:.8px;color:#d8e9f8;margin-top:3px;white-space:nowrap}
.ui-oldqq-room-v3 .side-section-title,
.ui-oldqq-room-v3 .side-panel-spacer{display:none!important}
.ui-oldqq-room-v3 .top-right-group.side-nav-group,
.ui-oldqq-room-v3 .side-room-actions{display:contents!important}
.ui-oldqq-room-v3 .side-nav-item,
.ui-oldqq-room-v3 .top-blue-btn.side-nav-item,
.ui-oldqq-room-v3 .top-right-btn.side-nav-item,
.ui-oldqq-room-v3 .sub-btn.side-nav-item,
.ui-oldqq-room-v3 .chat-small-btn.side-nav-item,
.ui-oldqq-room-v3 .vip-badge.side-vip-entry,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry.elite,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry.empty{
    width:auto!important;
    min-width:58px!important;
    height:35px!important;
    min-height:35px!important;
    flex:0 0 auto!important;
    padding:3px 7px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    border-radius:5px!important;
    color:#f7fbff!important;
    font-size:10px!important;
    font-weight:800!important;
    text-shadow:0 1px 1px rgba(0,0,0,.24)!important;
    border:1px solid rgba(220,238,255,.36)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.055))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 1px 2px rgba(12,31,53,.20)!important;
}
.ui-oldqq-room-v3 .side-nav-item:hover,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry:hover{
    transform:none!important;
    filter:brightness(1.08)!important;
    border-color:rgba(255,245,194,.72)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.25),rgba(255,225,134,.10))!important;
}
.ui-oldqq-room-v3 .side-nav-icon{
    width:19px!important;height:19px!important;flex:0 0 19px!important;
    border-radius:4px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    font-size:11px!important;font-weight:900!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.34)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 1px 2px rgba(0,0,0,.18)!important;
}
.ui-oldqq-room-v3 #btnProfile .side-nav-icon{background:linear-gradient(180deg,#f2ce69,#b57926)!important}
.ui-oldqq-room-v3 #btnDress .side-nav-icon{background:linear-gradient(180deg,#7dcce9,#367fae)!important}
.ui-oldqq-room-v3 #btnTimeBook .side-nav-icon{background:linear-gradient(180deg,#e99bb8,#a54f77)!important}
.ui-oldqq-room-v3 #btnPlayerInfo .side-nav-icon{background:linear-gradient(180deg,#ae9ae8,#6552a6)!important}
.ui-oldqq-room-v3 #btnMagic .side-nav-icon{background:linear-gradient(180deg,#69d3c9,#2d8b85)!important}
.ui-oldqq-room-v3 #btnFriend .side-nav-icon{background:linear-gradient(180deg,#ef9c9c,#aa5050)!important}
.ui-oldqq-room-v3 #btnSetting .side-nav-icon{background:linear-gradient(180deg,#a8bad0,#536b86)!important}
.ui-oldqq-room-v3 #btnExitRoom .side-nav-icon{background:linear-gradient(180deg,#e08c87,#9b4743)!important}
.ui-oldqq-room-v3 .side-system-item{margin-left:auto!important}
.ui-oldqq-room-v3 .side-exit-item{color:#ffe7e3!important}

/* VIP入口保留用户原来的星形V图标 */
.ui-oldqq-room-v3 .vip-badge.side-vip-entry,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry.elite,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry.empty{
    min-width:66px!important;
    border-color:rgba(255,225,134,.58)!important;
    background:linear-gradient(180deg,rgba(255,220,115,.24),rgba(217,137,62,.10))!important;
}
.ui-oldqq-room-v3 .side-nav-vip-icon{
    width:25px!important;height:25px!important;flex:0 0 25px!important;
    padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
.ui-oldqq-room-v3 .side-nav-vip-icon img{width:25px;height:25px;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.32))}
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry::before,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry::after,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry .vip-rank-gem{display:none!important}
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-oldqq-room-v3 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    position:static!important;width:17px!important;height:17px!important;min-width:17px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    margin-left:0!important;border-radius:50%!important;font-size:9px!important;font-weight:900!important;
    color:#6d460c!important;background:#ffe9a5!important;border:1px solid #d3a23e!important;box-shadow:none!important;
}
.ui-oldqq-room-v3 .side-nav-label{font-size:10px!important;font-weight:900!important;white-space:nowrap!important}

/* ----- 主区域 ----- */
.ui-oldqq-room-v3 .classic-main-stage{
    display:flex;
    flex-direction:column;
    min-width:0;
    background:#dfe8f3;
}

/* 老式房间条：单行、薄、横向可滚动 */
.ui-oldqq-room-v3 .room-map-panel{
    margin:0!important;
    padding:4px 5px!important;
    display:grid!important;
    grid-template-columns:185px minmax(0,1fr)!important;
    align-items:center!important;
    gap:5px!important;
    border:0!important;
    border-bottom:1px solid #8ba7c3!important;
    border-radius:0!important;
    background:linear-gradient(180deg,#f9fbfd,#e1ecf6)!important;
    box-shadow:inset 0 1px 0 #fff!important;
}
.ui-oldqq-room-v3 .room-map-head{
    min-width:0!important;
    height:31px!important;
    margin:0!important;
    padding:0 5px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    border-right:1px solid #afc3d6!important;
}
.ui-oldqq-room-v3 .room-map-head>div:first-child{display:flex!important;align-items:baseline!important;gap:4px!important;white-space:nowrap!important}
.ui-oldqq-room-v3 .room-map-kicker{font-size:9px!important;font-weight:900!important;letter-spacing:0!important;color:#456b93!important;margin:0!important}
.ui-oldqq-room-v3 .room-map-title{font-size:10px!important;font-weight:800!important;color:#6f859b!important;line-height:1!important}
.ui-oldqq-room-v3 .sub-bar{
    flex:1 1 auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.ui-oldqq-room-v3 .sub-bar-text{font-size:10px!important;color:#536b84!important;white-space:nowrap!important}
.ui-oldqq-room-v3 .sub-bar-text span{font-size:10px!important;color:#1e4f82!important;margin-left:1px!important}
.ui-oldqq-room-v3 .sub-right-buttons{display:none!important}
.ui-oldqq-room-v3 .room-tab-bar{
    min-width:0!important;
    height:31px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    gap:3px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:thin!important;
    background:transparent!important;
    border:0!important;
}
.ui-oldqq-room-v3 .room-tab{
    flex:0 0 auto!important;
    min-width:91px!important;
    min-height:26px!important;
    height:26px!important;
    padding:2px 7px 2px 19px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:5px!important;
    border:1px solid #a9bfd4!important;
    color:#314d68!important;
    background:linear-gradient(180deg,#fff,#e8f1f8)!important;
    box-shadow:inset 0 1px 0 #fff,0 1px 1px rgba(34,68,103,.08)!important;
    font-size:9px!important;
    font-weight:800!important;
    white-space:nowrap!important;
}
.ui-oldqq-room-v3 .room-tab::before{
    left:7px!important;width:6px!important;height:6px!important;
    background:radial-gradient(circle at 35% 35%,#fff 0 20%,#94c7ff 42%,#4f80b5 100%)!important;
    box-shadow:0 0 0 1px rgba(71,116,163,.16)!important;
}
.ui-oldqq-room-v3 .room-tab:hover{transform:none!important;filter:brightness(1.03)!important;border-color:#6f99be!important}
.ui-oldqq-room-v3 .room-tab.active{
    color:#6e4800!important;
    border-color:#c99626!important;
    background:linear-gradient(180deg,#fff7c8,#f4c743)!important;
    box-shadow:inset 0 1px 0 #fff,0 1px 3px rgba(129,91,12,.14)!important;
}

/* 房间场景占绝对主视觉 */
.ui-oldqq-room-v3 .scene-wrap{
    width:auto!important;
    height:672px!important;
    margin:5px 5px 4px!important;
    border:1px solid #567ca3!important;
    border-radius:3px!important;
    overflow:hidden!important;
    background:#cddbeb!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.40)!important;
}
.ui-oldqq-room-v3 #scene{background-size:cover!important;background-position:center center!important}
.ui-oldqq-room-v3 .scene-corner-label{display:none!important}
.ui-oldqq-room-v3 .horn-list-container{top:8px!important;left:8px!important;right:8px!important}
.ui-oldqq-room-v3 .magic-bar-wrap{
    left:10px!important;right:10px!important;bottom:8px!important;height:9px!important;
    border-radius:4px!important;border:1px solid rgba(37,75,112,.72)!important;
    background:rgba(217,230,241,.82)!important;
    box-shadow:0 1px 2px rgba(23,51,78,.18)!important;
}
.ui-oldqq-room-v3 .magic-label,
.ui-oldqq-room-v3 .magic-max{
    top:-17px!important;padding:1px 5px!important;border-radius:3px!important;font-size:9px!important;
    color:#fff!important;background:rgba(34,70,104,.76)!important;
}

/* 底部聊天：像老聊天室一样压薄 */
.ui-oldqq-room-v3 .bottom-chat-area{
    margin:0 5px 5px!important;
    padding:5px 6px 6px!important;
    border:1px solid #9bb2c9!important;
    border-radius:3px!important;
    background:linear-gradient(180deg,#f8fbfd,#e6eef6)!important;
    box-shadow:inset 0 1px 0 #fff!important;
}
.ui-oldqq-room-v3 .chat-top-row{
    min-height:25px!important;
    margin-bottom:4px!important;
    gap:4px!important;
    align-items:center!important;
}
.ui-oldqq-room-v3 .chat-title-block{
    min-width:auto!important;padding:0 5px 0 1px!important;gap:4px!important;
}
.ui-oldqq-room-v3 .chat-title-block b{font-size:11px!important;color:#2e4e6c!important}
.ui-oldqq-room-v3 .chat-title-block small{font-size:7px!important;color:#8298ae!important;letter-spacing:.6px!important}
.ui-oldqq-room-v3 .chat-title-dot{width:6px!important;height:6px!important;box-shadow:none!important;background:#58ad67!important}
.ui-oldqq-room-v3 .chat-small-btn{
    min-height:23px!important;height:23px!important;padding:2px 7px!important;
    border-radius:4px!important;border:1px solid #afc2d5!important;
    font-size:9px!important;color:#365774!important;
    background:linear-gradient(180deg,#fff,#e7eff7)!important;
    box-shadow:inset 0 1px 0 #fff!important;
}
.ui-oldqq-room-v3 #btnHorn.world-horn-btn{
    color:#704d00!important;border-color:#d1a440!important;background:linear-gradient(180deg,#fff6cc,#f6d66d)!important;
}
.ui-oldqq-room-v3 .chat-online-tip{font-size:8px!important;color:#7890a6!important}
.ui-oldqq-room-v3 .chat-box{
    height:100px!important;min-height:100px!important;
    padding:6px 8px!important;
    border-radius:2px!important;border:1px solid #bacadb!important;
    background:#fff!important;
    box-shadow:inset 0 1px 3px rgba(39,69,97,.06)!important;
}
.ui-oldqq-room-v3 .chat-box.collapsed{height:43px!important;min-height:43px!important}
.ui-oldqq-room-v3 .chat-input-row{gap:5px!important;margin-top:5px!important;align-items:center!important}
.ui-oldqq-room-v3 .mini-tool-group{gap:3px!important}
.ui-oldqq-room-v3 .mini-tool{
    width:34px!important;height:30px!important;min-width:34px!important;
    padding:2px 2px!important;border-radius:4px!important;border:1px solid #aebfd1!important;
    color:#365a7a!important;background:linear-gradient(180deg,#fff,#e5edf5)!important;
    box-shadow:inset 0 1px 0 #fff!important;
}
.ui-oldqq-room-v3 .mini-tool-icon{font-size:11px!important;line-height:11px!important}
.ui-oldqq-room-v3 .mini-tool small{font-size:7px!important;line-height:8px!important;margin-top:1px!important}
.ui-oldqq-room-v3 .chat-input{
    height:31px!important;padding:4px 9px!important;border-radius:4px!important;
    border:1px solid #9fb5ca!important;background:#fff!important;font-size:11px!important;
}
.ui-oldqq-room-v3 .send-button{
    width:64px!important;height:31px!important;padding:0!important;border-radius:4px!important;
    font-size:11px!important;font-weight:900!important;
    color:#fff!important;border:1px solid #345f8e!important;
    background:linear-gradient(180deg,#6b98ca,#3f6e9f)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 1px 2px rgba(29,58,87,.16)!important;
}
.ui-oldqq-room-v3 .send-button.horn-mode-send{background:linear-gradient(180deg,#f0c347,#c68b19)!important;border-color:#a77116!important}

/* 小屏仍然保留顶部工具栏，不恢复左栏 */
@media(max-width:900px){
    body{padding:3px!important}
    .main-container.ui-oldqq-room-v3{width:calc(100vw - 6px)!important}
    .ui-oldqq-room-v3 .top-blue-bar.classic-side-panel{height:auto;min-height:45px;flex-wrap:wrap;padding:4px}
    .ui-oldqq-room-v3 .side-brand{flex-basis:108px;height:34px}
    .ui-oldqq-room-v3 .side-brand-copy small{display:none}
    .ui-oldqq-room-v3 .side-nav-item,
    .ui-oldqq-room-v3 .vip-badge.side-vip-entry{min-width:52px!important;height:32px!important;min-height:32px!important;padding:2px 5px!important}
    .ui-oldqq-room-v3 .room-map-panel{grid-template-columns:150px minmax(0,1fr)!important}
    .ui-oldqq-room-v3 .scene-wrap{height:570px!important}
}
@media(max-width:640px){
    .ui-oldqq-room-v3 .side-brand{flex-basis:100%!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.18)!important;padding-bottom:3px!important}
    .ui-oldqq-room-v3 .side-system-item{margin-left:0!important}
    .ui-oldqq-room-v3 .room-map-panel{display:block!important;padding:3px!important}
    .ui-oldqq-room-v3 .room-map-head{height:27px!important;border-right:0!important;border-bottom:1px solid #bacbdc!important}
    .ui-oldqq-room-v3 .room-tab-bar{height:30px!important;margin-top:3px!important}
    .ui-oldqq-room-v3 .scene-wrap{height:500px!important;margin-left:3px!important;margin-right:3px!important}
    .ui-oldqq-room-v3 .bottom-chat-area{margin-left:3px!important;margin-right:3px!important}
    .ui-oldqq-room-v3 .chat-title-block small,.ui-oldqq-room-v3 .chat-online-tip{display:none!important}
    .ui-oldqq-room-v3 .mini-tool small{display:none!important}
    .ui-oldqq-room-v3 .mini-tool{width:28px!important;min-width:28px!important;height:29px!important}
}

/* ======================================================================
   V4 窄版 + 大字体
   - 基于老QQ秀房间布局V3，仅调整主页面尺寸和文字可读性
   - 不改变任何按钮ID、Socket事件、房间/VIP/换装/魔法等业务逻辑
   ====================================================================== */

/* 整个聊天室主体横向收窄约三分之一，居中显示 */
.main-container.ui-oldqq-room-v3.ui-narrow-large-v4{
    width:min(820px,calc(100vw - 24px))!important;
    max-width:820px!important;
    min-width:0!important;
}

/* 顶部：字号放大，同时保持一排老式工具栏；空间不足时自然换行 */
.ui-narrow-large-v4 .top-blue-bar.classic-side-panel{
    height:auto!important;
    min-height:56px!important;
    padding:6px 7px!important;
    gap:5px!important;
    flex-wrap:wrap!important;
}
.ui-narrow-large-v4 .side-brand{
    flex-basis:132px!important;
    height:40px!important;
}
.ui-narrow-large-v4 .side-brand-mark{
    width:38px!important;
    height:33px!important;
    font-size:17px!important;
}
.ui-narrow-large-v4 .side-brand-copy b{font-size:15px!important}
.ui-narrow-large-v4 .side-brand-copy small{font-size:8px!important;letter-spacing:.9px!important}
.ui-narrow-large-v4 .side-nav-item,
.ui-narrow-large-v4 .top-blue-btn.side-nav-item,
.ui-narrow-large-v4 .top-right-btn.side-nav-item,
.ui-narrow-large-v4 .sub-btn.side-nav-item,
.ui-narrow-large-v4 .chat-small-btn.side-nav-item,
.ui-narrow-large-v4 .vip-badge.side-vip-entry,
.ui-narrow-large-v4 .vip-rank-badge.side-vip-entry,
.ui-narrow-large-v4 .vip-rank-badge.side-vip-entry.elite,
.ui-narrow-large-v4 .vip-rank-badge.side-vip-entry.empty{
    min-width:62px!important;
    height:38px!important;
    min-height:38px!important;
    padding:4px 8px!important;
    font-size:12px!important;
    gap:5px!important;
}
.ui-narrow-large-v4 .side-nav-icon{
    width:21px!important;
    height:21px!important;
    flex-basis:21px!important;
    font-size:13px!important;
}
.ui-narrow-large-v4 .side-nav-vip-icon,
.ui-narrow-large-v4 .side-nav-vip-icon img{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
}
.ui-narrow-large-v4 .side-nav-label{font-size:12px!important}
.ui-narrow-large-v4 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-narrow-large-v4 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    width:19px!important;height:19px!important;min-width:19px!important;font-size:10px!important;
}

/* 房间栏：整体更清晰，仍保持细条横向切换 */
.ui-narrow-large-v4 .room-map-panel{
    grid-template-columns:170px minmax(0,1fr)!important;
    padding:5px 6px!important;
    gap:6px!important;
}
.ui-narrow-large-v4 .room-map-head{height:35px!important;padding:0 6px!important;gap:6px!important}
.ui-narrow-large-v4 .room-map-kicker{font-size:11px!important}
.ui-narrow-large-v4 .room-map-title{font-size:12px!important}
.ui-narrow-large-v4 .sub-bar-text,
.ui-narrow-large-v4 .sub-bar-text span{font-size:12px!important}
.ui-narrow-large-v4 .room-tab-bar{height:35px!important;gap:4px!important}
.ui-narrow-large-v4 .room-tab{
    min-width:100px!important;
    min-height:30px!important;
    height:30px!important;
    padding:3px 8px 3px 20px!important;
    font-size:11px!important;
}
.ui-narrow-large-v4 .room-tab::before{width:7px!important;height:7px!important}

/* 主场景：宽度跟随窄版容器，高度同步收敛，避免人物/背景被横向拉得太散 */
.ui-narrow-large-v4 .scene-wrap{
    height:500px!important;
    margin:6px 6px 5px!important;
}
.ui-narrow-large-v4 .magic-bar-wrap{left:12px!important;right:12px!important;height:10px!important}
.ui-narrow-large-v4 .magic-label,
.ui-narrow-large-v4 .magic-max{font-size:11px!important;top:-20px!important;padding:2px 6px!important}

/* 人物相关文字同步放大 */
.ui-narrow-large-v4 .name-tag{font-size:15px!important;padding:3px 9px!important}
.ui-narrow-large-v4 .player-vip-mini{font-size:13px!important;height:23px!important}
.ui-narrow-large-v4 .player-chat-bubble{font-size:14px!important}
.ui-narrow-large-v4 .horn-item{font-size:14px!important;min-height:34px!important}

/* 聊天区域：字号整体提升一档 */
.ui-narrow-large-v4 .bottom-chat-area{padding:6px 7px 7px!important;margin:0 6px 6px!important}
.ui-narrow-large-v4 .chat-top-row{min-height:29px!important;margin-bottom:5px!important}
.ui-narrow-large-v4 .chat-title-block b{font-size:14px!important}
.ui-narrow-large-v4 .chat-title-block small{font-size:9px!important}
.ui-narrow-large-v4 .chat-small-btn{height:27px!important;min-height:27px!important;font-size:11px!important;padding:3px 8px!important}
.ui-narrow-large-v4 .chat-online-tip{font-size:10px!important}
.ui-narrow-large-v4 .chat-box{
    height:112px!important;
    min-height:112px!important;
    padding:8px 10px!important;
    font-size:14px!important;
    line-height:1.55!important;
}
.ui-narrow-large-v4 .chat-box.collapsed{height:52px!important;min-height:52px!important}
.ui-narrow-large-v4 .chat-sender-tag{font-size:13px!important;height:30px!important}
.ui-narrow-large-v4 .chat-sender-colon,
.ui-narrow-large-v4 .chat-message-text{font-size:14px!important;line-height:30px!important}
.ui-narrow-large-v4 .chat-system-line{font-size:13px!important}
.ui-narrow-large-v4 .chat-input-row{gap:6px!important;margin-top:6px!important}
.ui-narrow-large-v4 .mini-tool{width:39px!important;min-width:39px!important;height:34px!important}
.ui-narrow-large-v4 .mini-tool-icon{font-size:14px!important;line-height:14px!important}
.ui-narrow-large-v4 .mini-tool small{font-size:8px!important;line-height:9px!important}
.ui-narrow-large-v4 .chat-input{height:36px!important;font-size:14px!important;padding:5px 10px!important}
.ui-narrow-large-v4 .send-button{width:72px!important;height:36px!important;font-size:13px!important}

/* 窄版桌面仍尽量使用固定居中宽度；真正小屏才铺满 */
@media(max-width:860px){
    body{padding:4px!important}
    .main-container.ui-oldqq-room-v3.ui-narrow-large-v4{width:calc(100vw - 8px)!important;max-width:none!important}
    .ui-narrow-large-v4 .scene-wrap{height:500px!important}
}
@media(max-width:640px){
    .ui-narrow-large-v4 .room-map-panel{display:block!important}
    .ui-narrow-large-v4 .room-map-head{height:32px!important}
    .ui-narrow-large-v4 .room-tab-bar{height:34px!important}
    .ui-narrow-large-v4 .scene-wrap{height:450px!important}
    .ui-narrow-large-v4 .chat-title-block small,
    .ui-narrow-large-v4 .chat-online-tip{display:none!important}
}

/* ======================================================================
   V5 房间栏单行 + 当前房间下标 + 主场景增高
   - 基于V4，仅调整主页面房间栏和场景尺寸
   - 保留原按钮ID与全部业务逻辑
   ====================================================================== */

/* 左侧“当前：房间名”不再单独占位；当前房间状态移到对应房间标签下方 */
.ui-narrow-large-v4 .room-map-panel{
    display:block!important;
    padding:4px 6px 5px!important;
}
.ui-narrow-large-v4 .room-map-head{
    display:none!important;
}
.ui-narrow-large-v4 .sub-bar{
    display:none!important;
}

/* 九个房间固定一行完整显示，不允许拖动或横向滚动 */
.ui-narrow-large-v4 .room-tab-bar{
    display:flex!important;
    width:100%!important;
    height:48px!important;
    gap:3px!important;
    overflow:hidden!important;
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
    touch-action:manipulation!important;
    cursor:default!important;
}
.ui-narrow-large-v4 .room-tab-bar::-webkit-scrollbar{display:none!important}
.ui-narrow-large-v4 .room-tab{
    flex:1 1 0!important;
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
    height:43px!important;
    min-height:43px!important;
    padding:5px 2px 3px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:1px!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    line-height:1.08!important;
    cursor:pointer!important;
}
.ui-narrow-large-v4 .room-tab::before{display:none!important}
.ui-narrow-large-v4 .room-tab-main{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    font-size:11px!important;
    font-weight:900!important;
    color:inherit!important;
}
.ui-narrow-large-v4 .room-tab-main em{
    font-style:normal!important;
    font-size:9px!important;
    font-weight:700!important;
}
.ui-narrow-large-v4 .room-tab-current{
    display:block!important;
    height:11px!important;
    line-height:11px!important;
    font-size:8px!important;
    font-weight:900!important;
    color:#8c5d00!important;
    letter-spacing:.2px!important;
}
.ui-narrow-large-v4 .room-tab-current-placeholder{visibility:hidden!important}
.ui-narrow-large-v4 .room-tab.active .room-tab-current{
    color:#744500!important;
    text-shadow:0 1px 0 rgba(255,255,255,.6)!important;
}

/* 游戏场景在V4基础上增高约四分之一：500px -> 625px */
.ui-narrow-large-v4 .scene-wrap{
    height:625px!important;
}

@media(max-width:860px){
    .ui-narrow-large-v4 .room-map-panel{display:block!important}
    .ui-narrow-large-v4 .room-tab-bar{height:48px!important}
    .ui-narrow-large-v4 .room-tab{height:43px!important;min-height:43px!important}
    .ui-narrow-large-v4 .scene-wrap{height:625px!important}
}
@media(max-width:640px){
    .ui-narrow-large-v4 .room-tab-bar{gap:1px!important;height:44px!important}
    .ui-narrow-large-v4 .room-tab{height:40px!important;min-height:40px!important;padding-left:1px!important;padding-right:1px!important}
    .ui-narrow-large-v4 .room-tab-main{font-size:9px!important}
    .ui-narrow-large-v4 .room-tab-main em{font-size:7px!important}
    .ui-narrow-large-v4 .room-tab-current{font-size:7px!important}
    .ui-narrow-large-v4 .scene-wrap{height:560px!important}
}


/* =====================================================================
   V6 左侧图标布局版
   - 以V5全部业务逻辑为基准，仅把主页面恢复成左侧功能导航
   - 保留：九房间单行、当前房间标记、625px增高场景、玫瑰金VIP等
   ===================================================================== */
.main-container.ui-remix-v1.ui-left-latest-v6{
    width:min(1020px,calc(100vw - 24px))!important;
    max-width:1020px!important;
    min-width:0!important;
    grid-template-columns:136px minmax(0,1fr)!important;
    border-radius:14px!important;
}
.ui-left-latest-v6 .top-blue-bar.classic-side-panel{
    grid-column:1!important;
    min-height:100%!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    gap:6px!important;
    padding:12px 8px 11px!important;
}
.ui-left-latest-v6 .classic-main-stage{grid-column:2!important;min-width:0!important}
.ui-left-latest-v6 .side-brand-mark{width:38px!important;height:38px!important;font-size:16px!important}
.ui-left-latest-v6 .side-brand-copy b{font-size:14px!important}
.ui-left-latest-v6 .side-brand-copy small{font-size:7px!important}
.ui-left-latest-v6 .side-section-title{font-size:10px!important;margin:6px 4px 2px!important}
.ui-left-latest-v6 .side-nav-item,
.ui-left-latest-v6 .top-blue-btn.side-nav-item,
.ui-left-latest-v6 .top-right-btn.side-nav-item,
.ui-left-latest-v6 .sub-btn.side-nav-item,
.ui-left-latest-v6 .chat-small-btn.side-nav-item{
    min-height:41px!important;
    padding:6px 7px!important;
    font-size:12px!important;
    gap:7px!important;
}
.ui-left-latest-v6 .side-nav-label{font-size:12px!important}
.ui-left-latest-v6 .side-nav-icon{width:25px!important;height:25px!important;flex-basis:25px!important;font-size:14px!important}
.ui-left-latest-v6 .side-nav-vip-icon{width:30px!important;height:30px!important;flex-basis:30px!important}
.ui-left-latest-v6 .side-nav-vip-icon img{width:30px!important;height:30px!important}

/* 房间栏：保持V5要求，九个房间一行完整显示，不能拖动 */
.ui-left-latest-v6 .room-map-panel{
    display:block!important;
    margin:8px 10px 0!important;
    padding:5px 6px 6px!important;
    border:1px solid #c8d7ea!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,#fbfdff,#f0f5fb)!important;
}
.ui-left-latest-v6 .room-map-head,
.ui-left-latest-v6 .sub-bar{display:none!important}
.ui-left-latest-v6 .room-tab-bar{
    display:flex!important;
    grid-template-columns:none!important;
    width:100%!important;
    height:50px!important;
    gap:3px!important;
    padding:0!important;
    overflow:hidden!important;
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
    touch-action:manipulation!important;
    cursor:default!important;
}
.ui-left-latest-v6 .room-tab-bar::-webkit-scrollbar{display:none!important}
.ui-left-latest-v6 .room-tab{
    flex:1 1 0!important;
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
    min-height:44px!important;
    height:44px!important;
    padding:5px 2px 3px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:1px!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    border-radius:7px!important;
    line-height:1.05!important;
}
.ui-left-latest-v6 .room-tab::before{display:none!important}
.ui-left-latest-v6 .room-tab-main{display:block!important;max-width:100%!important;font-size:11px!important;font-weight:900!important;color:inherit!important}
.ui-left-latest-v6 .room-tab-main em{font-style:normal!important;font-size:9px!important;font-weight:700!important}
.ui-left-latest-v6 .room-tab-current{display:block!important;height:11px!important;line-height:11px!important;font-size:8px!important;font-weight:900!important;color:#8c5d00!important}
.ui-left-latest-v6 .room-tab-current-placeholder{visibility:hidden!important}
.ui-left-latest-v6 .room-tab.active .room-tab-current{color:#744500!important;text-shadow:0 1px 0 rgba(255,255,255,.65)!important}

/* 场景沿用V5增高尺寸 */
.ui-left-latest-v6 .scene-wrap{
    height:625px!important;
    margin:8px 10px 0!important;
    border-radius:11px!important;
}
.ui-left-latest-v6 .scene-corner-label{display:none!important}
.ui-left-latest-v6 .horn-list-container{top:12px!important}
.ui-left-latest-v6 .magic-label,
.ui-left-latest-v6 .magic-max{font-size:11px!important}
.ui-left-latest-v6 .name-tag{font-size:14px!important;padding:3px 8px!important}

/* 聊天区保持易读大字体 */
.ui-left-latest-v6 .bottom-chat-area{margin:8px 10px 10px!important;padding:8px!important}
.ui-left-latest-v6 .chat-title-block b{font-size:14px!important}
.ui-left-latest-v6 .chat-title-block small{font-size:9px!important}
.ui-left-latest-v6 .chat-small-btn{font-size:11px!important;min-height:27px!important}
.ui-left-latest-v6 .chat-box{height:112px!important;min-height:112px!important;font-size:14px!important;line-height:1.55!important}
.ui-left-latest-v6 .chat-box.collapsed{height:52px!important;min-height:52px!important}
.ui-left-latest-v6 .chat-input{height:36px!important;font-size:14px!important}
.ui-left-latest-v6 .send-button{height:36px!important;font-size:13px!important}

@media(max-width:900px){
    .main-container.ui-remix-v1.ui-left-latest-v6{width:calc(100vw - 8px)!important;max-width:none!important;display:grid!important;grid-template-columns:126px minmax(0,1fr)!important}
    .ui-left-latest-v6 .top-blue-bar.classic-side-panel{display:flex!important;flex-direction:column!important;min-height:100%!important;padding:9px 6px!important}
    .ui-left-latest-v6 .side-brand-copy small{display:block!important}
    .ui-left-latest-v6 .side-section-title{display:block!important}
    .ui-left-latest-v6 .side-panel-spacer{display:block!important}
    .ui-left-latest-v6 .top-right-group.side-nav-group,.ui-left-latest-v6 .side-room-actions{display:flex!important}
    .ui-left-latest-v6 .side-system-item,.ui-left-latest-v6 .side-exit-item{display:flex!important}
    .ui-left-latest-v6 .room-tab-main{font-size:9px!important}
    .ui-left-latest-v6 .room-tab-main em{font-size:7px!important}
    .ui-left-latest-v6 .scene-wrap{height:600px!important}
}
@media(max-width:640px){
    .main-container.ui-remix-v1.ui-left-latest-v6{display:block!important}
    .ui-left-latest-v6 .top-blue-bar.classic-side-panel{display:grid!important;grid-template-columns:repeat(3,1fr)!important;min-height:0!important}
    .ui-left-latest-v6 .side-brand{grid-column:1/-1!important}
    .ui-left-latest-v6 .side-section-title,.ui-left-latest-v6 .side-panel-spacer{display:none!important}
    .ui-left-latest-v6 .top-right-group.side-nav-group,.ui-left-latest-v6 .side-room-actions{display:contents!important}
    .ui-left-latest-v6 .scene-wrap{height:560px!important;margin-left:6px!important;margin-right:6px!important}
    .ui-left-latest-v6 .room-map-panel{margin-left:6px!important;margin-right:6px!important}
    .ui-left-latest-v6 .room-tab-bar{gap:1px!important;height:46px!important}
    .ui-left-latest-v6 .room-tab{height:41px!important;min-height:41px!important;padding-left:1px!important;padding-right:1px!important}
    .ui-left-latest-v6 .room-tab-main{font-size:8px!important}
    .ui-left-latest-v6 .room-tab-main em{font-size:6px!important}
    .ui-left-latest-v6 .room-tab-current{font-size:6px!important}
}


/* =====================================================================
   星语 V7：左侧可爱图标 + 质感文字（仅视觉，不改任何功能逻辑）
   VIP 星形 V 图标保持原文件、原尺寸、原逻辑不变
   ===================================================================== */
.ui-left-latest-v6 .side-brand-mark{
    width:42px!important;
    height:42px!important;
    border-radius:13px!important;
    font-size:13px!important;
    letter-spacing:1px!important;
    color:#78500b!important;
    background:linear-gradient(145deg,#fff9ce 0%,#ffe782 42%,#efb638 100%)!important;
    border:1px solid rgba(255,231,135,.95)!important;
    box-shadow:inset 0 2px 1px rgba(255,255,255,.88),inset 0 -3px 6px rgba(172,105,0,.18),0 4px 10px rgba(8,35,72,.22)!important;
    text-shadow:0 1px 0 #fff6bd,0 2px 2px rgba(126,75,0,.18)!important;
}
.ui-left-latest-v6 .side-brand-copy b{
    color:#fff!important;
    letter-spacing:.5px!important;
    text-shadow:0 1px 0 rgba(0,0,0,.18),0 2px 5px rgba(0,30,70,.24)!important;
}
.ui-left-latest-v6 .side-section-title{
    color:#cfe6ff!important;
    letter-spacing:.8px!important;
    text-shadow:0 1px 2px rgba(0,28,70,.55)!important;
}

/* 普通功能按钮：更像老休闲小游戏里的糖果按钮 */
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .top-blue-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .top-right-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .sub-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .chat-small-btn.side-nav-item:not(.side-vip-entry){
    position:relative!important;
    overflow:hidden!important;
    border-radius:12px!important;
    border:1px solid rgba(201,226,255,.48)!important;
    background:linear-gradient(180deg,rgba(91,143,197,.92) 0%,rgba(54,102,159,.96) 48%,rgba(42,82,132,.98) 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.44),inset 0 -2px 5px rgba(11,43,88,.22),0 3px 7px rgba(9,39,79,.18)!important;
    color:#fff!important;
    transition:transform .16s ease,filter .16s ease,box-shadow .16s ease!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry)::before{
    content:"";
    position:absolute;
    left:8px;
    right:8px;
    top:2px;
    height:9px;
    border-radius:10px 10px 50% 50%;
    background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0));
    pointer-events:none;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry):hover{
    transform:translateY(-1px)!important;
    filter:brightness(1.08) saturate(1.07)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.56),0 5px 10px rgba(9,39,79,.24)!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry)>span:last-child,
.ui-left-latest-v6 .side-nav-label{
    position:relative;
    z-index:2;
    font-weight:900!important;
    letter-spacing:.25px!important;
    color:#fff!important;
    text-shadow:0 1px 0 rgba(22,62,105,.8),0 2px 3px rgba(10,40,82,.3)!important;
}

/* 普通小图标做成糖果宝石徽章；VIP图标不在此规则内 */
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon){
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:27px!important;
    height:27px!important;
    flex:0 0 27px!important;
    border-radius:10px!important;
    font-size:15px!important;
    line-height:1!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.72)!important;
    background:linear-gradient(145deg,#91cfff 0%,#559de3 52%,#346eb5 100%)!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.55),inset 0 -2px 4px rgba(20,69,128,.26),0 2px 5px rgba(8,36,76,.28)!important;
    text-shadow:0 1px 2px rgba(25,67,117,.55)!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon)::after{
    content:"";
    position:absolute;
    width:7px;
    height:4px;
    top:4px;
    left:5px;
    border-radius:50%;
    background:rgba(255,255,255,.62);
    transform:rotate(-28deg);
    pointer-events:none;
}
.ui-left-latest-v6 #btnProfile .side-nav-icon{background:linear-gradient(145deg,#ffd48c,#ffad55 55%,#df7b32)!important}
.ui-left-latest-v6 #btnDress .side-nav-icon{background:linear-gradient(145deg,#ffe390,#f7bd42 54%,#ce8b18)!important}
.ui-left-latest-v6 #btnTimeBook .side-nav-icon{background:linear-gradient(145deg,#ffacd2,#e86fab 55%,#b84585)!important}
.ui-left-latest-v6 #btnPlayerInfo .side-nav-icon{background:linear-gradient(145deg,#c9b2ff,#9274e5 55%,#6848bd)!important}
.ui-left-latest-v6 #btnMagic .side-nav-icon{background:linear-gradient(145deg,#9ff2eb,#51cfc5 55%,#269891)!important}
.ui-left-latest-v6 #btnFriend .side-nav-icon{background:linear-gradient(145deg,#ffb4c2,#ee718c 55%,#c34664)!important}
.ui-left-latest-v6 #btnSetting .side-nav-icon{background:linear-gradient(145deg,#c7d8ea,#819cb8 55%,#58738e)!important}
.ui-left-latest-v6 #btnExitRoom .side-nav-icon{background:linear-gradient(145deg,#ffb2aa,#e97066 55%,#bc443b)!important}

/* 每个按钮边缘带一点对应色，但不改变位置和尺寸 */
.ui-left-latest-v6 #btnProfile{border-color:rgba(255,201,117,.58)!important}
.ui-left-latest-v6 #btnDress{border-color:rgba(255,215,110,.58)!important}
.ui-left-latest-v6 #btnTimeBook{border-color:rgba(255,164,205,.56)!important}
.ui-left-latest-v6 #btnPlayerInfo{border-color:rgba(195,171,255,.58)!important}
.ui-left-latest-v6 #btnMagic{border-color:rgba(137,239,229,.56)!important}
.ui-left-latest-v6 #btnFriend{border-color:rgba(255,163,184,.56)!important}
.ui-left-latest-v6 #btnSetting{border-color:rgba(190,211,232,.52)!important}
.ui-left-latest-v6 #btnExitRoom{border-color:rgba(255,154,145,.56)!important}

/* 确保原 VIP 图标不被可爱图标规则修改 */
.ui-left-latest-v6 .vip-badge.side-vip-entry .side-nav-vip-icon,
.ui-left-latest-v6 .vip-badge.side-vip-entry .side-nav-vip-icon img{
    background:none!important;
    border:0!important;
    box-shadow:none!important;
}


/* =====================================================================
   V8 左栏VIP入口 + 世界喊话质感 + 绮趣互动焕新
   ===================================================================== */
.ui-left-latest-v6 .top-blue-bar.classic-side-panel{
    background:linear-gradient(180deg,#264e7f 0%,#1e4678 42%,#1a3d6d 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset -1px 0 0 rgba(255,255,255,.05)!important;
}
.ui-left-latest-v6 .side-brand{padding-bottom:8px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .top-blue-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .top-right-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .sub-btn.side-nav-item:not(.side-vip-entry),
.ui-left-latest-v6 .chat-small-btn.side-nav-item:not(.side-vip-entry){
    min-height:44px!important;
    padding:7px 8px!important;
    border-radius:14px!important;
    border:1px solid rgba(198,226,255,.54)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.58),inset 0 -4px 7px rgba(8,35,72,.20),0 5px 11px rgba(5,25,52,.22)!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry)>span:last-child,
.ui-left-latest-v6 .side-nav-label{
    font-weight:900!important;
    font-size:13px!important;
    text-shadow:0 1px 0 rgba(255,255,255,.12),0 2px 4px rgba(6,34,72,.38)!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon){
    width:28px!important;height:28px!important;flex:0 0 28px!important;border-radius:11px!important;
    font-size:16px!important;
    box-shadow:inset 0 2px 3px rgba(255,255,255,.62),inset 0 -3px 5px rgba(18,67,122,.34),0 4px 7px rgba(8,34,70,.32)!important;
}
.ui-left-latest-v6 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon)::after{width:8px;height:4px;top:4px;left:5px;opacity:.92!important}
.ui-left-latest-v6 #btnVipGuideSide{border-color:rgba(255,202,155,.68)!important;background:linear-gradient(180deg,#7e5ec6 0%,#5e71d2 44%,#435aa7 100%)!important}
.ui-left-latest-v6 #btnVipGuideSide .side-nav-icon{background:linear-gradient(145deg,#ffd4f0,#f1a3d4 50%,#ce77bc)!important}
.ui-left-latest-v6 #btnMagic{border-color:rgba(132,245,219,.64)!important;background:linear-gradient(180deg,#4e91cd 0%,#318aa2 52%,#2b6f8b 100%)!important}
.ui-left-latest-v6 #btnMagic .side-nav-icon{background:linear-gradient(145deg,#b1fff5,#6ce8d8 54%,#2eb4a0)!important}
.ui-left-latest-v6 #btnHorn.world-horn-btn{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    height:31px!important;
    min-height:31px!important;
    padding:0 14px!important;
    border-radius:999px!important;
    border:1px solid #f8c97a!important;
    background:linear-gradient(180deg,#ffe391 0%,#ffbf45 55%,#f1971c 100%)!important;
    color:#7a4500!important;
    font-size:13px!important;
    font-weight:900!important;
    text-shadow:0 1px 0 rgba(255,255,255,.62)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.78),inset 0 -3px 4px rgba(170,95,0,.18),0 3px 7px rgba(121,67,0,.16)!important;
}
.ui-left-latest-v6 #btnHorn .horn-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 1px 3px rgba(140,83,0,.16);font-size:12px}
.ui-left-latest-v6 .horn-input-wrap{flex:1 1 420px!important;min-width:370px!important;max-width:500px!important;gap:8px!important}
.ui-left-latest-v6 .horn-text-input{
    height:32px!important;
    min-height:32px!important;
    border-radius:999px!important;
    padding:0 15px!important;
    font-size:13px!important;
    border:2px solid #1d1d1d!important;
    background:linear-gradient(180deg,#ffffff,#fbfcff)!important;
    box-shadow:inset 0 1px 3px rgba(60,86,128,.10)!important;
}
.ui-left-latest-v6 .horn-send-btn{height:32px!important;min-height:32px!important;padding:0 14px!important;border-radius:999px!important}
.ui-left-latest-v6 .chat-top-row{gap:7px!important;flex-wrap:wrap!important}
.ui-left-latest-v6 .mini-tool-group{background:linear-gradient(180deg,#eef3f8,#dce7f3)!important;border:1px solid #c3d2e2!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important}
.ui-left-latest-v6 .mini-tool{font-weight:800!important}

/* VIP 介绍弹窗配色重新做，左侧入口保留，预览区删除 */
.vip-guide-v2 .vip-guide-v2-head{background:linear-gradient(135deg,#2d4f78 0%,#345b88 52%,#3c668f 100%)!important}
.vip-guide-v2-hero{background:linear-gradient(135deg,#284b74 0%,#416895 68%,#5378a2 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
.vip-guide-v2 .vip-guide-main-title{letter-spacing:.8px!important}
.vip-guide-v2 .vip-guide-subtitle{color:#e7f1f7!important}
.vip-guide-v2-benefits .vip-benefit-card{background:linear-gradient(180deg,#fffdf8,#fff4df)!important;border:1px solid #edd8b7!important;box-shadow:0 4px 10px rgba(59,80,107,.05)!important}
.vip-guide-v2-benefits .vip-benefit-card i{background:linear-gradient(145deg,#ffedc0,#e3b66e)!important;color:#6d4620!important;border:1px solid #f0d8a9!important}
.vip-guide-v2-section{border-radius:15px!important;background:linear-gradient(180deg,#ffffff,#f6f9fc)!important}
.vip-guide-v2-footer{background:linear-gradient(110deg,#234364,#315980)!important}
.vip-guide-v2 .vip-showcase-grid{display:none!important}

/* 绮趣互动：更大更闪、更有互动感 */
.magic-modal-title{letter-spacing:.5px!important}
.magic-spell-item{border-radius:14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 5px 10px rgba(46,77,119,.08)!important}
.magic-spell-name{font-weight:900!important;letter-spacing:.4px!important}
.magic-cast-effect{transform:translateX(-50%) scale(1.05)!important;box-shadow:0 14px 28px rgba(28,45,78,.24)!important}
.magic-effect-icon{font-size:30px!important;filter:drop-shadow(0 3px 8px rgba(255,255,255,.5))}
.magic-effect-title{font-size:17px!important;font-weight:900!important;letter-spacing:.4px!important}
.magic-effect-line{font-size:12px!important;line-height:1.45!important}
.magic-aura-glow{transform:translate(-50%,-50%) scale(1.18)!important;filter:saturate(1.12)!important}
.magic-aura-ring{width:188px!important;height:188px!important;border-width:3px!important}
.magic-aura-ring-secondary{width:238px!important;height:238px!important}
.magic-aura-core{font-size:31px!important;box-shadow:0 8px 16px rgba(24,44,78,.18)!important}
.magic-aura-particle{font-size:24px!important;filter:drop-shadow(0 3px 5px rgba(255,255,255,.35))!important}
.magic-target-burst span{font-size:58px!important;filter:drop-shadow(0 5px 8px rgba(255,255,255,.38))!important}
.magic-link-beam{height:8px!important;border-radius:999px!important;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.92),rgba(255,225,152,.88),rgba(255,255,255,0))!important;box-shadow:0 0 14px rgba(255,224,140,.45)!important}
.magic-link-particle{font-size:18px!important;filter:drop-shadow(0 1px 3px rgba(255,255,255,.35))!important}


/* ===== 最终大厅图标视觉优化覆盖 ===== */
.side-menu .menu-btn,
.left-menu .menu-btn,
.sidebar .menu-btn {
    font-weight:900;
    letter-spacing:1px;
    border-radius:16px;
    filter: drop-shadow(0 3px 5px rgba(0,0,0,.18));
    transition:.25s;
}
.side-menu .menu-btn:hover,
.left-menu .menu-btn:hover,
.sidebar .menu-btn:hover {
    transform:translateX(3px) scale(1.03);
}

/* 顶部房间按钮增强质感 */
.room-tab,.room-btn,.top-room-btn{
    font-weight:800;
    border-radius:14px!important;
    box-shadow:0 3px 8px rgba(80,120,180,.25), inset 0 1px 3px #fff;
}

/* 世界喊话按钮 */
.world-horn-btn{
    font-weight:900!important;
    border-radius:18px!important;
    background:linear-gradient(135deg,#ffd45a,#ff9d20)!important;
    box-shadow:0 4px 12px rgba(255,160,30,.45), inset 0 2px 5px #fff;
}
.horn-badge{
    display:inline-flex;
    font-size:22px;
    filter:drop-shadow(0 2px 2px #b86b00);
}

/* 世界喊话输入区域拉长 */
.horn-input-wrap{
    flex:1!important;
}
.horn-text-input{
    width:100%!important;
    min-height:38px;
    border-radius:18px!important;
    font-size:15px!important;
}

/* 尊享等级星星闪烁 */
.vip-star,.vip-level-icon,.honor-star{
    animation:starGlow 1.8s infinite alternate;
}
@keyframes starGlow{
    from{filter:drop-shadow(0 0 3px #ffd85a);}
    to{filter:drop-shadow(0 0 14px #ffdf62);}
}

/* 图标文字 */
button,.menu-btn{
    text-shadow:0 1px 1px rgba(0,0,0,.15);
}

/* =====================================================================
   V9 参考图大厅：经典蓝色聊天室布局
   仅覆盖大厅外观；原功能 ID、弹窗、房间与业务逻辑全部保留。
   ===================================================================== */
body.lobby-reference-page{
    min-width:760px;
    min-height:520px;
    padding:4px!important;
    overflow:auto;
    background:linear-gradient(180deg,#edf4ff 0%,#f8faff 100%)!important;
}

.main-container.ui-reference-v9{
    width:min(1280px,calc(100vw - 8px))!important;
    max-width:1280px!important;
    min-width:752px!important;
    height:max(512px,calc(100vh - 8px))!important;
    min-height:512px!important;
    margin:0 auto!important;
    grid-template-columns:158px minmax(0,1fr)!important;
    border:1px solid #3b81da!important;
    border-radius:9px!important;
    background:#eaf2ff!important;
    box-shadow:0 2px 10px rgba(34,87,159,.22),inset 0 0 0 1px rgba(255,255,255,.72)!important;
}

/* 左侧：按参考图恢复紧凑、明亮的彩色按钮栏 */
.ui-reference-v9 .top-blue-bar.classic-side-panel{
    height:100%!important;
    min-height:0!important;
    gap:3px!important;
    padding:6px 4px 5px!important;
    overflow:hidden!important;
    background:
        radial-gradient(circle at 86% 14%,rgba(255,255,255,.82) 0 1px,transparent 2px),
        radial-gradient(circle at 77% 20%,rgba(255,230,88,.92) 0 1px,transparent 2px),
        linear-gradient(180deg,#1779de 0%,#0754b7 46%,#063a89 100%)!important;
    border-right:2px solid #8fbaf0!important;
    box-shadow:inset -1px 0 0 rgba(255,255,255,.42),inset 0 1px 0 rgba(255,255,255,.48)!important;
}
.ui-reference-v9 .side-brand{
    min-height:47px!important;
    gap:7px!important;
    margin:0!important;
    padding:0 2px 6px!important;
    border-bottom:1px solid rgba(219,238,255,.42)!important;
}
.ui-reference-v9 .side-brand-mark{
    width:38px!important;
    height:36px!important;
    flex:0 0 38px!important;
    border-radius:8px!important;
    font-size:13px!important;
    color:#704600!important;
    background:linear-gradient(180deg,#fff9c4 0%,#ffdb58 56%,#efad1f 100%)!important;
    border:1px solid #f4ca51!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.9),0 2px 5px rgba(0,43,104,.32)!important;
}
.ui-reference-v9 .side-brand-copy b{
    font-size:17px!important;
    line-height:18px!important;
    letter-spacing:0!important;
}
.ui-reference-v9 .side-brand-copy small{
    margin-top:2px!important;
    font-size:8px!important;
    letter-spacing:.25px!important;
    color:#fff!important;
}
.ui-reference-v9 .side-section-title{
    height:13px!important;
    line-height:13px!important;
    margin:1px 1px 0!important;
    font-size:10px!important;
    letter-spacing:0!important;
    color:#e3f2ff!important;
}
.ui-reference-v9 .top-right-group.side-nav-group,
.ui-reference-v9 .side-room-actions{
    gap:4px!important;
}
.ui-reference-v9 .side-panel-spacer{
    min-height:2px!important;
}
.ui-reference-v9 .side-nav-item:not(.side-vip-entry),
.ui-reference-v9 .top-blue-btn.side-nav-item:not(.side-vip-entry),
.ui-reference-v9 .top-right-btn.side-nav-item:not(.side-vip-entry),
.ui-reference-v9 .sub-btn.side-nav-item:not(.side-vip-entry),
.ui-reference-v9 .chat-small-btn.side-nav-item:not(.side-vip-entry){
    width:100%!important;
    min-height:34px!important;
    height:34px!important;
    padding:3px 7px!important;
    gap:8px!important;
    border-radius:12px!important;
    color:#fff!important;
    font-size:13px!important;
    border:1px solid rgba(255,255,255,.88)!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.58),inset 0 -4px 6px rgba(30,42,120,.22),0 2px 4px rgba(0,42,105,.28)!important;
}
.ui-reference-v9 .side-nav-item:not(.side-vip-entry)::before{
    left:9px!important;
    right:9px!important;
    top:1px!important;
    height:8px!important;
    opacity:.86!important;
}
.ui-reference-v9 .side-nav-item:not(.side-vip-entry)>span:last-child,
.ui-reference-v9 .side-nav-label{
    font-size:13px!important;
    line-height:18px!important;
    letter-spacing:0!important;
    text-shadow:0 1px 1px rgba(49,22,100,.5),0 0 3px rgba(255,255,255,.16)!important;
}
.ui-reference-v9 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon){
    width:25px!important;
    height:25px!important;
    flex:0 0 25px!important;
    border-radius:50%!important;
    font-size:14px!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.78),inset 0 -3px 4px rgba(40,41,145,.24),0 1px 3px rgba(7,42,107,.28)!important;
}
.ui-reference-v9 #btnVipGuideSide{background:linear-gradient(180deg,#dc91ff 0%,#9e45e9 52%,#7132c7 100%)!important}
.ui-reference-v9 #btnProfile{background:linear-gradient(180deg,#ffbd4e 0%,#ff7f18 55%,#e6530b 100%)!important}
.ui-reference-v9 #btnDress{background:linear-gradient(180deg,#ffd94c 0%,#ffa616 55%,#e67a07 100%)!important}
.ui-reference-v9 #btnTimeBook{background:linear-gradient(180deg,#ff77bd 0%,#f0318d 54%,#c91568 100%)!important}
.ui-reference-v9 #btnPlayerInfo{background:linear-gradient(180deg,#a992ff 0%,#7451e9 55%,#5131c5 100%)!important}
.ui-reference-v9 #btnMagic{background:linear-gradient(180deg,#5de9f2 0%,#19b9de 53%,#0589bd 100%)!important}
.ui-reference-v9 #btnFriend{background:linear-gradient(180deg,#ff7fb6 0%,#ee347f 54%,#c71963 100%)!important}
.ui-reference-v9 #btnSetting,
.ui-reference-v9 #btnExitRoom{background:linear-gradient(180deg,#43b5ff 0%,#147edf 52%,#0754bd 100%)!important}
.ui-reference-v9 #btnVipGuideSide .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#ef83ff 38%,#b12ed6 72%,#7720ad)!important}
.ui-reference-v9 #btnProfile .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff6d7,#ffae32 40%,#e55f10 74%,#b83405)!important}
.ui-reference-v9 #btnDress .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff9cf,#ffcf3d 42%,#e99210 76%,#bf6500)!important}
.ui-reference-v9 #btnTimeBook .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#ff8fd0 40%,#dc2a82 74%,#a40f55)!important}
.ui-reference-v9 #btnPlayerInfo .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#b9a3ff 40%,#7653dd 74%,#4529aa)!important}
.ui-reference-v9 #btnMagic .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#84edf5 40%,#18b4d4 74%,#087ca6)!important}
.ui-reference-v9 #btnFriend .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#ff91bc 40%,#e83f7f 74%,#b81353)!important}
.ui-reference-v9 #btnSetting .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#82caff 40%,#2588df 74%,#0a55ad)!important}
.ui-reference-v9 #btnExitRoom .side-nav-icon{background:radial-gradient(circle at 35% 30%,#fff,#ff9eaa 40%,#eb4d60 74%,#b71f35)!important}

/* 尊享等级大星徽章 */
.ui-reference-v9 .vip-badge.side-vip-entry,
.ui-reference-v9 .vip-rank-badge.side-vip-entry,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.elite,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty{
    position:relative!important;
    width:100%!important;
    min-height:62px!important;
    height:62px!important;
    padding:2px 5px 2px 1px!important;
    gap:1px!important;
    overflow:hidden!important;
    border-radius:12px!important;
    border:1px solid #f6b82b!important;
    background:
        radial-gradient(circle at 16% 22%,#fff 0 1px,transparent 2px),
        radial-gradient(circle at 85% 30%,#fff4a2 0 1px,transparent 2px),
        radial-gradient(circle at 72% 78%,#fff 0 1px,transparent 2px),
        linear-gradient(135deg,#7957d7 0%,#5c39bf 43%,#e49b1e 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 0 7px rgba(255,196,35,.65),0 2px 4px rgba(0,34,93,.28)!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon{
    width:58px!important;
    height:58px!important;
    flex:0 0 58px!important;
    margin:-1px 0!important;
    filter:drop-shadow(0 0 5px rgba(255,229,91,.75))!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon img{
    width:58px!important;
    height:58px!important;
    object-fit:contain!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-label{
    flex:1 1 auto!important;
    font-size:15px!important;
    color:#fff7b7!important;
    white-space:nowrap!important;
    text-shadow:0 1px 0 #8c3e00,0 0 5px rgba(255,216,51,.7)!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-gem{display:none!important}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number{
    display:none!important;
    position:absolute!important;
    left:39px!important;
    top:36px!important;
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    padding:0!important;
    z-index:4!important;
    font-size:9px!important;
    color:#723d00!important;
    background:linear-gradient(180deg,#fff6a6,#ffc42d)!important;
    border:1px solid #d88800!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{display:flex!important}

/* 右侧主区：顶部九房间、中央舞台、双层聊天控制台 */
.ui-reference-v9 .classic-main-stage{
    height:100%!important;
    min-height:0!important;
    display:grid!important;
    grid-template-rows:61px minmax(260px,1fr) auto!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#f4f7ff,#e8f0fd)!important;
}
.ui-reference-v9 .room-map-panel{
    height:61px!important;
    margin:0!important;
    padding:6px 5px 5px!important;
    border:0!important;
    border-bottom:1px solid #9cb8df!important;
    border-radius:0!important;
    background:linear-gradient(180deg,#fdfdff 0%,#e7edfb 100%)!important;
    box-shadow:inset 0 1px 0 #fff!important;
}
.ui-reference-v9 .room-tab-bar{
    height:49px!important;
    gap:3px!important;
}
.ui-reference-v9 .room-tab{
    position:relative!important;
    flex:1 1 0!important;
    height:46px!important;
    min-height:46px!important;
    padding:3px 2px 3px 32px!important;
    display:grid!important;
    grid-template-columns:28px minmax(0,1fr)!important;
    grid-template-rows:1fr 11px!important;
    column-gap:3px!important;
    row-gap:0!important;
    align-items:center!important;
    justify-items:start!important;
    overflow:hidden!important;
    border-radius:9px!important;
    border:1px solid #b8c9e4!important;
    background:linear-gradient(180deg,#ffffff 0%,#f5f7ff 50%,#e3eafa 100%)!important;
    color:#273b86!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.98),0 2px 4px rgba(64,94,151,.18)!important;
}
.ui-reference-v9 .room-tab::before{
    position:absolute!important;
    left:4px!important;
    top:8px!important;
    width:27px!important;
    height:27px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    transform:none!important;
    border-radius:50%!important;
    border:1px solid rgba(76,119,201,.48)!important;
    color:#fff!important;
    font-size:15px!important;
    line-height:27px!important;
    text-shadow:0 1px 2px rgba(18,39,119,.48)!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.84),0 2px 4px rgba(42,72,141,.3)!important;
}
.ui-reference-v9 .room-tab[data-room="海风湾"]::before{content:"★"!important;background:linear-gradient(145deg,#8ce7ff,#35a2ff 52%,#1262cd)!important}
.ui-reference-v9 .room-tab[data-room="森语谷"]::before{content:"✿"!important;background:linear-gradient(145deg,#ffc9ff,#d861f0 52%,#9630c6)!important}
.ui-reference-v9 .room-tab[data-room="晴光街"]::before{content:"♥"!important;background:linear-gradient(145deg,#ffd6ea,#ff6daf 52%,#dc2e7e)!important}
.ui-reference-v9 .room-tab[data-room="金曲厅"]::before{content:"§"!important;background:linear-gradient(145deg,#fff0a8,#ffc03b 52%,#e27b08)!important}
.ui-reference-v9 .room-tab[data-room="星夜坊"]::before{content:"♛"!important;background:linear-gradient(145deg,#ffd5ff,#d85be9 52%,#8d26b8)!important}
.ui-reference-v9 .room-tab[data-room="浪花岛"]::before{content:"◉"!important;background:linear-gradient(145deg,#b9eeff,#54b9ff 52%,#1975d1)!important}
.ui-reference-v9 .room-tab[data-room="幽梦巷"]::before{content:"♫"!important;background:linear-gradient(145deg,#ddd2ff,#8d68ef 52%,#5b35c4)!important}
.ui-reference-v9 .room-tab[data-room="落霞湾"]::before{content:"✿"!important;background:linear-gradient(145deg,#ffd0ee,#ff79c4 52%,#d83c93)!important}
.ui-reference-v9 .room-tab[data-room="青春苑"]::before{content:"☀"!important;background:linear-gradient(145deg,#ffe6a5,#ff9d34 52%,#e15d0b)!important}
.ui-reference-v9 .room-tab-main{
    grid-column:2!important;
    grid-row:1!important;
    align-self:end!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    font-size:11px!important;
    line-height:16px!important;
    letter-spacing:0!important;
    text-align:left!important;
}
.ui-reference-v9 .room-tab-main em{
    font-size:8px!important;
    letter-spacing:-.3px!important;
}
.ui-reference-v9 .room-tab-current{
    grid-column:2!important;
    grid-row:2!important;
    align-self:start!important;
    width:auto!important;
    height:11px!important;
    font-size:8px!important;
    line-height:11px!important;
    color:#aa4b00!important;
}
.ui-reference-v9 .room-tab.active{
    border-color:#eda33b!important;
    color:#7b3700!important;
    background:linear-gradient(180deg,#fffbed 0%,#ffedbb 50%,#ffd878 100%)!important;
    box-shadow:inset 0 2px 2px #fff,0 2px 5px rgba(211,119,18,.25)!important;
}

.ui-reference-v9 .scene-wrap{
    align-self:stretch!important;
    width:auto!important;
    height:auto!important;
    min-height:260px!important;
    margin:5px 8px 0!important;
    border:1px solid #8bb1e9!important;
    border-radius:10px!important;
    background:linear-gradient(135deg,#edf3ff,#e2eaff)!important;
    box-shadow:inset 0 0 0 3px rgba(255,255,255,.45),0 2px 5px rgba(50,89,157,.13)!important;
}
.ui-reference-v9 #scene{
    background-size:cover!important;
    background-position:center center!important;
}
.ui-reference-v9 .player{
    width:100px!important;
    height:160px!important;
}
.ui-reference-v9 .player-name-row{
    bottom:-22px!important;
}
.ui-reference-v9 .name-tag{
    min-width:22px!important;
    padding:2px 6px!important;
    border-radius:5px!important;
    font-size:11px!important;
    line-height:16px!important;
    color:#5d3700!important;
    background:linear-gradient(180deg,#fff7a1,#ffc83c)!important;
    border:1px solid #d78a00!important;
    box-shadow:inset 0 1px 0 #fff,0 1px 3px rgba(90,51,0,.18)!important;
}
.ui-reference-v9 .magic-bar-wrap{
    left:12px!important;
    right:12px!important;
    bottom:8px!important;
    height:10px!important;
    border-radius:7px!important;
    border:1px solid #287ad2!important;
    background:#bed9f5!important;
    box-shadow:inset 0 1px 2px rgba(25,72,126,.22),0 1px 1px rgba(255,255,255,.75)!important;
}
.ui-reference-v9 .magic-bar-fill{
    background:linear-gradient(90deg,#1d91ff,#52dcff)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;
}
.ui-reference-v9 .magic-label,
.ui-reference-v9 .magic-max{display:none!important}

.ui-reference-v9 .bottom-chat-area{
    align-self:end!important;
    margin:5px 8px 7px!important;
    padding:6px 7px 7px!important;
    border:1px solid #c6d5ed!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,#fdfdff 0%,#edf2fc 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(55,88,146,.1)!important;
}
.ui-reference-v9 .chat-top-row{
    min-height:36px!important;
    margin:0!important;
    gap:7px!important;
    flex-wrap:nowrap!important;
}
.ui-reference-v9 .chat-title-block{
    min-width:104px!important;
    gap:5px!important;
    color:#284091!important;
}
.ui-reference-v9 .chat-title-block b{font-size:13px!important}
.ui-reference-v9 .chat-title-block small{font-size:9px!important;color:#6579ae!important}
.ui-reference-v9 .chat-title-dot{
    width:8px!important;height:8px!important;
    background:#58c94c!important;
    border:1px solid #1f9b25!important;
    box-shadow:0 0 4px rgba(48,184,53,.55)!important;
}
.ui-reference-v9 #toggleExpand{
    min-height:27px!important;
    height:27px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    color:#31458f!important;
    background:linear-gradient(180deg,#fff,#eaf0fb)!important;
    border:1px solid #bdcce5!important;
}
.ui-reference-v9 #btnHorn.world-horn-btn{
    flex:0 0 auto!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 14px!important;
    border-radius:18px!important;
    font-size:13px!important;
    color:#794000!important;
    border:1px solid #e79c13!important;
    background:linear-gradient(180deg,#fff08d 0%,#ffbd27 48%,#ef7900 100%)!important;
    box-shadow:inset 0 2px 2px rgba(255,255,255,.9),inset 0 -4px 6px rgba(198,86,0,.24),0 2px 5px rgba(182,88,0,.28)!important;
}
.ui-reference-v9 #btnHorn .horn-badge{
    width:26px!important;
    height:26px!important;
    margin-left:-8px!important;
    font-size:20px!important;
    background:transparent!important;
    filter:drop-shadow(0 1px 1px #b45e00)!important;
    box-shadow:none!important;
}
.ui-reference-v9 .horn-input-wrap{
    flex:1 1 auto!important;
    min-width:200px!important;
    max-width:none!important;
    gap:7px!important;
}
.ui-reference-v9 .horn-text-input{
    width:auto!important;
    flex:1 1 auto!important;
    min-width:120px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 12px!important;
    border-radius:8px!important;
    font-size:12px!important;
    color:#384a72!important;
    border:1px solid #bdcbe3!important;
    background:#fff!important;
    box-shadow:inset 0 1px 3px rgba(49,73,118,.1)!important;
}
.ui-reference-v9 .horn-send-btn{
    height:34px!important;
    min-height:34px!important;
    padding:0 15px!important;
    border-radius:12px!important;
    border:1px solid #ef9b42!important;
    background:linear-gradient(180deg,#ffbd66,#ff7421)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 2px 4px rgba(178,72,0,.2)!important;
    font-size:12px!important;
    font-weight:900!important;
}
.ui-reference-v9 .chat-box{
    height:112px!important;
    min-height:112px!important;
    margin-top:5px!important;
}
.ui-reference-v9 .chat-box.collapsed{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
}
.ui-reference-v9 .chat-input-row{
    min-height:47px!important;
    margin-top:5px!important;
    gap:7px!important;
}
.ui-reference-v9 .mini-tool-group{
    flex:0 0 auto!important;
    height:47px!important;
    gap:3px!important;
    padding:2px 3px!important;
    border-radius:9px!important;
    background:linear-gradient(180deg,#f8fbff,#e3ebf8)!important;
}
.ui-reference-v9 .mini-tool{
    width:53px!important;
    height:41px!important;
    border-radius:8px!important;
    border:1px solid #c2d0e5!important;
    color:#1f4294!important;
    background:linear-gradient(180deg,#fff,#edf2fb)!important;
    box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(62,86,130,.1)!important;
}
.ui-reference-v9 .mini-tool-icon{font-size:19px!important;line-height:20px!important;color:#0a61d2!important}
.ui-reference-v9 .mini-tool small{font-size:10px!important;line-height:12px!important;color:#253b87!important}
.ui-reference-v9 .chat-input{
    height:40px!important;
    min-height:40px!important;
    padding:0 13px!important;
    border-radius:8px!important;
    border:1px solid #bdcbe3!important;
    background:#fff!important;
    box-shadow:inset 0 1px 3px rgba(49,73,118,.1)!important;
    font-size:13px!important;
}
.ui-reference-v9 .send-button{
    min-width:75px!important;
    height:40px!important;
    padding:0 15px!important;
    border-radius:9px!important;
    border:1px solid #0758cf!important;
    background:linear-gradient(180deg,#2b8dff 0%,#0861dc 55%,#0645b7 100%)!important;
    box-shadow:inset 0 2px 1px rgba(255,255,255,.48),0 2px 5px rgba(6,65,161,.3)!important;
    font-size:14px!important;
    font-weight:900!important;
}

@media(max-width:900px){
    .main-container.ui-reference-v9{
        width:calc(100vw - 8px)!important;
        grid-template-columns:146px minmax(0,1fr)!important;
    }
    .ui-reference-v9 .top-blue-bar.classic-side-panel{
        display:flex!important;
        flex-direction:column!important;
        min-height:0!important;
        padding:6px 4px 5px!important;
    }
    .ui-reference-v9 .side-brand-copy small,
    .ui-reference-v9 .side-section-title,
    .ui-reference-v9 .side-panel-spacer{display:block!important}
    .ui-reference-v9 .top-right-group.side-nav-group,
    .ui-reference-v9 .side-room-actions{display:flex!important}
    .ui-reference-v9 .side-system-item,
    .ui-reference-v9 .side-exit-item{display:flex!important}
    .ui-reference-v9 .room-tab-main{font-size:9px!important}
    .ui-reference-v9 .room-tab-main em{font-size:7px!important}
    .ui-reference-v9 .room-tab{padding-left:29px!important}
    .ui-reference-v9 .room-tab::before{width:23px!important;height:23px!important;left:3px!important;font-size:12px!important}
    .ui-reference-v9 .chat-title-block{min-width:auto!important}
    .ui-reference-v9 .chat-title-block small{display:none!important}
    .ui-reference-v9 #btnHorn.world-horn-btn{padding:0 8px!important}
    .ui-reference-v9 .mini-tool{width:45px!important}
}

/* =====================================================================
   V10 覆盖：恢复人物与装扮、完整房间名、资料页新配色
   ===================================================================== */
.ui-reference-v10 .room-tab{
    grid-template-columns:minmax(0,1fr)!important;
    padding:3px 2px 3px 32px!important;
}
.ui-reference-v10 .room-tab-main{
    grid-column:1!important;
    grid-row:1!important;
    align-self:center!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    max-width:100%!important;
    overflow:visible!important;
    white-space:nowrap!important;
    line-height:1!important;
}
.ui-reference-v10 .room-tab-name{
    display:block!important;
    color:inherit!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:13px!important;
    white-space:nowrap!important;
}
.ui-reference-v10 .room-tab-main em{
    display:block!important;
    margin-top:1px!important;
    font-size:8px!important;
    line-height:9px!important;
    white-space:nowrap!important;
}
.ui-reference-v10 .room-tab-current{
    grid-column:1!important;
    grid-row:2!important;
}
.ui-reference-v10 .player{
    width:160px!important;
    height:245px!important;
}
.ui-reference-v10 .player-name-row{
    bottom:-22px!important;
}
.ui-reference-v10 #btnDress .cute-dress-icon{
    font-size:17px!important;
    line-height:1!important;
}

/* 恢复“我的装扮”预设卡片，同时保留完整 QQShow 素材库。 */
.my-outfit-restored{
    margin:0 0 14px!important;
    padding:0!important;
    border-color:#b7ccef!important;
    background:linear-gradient(180deg,#fbfdff,#eef4ff)!important;
}
.my-outfit-restored[open]{
    padding:0 10px 11px!important;
}
.my-outfit-restored summary{
    color:#355c9b!important;
    background:linear-gradient(180deg,#fff,#edf4ff)!important;
}
.my-outfit-restored .dress-section-title{
    margin:10px 0 7px!important;
    font-size:13px!important;
}
.my-outfit-restored .dress-option-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:7px!important;
}
.my-outfit-restored .dress-option-card{
    min-width:0!important;
    padding:6px!important;
    border-width:1px!important;
    border-radius:11px!important;
}
.my-outfit-restored .dress-option-thumb{
    height:92px!important;
    margin-bottom:5px!important;
    border-radius:8px!important;
}
.my-outfit-restored .dress-option-name{
    margin-bottom:2px!important;
    font-size:11px!important;
    line-height:1.25!important;
}
.my-outfit-restored .dress-option-desc{
    min-height:29px!important;
    font-size:9px!important;
    line-height:1.3!important;
}
.my-outfit-restored .dress-option-need{
    font-size:8px!important;
    line-height:1.25!important;
}

/* 房间玩家资料：清透湖蓝主题。 */
#playerInfoModal:not(.rose-gold-profile){
    border-color:#3c9bd7!important;
    background:linear-gradient(180deg,#f8fdff,#dff5ff)!important;
    box-shadow:0 22px 52px rgba(26,105,158,.25),0 0 0 1px rgba(205,242,255,.9)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-head{
    background:linear-gradient(110deg,#167fbd 0%,#28a9dc 52%,#64d1e7 100%)!important;
    border-bottom-color:#4cb9df!important;
}
#playerInfoModal:not(.rose-gold-profile) .profile-modal-title{
    color:#fff!important;
    text-shadow:0 1px 2px rgba(6,72,116,.35)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-body{
    background:linear-gradient(180deg,#f7fdff,#e8f8ff)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-avatar{
    border-color:#43add9!important;
    box-shadow:0 0 0 4px #e3f8ff,0 5px 13px rgba(26,116,161,.2)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-name-line{
    color:#087caf!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-plan{
    color:#075f91!important;
    border-color:#69bfe2!important;
    background:linear-gradient(180deg,#e8fbff,#bdeafa)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-panel,
#playerInfoModal:not(.rose-gold-profile) .player-outfit-public-card{
    border-color:#a6d8eb!important;
    background:linear-gradient(180deg,#ffffff,#e7f7fd)!important;
    box-shadow:0 3px 10px rgba(31,119,159,.08)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-label,
#playerInfoModal:not(.rose-gold-profile) .player-outfit-public-title,
#playerInfoModal:not(.rose-gold-profile) .player-sheet-stat b{
    color:#147ba7!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-value,
#playerInfoModal:not(.rose-gold-profile) .player-sheet-stat{
    color:#244f66!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-action.gold{
    color:#fff!important;
    background:linear-gradient(180deg,#54c5e8,#188ec8)!important;
}
#playerInfoModal:not(.rose-gold-profile) .player-sheet-action.purple{
    color:#fff!important;
    background:linear-gradient(180deg,#5c9ee7,#326fc0)!important;
}

/* 个人资料：樱粉主题，与房间玩家资料明确区分。 */
#profileModal:not(.rose-gold-profile){
    border-color:#e36f9e!important;
    background:linear-gradient(180deg,#fff9fc,#ffe7f0)!important;
    box-shadow:0 22px 52px rgba(155,50,98,.25),0 0 0 1px rgba(255,221,235,.9)!important;
}
#profileModal:not(.rose-gold-profile) .profile-custom-head{
    background:linear-gradient(110deg,#d94f88 0%,#ef70a3 52%,#ff9fbd 100%)!important;
    border-bottom-color:#eb83ac!important;
}
#profileModal:not(.rose-gold-profile) .profile-custom-title{
    color:#fff!important;
    text-shadow:0 1px 2px rgba(125,35,76,.32)!important;
}
#profileModal:not(.rose-gold-profile) .profile-custom-title::after{
    background:linear-gradient(90deg,#fff,#ffd7e6)!important;
}
#profileModal:not(.rose-gold-profile) .profile-custom-body{
    background:linear-gradient(180deg,#fffafd,#ffedf4)!important;
}
#profileModal:not(.rose-gold-profile) .profile-avatar-circle{
    border-color:#ed85ae!important;
    box-shadow:0 0 0 4px #ffe6ef,0 5px 13px rgba(165,54,102,.18)!important;
}
#profileModal:not(.rose-gold-profile) .profile-hero-name,
#profileModal:not(.rose-gold-profile) .profile-section-title,
#profileModal:not(.rose-gold-profile) .profile-stats-card b{
    color:#b93e75!important;
}
#profileModal:not(.rose-gold-profile) .profile-plan-pill{
    color:#8e2858!important;
    border-color:#ef9aba!important;
    background:linear-gradient(180deg,#fff0f6,#ffcfe0)!important;
}
#profileModal:not(.rose-gold-profile) .profile-menu-card,
#profileModal:not(.rose-gold-profile) .profile-stats-card,
#profileModal:not(.rose-gold-profile) .avatar-scroll-shell{
    border-color:#efb0c9!important;
    background:linear-gradient(180deg,#fff,#ffeaf2)!important;
    box-shadow:0 3px 10px rgba(163,57,105,.07)!important;
}
#profileModal:not(.rose-gold-profile) .profile-menu-card.purple{
    color:#ad376d!important;
    border-color:#e88bb1!important;
    background:linear-gradient(180deg,#fff8fb,#ffdce9)!important;
}
#profileModal:not(.rose-gold-profile) .profile-menu-card.gold{
    color:#9b4a2a!important;
    border-color:#f2ad8d!important;
    background:linear-gradient(180deg,#fff8f2,#ffe1d3)!important;
}
#profileModal:not(.rose-gold-profile) .profile-input,
#profileModal:not(.rose-gold-profile) .profile-select{
    border-color:#e9a3bf!important;
    background:#fffafd!important;
}
#profileModal:not(.rose-gold-profile) .avatar-item.selected{
    border-color:#df5f93!important;
    box-shadow:0 0 0 3px rgba(223,95,147,.18),0 2px 7px rgba(135,40,83,.15)!important;
}
#profileModal:not(.rose-gold-profile) .save-profile-btn{
    background:linear-gradient(180deg,#f27eaa,#cf477e)!important;
    box-shadow:0 4px 10px rgba(148,43,89,.2)!important;
}

.vip-level-track{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

@media(max-width:900px){
    .ui-reference-v10 .room-tab{
        padding-left:25px!important;
    }
    .ui-reference-v10 .room-tab::before{
        width:20px!important;
        height:20px!important;
        left:2px!important;
        font-size:11px!important;
    }
    .ui-reference-v10 .room-tab-name{font-size:8px!important;line-height:10px!important}
    .ui-reference-v10 .room-tab-main em{font-size:6px!important;line-height:7px!important}
    .my-outfit-restored .dress-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* =====================================================================
   V11 账号互动优化：退出房间大厅 + 九种大型绮趣互动
   ===================================================================== */
.ui-reference-v10 #scene.lobby-empty-state{background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;}
.ui-reference-v10 #scene.lobby-empty-state::after{
    content:"已退出房间 · 点击顶部房间名称重新进入";
    position:absolute;
    left:50%;
    top:24px;
    transform:translateX(-50%);
    padding:7px 18px;
    border:1px solid rgba(80,133,213,.24);
    border-radius:999px;
    background:rgba(255,255,255,.68);
    color:#6681ad;
    font-size:12px;
    font-weight:800;
    letter-spacing:.3px;
    box-shadow:0 4px 12px rgba(63,104,170,.08),inset 0 1px 0 #fff;
    pointer-events:none;
}

#magicModal{
    width:min(720px,calc(100vw - 28px))!important;
    max-height:min(88vh,850px)!important;
    border:1px solid rgba(106,139,193,.52)!important;
    border-radius:24px!important;
    background:
        radial-gradient(circle at 15% -5%,rgba(111,214,255,.18),transparent 36%),
        radial-gradient(circle at 92% 9%,rgba(255,157,210,.17),transparent 32%),
        linear-gradient(180deg,#fbfdff 0%,#f3f7ff 100%)!important;
    box-shadow:0 26px 70px rgba(22,48,91,.32),inset 0 1px 0 #fff!important;
}
#magicModal .magic-modal-head{
    padding:17px 20px 13px!important;
    background:linear-gradient(115deg,rgba(224,245,255,.96),rgba(250,239,255,.96),rgba(255,244,224,.96));
    border-bottom:1px solid rgba(92,132,194,.19)!important;
}
#magicModal .magic-modal-title{
    font-size:25px!important;
    color:#246aa8!important;
    text-shadow:0 1px 0 #fff,0 4px 12px rgba(65,129,191,.16)!important;
}
#magicModal .magic-modal-title::after{
    content:"选择玩家与特效，双方人物会同步做出互动动作";
    display:block;
    margin-top:4px;
    color:#7d8daa;
    font-size:11px;
    font-weight:700;
    letter-spacing:0;
}
#magicModal .magic-modal-body{padding:13px 18px 16px!important;}
#magicModal .magic-step-title{
    margin:7px 0 9px!important;
    color:#536b95!important;
    font-size:13px!important;
    text-align:left!important;
}
#magicModal .magic-target-box{
    min-height:45px!important;
    margin-bottom:9px!important;
    border:1px solid #a8c7ed!important;
    border-radius:14px!important;
    color:#285d99!important;
    background:linear-gradient(180deg,#fff,#eef6ff)!important;
    box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(58,104,171,.08)!important;
}
#magicModal .magic-target-list{
    justify-content:flex-start!important;
    border-bottom:1px dashed rgba(97,130,181,.28)!important;
}
#magicModal .magic-target-chip{
    border-color:#b9cdea!important;
    color:#536d96!important;
    background:linear-gradient(180deg,#fff,#f0f5fc)!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 6px rgba(56,92,146,.07)!important;
}
#magicModal .magic-target-chip.active{
    color:#fff!important;
    border-color:#3988da!important;
    background:linear-gradient(180deg,#64bcff,#277bd6)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 0 0 3px rgba(52,143,230,.13),0 4px 10px rgba(37,108,183,.2)!important;
}
#magicModal .magic-spell-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
}
#magicModal .magic-spell-item{
    position:relative;
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr) auto;
    align-items:center;
    gap:11px;
    min-height:86px;
    padding:11px 12px!important;
    overflow:hidden;
    text-align:left!important;
    border:1px solid rgba(108,139,186,.3)!important;
    border-radius:17px!important;
    background:linear-gradient(145deg,#fff,#f5f8ff)!important;
    box-shadow:inset 0 1px 0 #fff,0 7px 16px rgba(37,69,115,.09)!important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
#magicModal .magic-spell-item::after{
    content:"";
    position:absolute;
    inset:auto -16px -28px auto;
    width:94px;
    height:94px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(85,171,255,.13),transparent 67%);
    pointer-events:none;
}
#magicModal .magic-spell-item:hover{transform:translateY(-2px) scale(1.012);box-shadow:inset 0 1px 0 #fff,0 11px 22px rgba(36,71,124,.15)!important;}
#magicModal .magic-spell-item.active{
    transform:translateY(-1px);
    border-color:#418fe4!important;
    background:linear-gradient(145deg,#fff,#eaf5ff)!important;
    box-shadow:inset 0 0 0 2px rgba(69,151,235,.16),0 0 0 3px rgba(76,157,237,.11),0 10px 24px rgba(42,101,169,.16)!important;
}
#magicModal .magic-spell-item.active::before{
    content:"已选择";
    position:absolute;
    right:8px;
    top:6px;
    color:#3a83ce;
    font-size:9px;
    font-weight:900;
}
.magic-spell-card-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:58px;
    height:58px;
    border-radius:18px;
    font-size:34px;
    background:radial-gradient(circle at 35% 27%,#fff 0 14%,#dff3ff 44%,#a9d8ff 100%);
    box-shadow:inset 0 2px 4px rgba(255,255,255,.9),0 5px 12px rgba(57,105,170,.16);
    filter:drop-shadow(0 2px 3px rgba(32,68,118,.12));
}
.magic-spell-copy{display:flex;flex-direction:column;min-width:0;gap:5px;}
#magicModal .magic-spell-name{margin:0!important;font-size:17px!important;line-height:1.1!important;}
.magic-spell-tagline{color:#74839b;font-size:11px;font-weight:700;line-height:1.35;white-space:normal;}
#magicModal .magic-spell-cost{
    align-self:end;
    margin-bottom:1px;
    padding:4px 7px;
    border-radius:999px;
    color:#537097!important;
    font-size:9px!important;
    white-space:nowrap;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(108,139,186,.22);
}
#magicModal .spell-bigfish .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#ccfbff 42%,#6ed6f5);}
#magicModal .spell-calf .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#fff1b9 42%,#ffbd56);}
#magicModal .spell-cage .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#ffe0ed 42%,#ff92ba);}
#magicModal .spell-peek .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#fff4bf 42%,#caa8ff);}
#magicModal .spell-hit .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#ffd5e8 42%,#ff6aa9);}
#magicModal .spell-kiss .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#ffe0f2 42%,#ed88d5);}
#magicModal .spell-catch .magic-spell-card-icon{background:conic-gradient(from 215deg,#ff8492,#ffd56d,#8ee991,#78c9ff,#be94ff,#ff8492);}
#magicModal .spell-crack .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#fff0bd 42%,#ff9fd1);}
#magicModal .spell-spit .magic-spell-card-icon{background:radial-gradient(circle at 32% 24%,#fff,#ffeaaa 42%,#ffad6b);}
#magicModal .magic-action-row{padding:13px 18px 16px!important;background:linear-gradient(180deg,rgba(246,249,255,.94),#edf3fc)!important;border-top-color:rgba(94,129,181,.2)!important;}
#magicModal .magic-action-btn{height:47px!important;min-width:142px!important;border-radius:14px!important;font-size:15px!important;}

.magic-cast-effect{
    top:-105px!important;
    min-width:210px!important;
    max-width:290px!important;
    padding:12px 16px 13px!important;
    border-radius:20px!important;
    animation:magicInfoFloatV11 4.2s cubic-bezier(.18,.82,.2,1) forwards!important;
}
.magic-cast-effect .magic-effect-icon{font-size:37px!important;}
.magic-cast-effect .magic-effect-title{font-size:18px!important;}
.magic-effect-pair{margin:3px 0 4px;color:#416b9f;font-size:10px;font-weight:900;letter-spacing:.25px;}
.magic-cast-effect .magic-effect-line{font-size:11px!important;}
.magic-player-aura{width:274px!important;height:340px!important;}
.magic-player-aura .magic-aura-core{width:70px!important;height:70px!important;font-size:40px!important;}
.magic-player-aura .magic-aura-particle{
    font-size:26px!important;
    transform:translate(-50%,-50%) scale(var(--scale,1));
    animation-duration:2.05s!important;
}

.magic-scene-interaction{z-index:78!important;}
.magic-target-burst{
    width:300px!important;
    height:300px!important;
    background:radial-gradient(circle,rgba(255,255,255,.54) 0 10%,rgba(107,202,255,.17) 28%,transparent 68%);
}
.magic-target-burst .magic-scene-special{
    position:absolute;
    inset:0;
    z-index:7;
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
}
.magic-target-burst .magic-special-prop{
    position:absolute!important;
    z-index:8!important;
    display:block;
    font-size:58px!important;
    line-height:1!important;
    opacity:0;
    filter:drop-shadow(0 0 12px #fff) drop-shadow(0 7px 8px rgba(24,52,91,.18))!important;
    animation:magicPropReveal 3.55s cubic-bezier(.17,.83,.2,1) forwards!important;
}
.magic-target-burst .magic-special-prop.prop-1{transform:translate(-82px,10px) rotate(-13deg);animation-delay:.08s!important;}
.magic-target-burst .magic-special-prop.prop-2{font-size:80px!important;transform:translate(0,-7px);animation-delay:.16s!important;}
.magic-target-burst .magic-special-prop.prop-3{transform:translate(82px,12px) rotate(13deg);animation-delay:.25s!important;}
.magic-target-burst>i,.magic-target-burst>b{
    inset:28px!important;
    border-width:4px!important;
    animation-duration:3.55s!important;
}
.magic-target-burst>b{inset:64px!important;}
.magic-scene-orbit{
    position:absolute;
    inset:0;
    z-index:6;
    border-radius:50%;
    animation:magicOrbitTurn 3.7s linear forwards;
}
.magic-target-burst .magic-scene-orbit span{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:6!important;
    display:block;
    margin:-15px;
    font-size:25px!important;
    line-height:30px!important;
    opacity:0;
    transform:rotate(var(--a)) translateX(132px) rotate(calc(-1 * var(--a)));
    filter:drop-shadow(0 0 6px #fff)!important;
    animation:magicOrbitBit 3.4s var(--delay,0s) ease-out forwards!important;
}
.magic-scene-caption{
    position:absolute;
    z-index:12;
    transform:translate(-50%,-50%);
    min-width:205px;
    padding:8px 15px;
    border-radius:999px;
    color:#315f98;
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(235,246,255,.9));
    border:1px solid rgba(104,162,222,.48);
    box-shadow:0 8px 22px rgba(27,75,132,.17),inset 0 1px 0 #fff;
    text-align:center;
    font-size:12px;
    font-weight:900;
    letter-spacing:.25px;
    opacity:0;
    animation:magicCaptionFloat 4s ease-out forwards;
}
.magic-interaction-link{z-index:4;}
.magic-link-beam{height:9px!important;top:-4px!important;animation-duration:3.1s!important;}
.magic-link-particle{font-size:23px!important;animation-duration:2.25s!important;}

.magic-scene-interaction.spell-bigfish .magic-target-burst{background:radial-gradient(circle,rgba(231,255,255,.84),rgba(70,213,244,.25) 34%,transparent 70%);}
.magic-scene-interaction.spell-calf .magic-target-burst{background:radial-gradient(circle,rgba(255,251,218,.9),rgba(255,188,67,.25) 34%,transparent 70%);}
.magic-scene-interaction.spell-cage .magic-target-burst{background:radial-gradient(circle,rgba(255,241,249,.92),rgba(255,110,169,.24) 34%,transparent 70%);}
.magic-scene-interaction.spell-peek .magic-target-burst{background:radial-gradient(circle,rgba(255,250,217,.92),rgba(164,126,245,.22) 34%,transparent 70%);}
.magic-scene-interaction.spell-hit .magic-target-burst{background:radial-gradient(circle,rgba(255,237,247,.94),rgba(255,61,138,.28) 34%,transparent 70%);}
.magic-scene-interaction.spell-kiss .magic-target-burst{background:radial-gradient(circle,rgba(255,241,251,.94),rgba(240,103,190,.24) 34%,transparent 70%);}
.magic-scene-interaction.spell-catch .magic-target-burst{background:conic-gradient(from 180deg,rgba(255,94,110,.08),rgba(255,208,75,.16),rgba(80,221,127,.14),rgba(84,166,255,.16),rgba(181,104,255,.13),rgba(255,94,110,.08));}
.magic-scene-interaction.spell-crack .magic-target-burst{background:radial-gradient(circle,rgba(255,253,226,.95),rgba(255,132,194,.23) 36%,transparent 70%);}
.magic-scene-interaction.spell-spit .magic-target-burst{background:radial-gradient(circle,rgba(255,250,221,.95),rgba(255,150,70,.24) 36%,transparent 70%);}
.magic-scene-interaction.spell-calf .prop-1{animation-name:magicClapLeft!important;}
.magic-scene-interaction.spell-calf .prop-3{animation-name:magicClapRight!important;}
.magic-scene-interaction.spell-cage .magic-scene-special{animation:magicRibbonOrbit 3.6s ease-in-out forwards;}
.magic-scene-interaction.spell-peek .prop-1,.magic-scene-interaction.spell-peek .prop-3{animation-name:magicPeekEyes!important;}
.magic-scene-interaction.spell-hit .prop-2{animation-name:magicHeartBeat!important;}
.magic-scene-interaction.spell-kiss .magic-special-prop{animation-name:magicKissFlight!important;}
.magic-scene-interaction.spell-catch .prop-2{font-size:94px!important;animation-name:magicRainbowRise!important;}
.magic-scene-interaction.spell-crack .prop-2{font-size:94px!important;animation-name:magicGiftPop!important;}
.magic-scene-interaction.spell-spit .magic-scene-special{animation:magicFunnyWobble .38s ease-in-out 8;}

@keyframes magicInfoFloatV11{0%{opacity:0;transform:translate(-50%,20px) scale(.7)}12%{opacity:1;transform:translate(-50%,0) scale(1.04)}72%{opacity:1;transform:translate(-50%,-10px) scale(1)}100%{opacity:0;transform:translate(-50%,-44px) scale(.9)}}
@keyframes magicPropReveal{0%{opacity:0;scale:.25}18%{opacity:1;scale:1.18}64%{opacity:1;scale:1}100%{opacity:0;scale:1.3}}
@keyframes magicOrbitTurn{from{transform:rotate(-24deg) scale(.72)}to{transform:rotate(156deg) scale(1.1)}}
@keyframes magicOrbitBit{0%{opacity:0}16%{opacity:1}74%{opacity:1}100%{opacity:0}}
@keyframes magicCaptionFloat{0%{opacity:0;transform:translate(-50%,18px) scale(.75)}14%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-78%) scale(.92)}}
@keyframes magicClapLeft{0%{opacity:0;translate:-35px 0;scale:.3}22%{opacity:1;translate:30px 0;scale:1.25}38%,62%{opacity:1;translate:4px 0;scale:1}100%{opacity:0;translate:-50px -18px;scale:1.2}}
@keyframes magicClapRight{0%{opacity:0;translate:35px 0;scale:.3}22%{opacity:1;translate:-30px 0;scale:1.25}38%,62%{opacity:1;translate:-4px 0;scale:1}100%{opacity:0;translate:50px -18px;scale:1.2}}
@keyframes magicRibbonOrbit{0%{transform:rotate(-22deg) scale(.7)}35%{transform:rotate(16deg) scale(1.08)}100%{transform:rotate(82deg) scale(1.2)}}
@keyframes magicPeekEyes{0%{opacity:0;scale:.2}24%{opacity:1;scale:1.25}38%,50%{scale:.45 1.1}60%,78%{opacity:1;scale:1}100%{opacity:0;scale:1.25}}
@keyframes magicHeartBeat{0%{opacity:0;scale:.2}18%{opacity:1;scale:1.28}30%{scale:.86}44%{scale:1.35}58%{scale:.92}74%{opacity:1;scale:1.18}100%{opacity:0;scale:1.8}}
@keyframes magicKissFlight{0%{opacity:0;translate:-58px 52px;scale:.35}24%{opacity:1;translate:0 0;scale:1.16}74%{opacity:1;translate:48px -36px;scale:1}100%{opacity:0;translate:96px -94px;scale:1.45}}
@keyframes magicRainbowRise{0%{opacity:0;translate:0 55px;scale:.35}26%,76%{opacity:1;translate:0 0;scale:1.12}100%{opacity:0;translate:0 -42px;scale:1.35}}
@keyframes magicGiftPop{0%{opacity:0;translate:0 46px;scale:.25;rotate:-12deg}26%{opacity:1;translate:0 0;scale:1.24;rotate:7deg}70%{opacity:1;scale:1;rotate:-3deg}100%{opacity:0;translate:0 -50px;scale:1.32;rotate:9deg}}
@keyframes magicFunnyWobble{0%,100%{transform:rotate(-3deg) translateX(-3px)}50%{transform:rotate(3deg) translateX(3px)}}

@media(max-width:700px){
    #magicModal{width:calc(100vw - 18px)!important;max-height:90vh!important;}
    #magicModal .magic-spell-list{grid-template-columns:1fr!important;}
    #magicModal .magic-spell-item{min-height:78px;grid-template-columns:54px minmax(0,1fr) auto;padding:9px 10px!important;}
    .magic-spell-card-icon{width:50px;height:50px;font-size:29px;border-radius:15px;}
    .magic-target-burst{width:240px!important;height:240px!important;}
    .magic-target-burst .magic-scene-orbit span{transform:rotate(var(--a)) translateX(104px) rotate(calc(-1 * var(--a)));}
    .magic-target-burst .magic-special-prop.prop-1{transform:translate(-64px,10px) rotate(-13deg);}
    .magic-target-burst .magic-special-prop.prop-3{transform:translate(64px,12px) rotate(13deg);}
}

/* V12：绮趣互动弹窗缩到与系统设置接近的尺寸，保留九种完整效果。 */
#magicModal{
    width:min(500px,calc(100vw - 30px))!important;
    max-height:min(690px,calc(100vh - 36px))!important;
    border-radius:17px!important;
}
#magicModal .magic-modal-head{padding:10px 14px 8px!important;}
#magicModal .magic-modal-title{font-size:20px!important;}
#magicModal .magic-modal-title::after{margin-top:2px!important;font-size:10px!important;}
#magicModal .magic-modal-body{padding:8px 11px 10px!important;}
#magicModal .magic-step-title{margin:4px 0 6px!important;font-size:12px!important;}
#magicModal .magic-target-box{min-height:36px!important;margin-bottom:5px!important;border-radius:10px!important;font-size:15px!important;}
#magicModal .magic-target-list{gap:5px!important;padding:1px 0 7px!important;margin-bottom:5px!important;}
#magicModal .magic-target-chip{min-width:60px!important;height:28px!important;padding:0 9px!important;font-size:11px!important;}
#magicModal .magic-spell-list{gap:7px!important;}
#magicModal .magic-spell-item{
    grid-template-columns:44px minmax(0,1fr) auto!important;
    gap:7px!important;
    min-height:61px!important;
    padding:7px 8px!important;
    border-radius:12px!important;
}
#magicModal .magic-spell-card-icon{width:40px!important;height:40px!important;border-radius:12px!important;font-size:25px!important;}
#magicModal .magic-spell-copy{gap:2px!important;}
#magicModal .magic-spell-name{font-size:14px!important;}
#magicModal .magic-spell-tagline{font-size:9px!important;line-height:1.25!important;}
#magicModal .magic-spell-cost{padding:3px 5px!important;font-size:8px!important;}
#magicModal .magic-spell-item.active::before{right:6px!important;top:3px!important;font-size:8px!important;}
#magicModal .magic-action-row{padding:9px 12px 10px!important;gap:9px!important;}
#magicModal .magic-action-btn{height:38px!important;min-width:112px!important;border-radius:10px!important;font-size:13px!important;}
@media(max-width:700px){
    #magicModal .magic-spell-list{grid-template-columns:1fr!important;}
    #magicModal .magic-spell-item{min-height:58px!important;}
}

/* 好友邀请按钮与合影反馈：对应系统设置中的两个拒绝开关。 */
.friend-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;color:#355b8e;}
.friend-item-actions{display:flex;align-items:center;gap:4px;margin-left:7px;}
.friend-action-btn,.friend-del-btn{padding:4px 7px!important;border:0;border-radius:7px;color:#fff;font-size:11px;font-weight:800;cursor:pointer;}
.friend-action-btn.room{background:linear-gradient(180deg,#5bb7ff,#2378d1);}
.friend-action-btn.photo{background:linear-gradient(180deg,#ff91c7,#de448d);}
.friend-del-btn{background:linear-gradient(180deg,#ff9c9c,#e75f65)!important;}
.friend-photo-moment{
    position:absolute;
    left:50%;
    top:42%;
    z-index:120;
    min-width:220px;
    padding:18px 26px 16px;
    transform:translate(-50%,-50%);
    display:flex;
    flex-direction:column;
    align-items:center;
    border:2px solid rgba(255,255,255,.92);
    border-radius:22px;
    background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(230,243,255,.94),rgba(255,226,243,.94));
    color:#32669d;
    box-shadow:0 18px 46px rgba(22,59,104,.3),0 0 0 999px rgba(255,255,255,.08);
    animation:friendPhotoMoment 3.35s ease-out forwards;
    pointer-events:none;
}
.friend-photo-camera{font-size:50px;filter:drop-shadow(0 6px 10px rgba(32,73,118,.2));}
.friend-photo-moment strong{margin-top:3px;font-size:19px;}
.friend-photo-moment small{margin-top:5px;color:#7a648c;font-size:12px;font-weight:800;}
.friend-photo-posing .player-visual{transform-origin:50% 88%;animation:friendPhotoPose .6s ease-in-out 5!important;filter:drop-shadow(0 0 13px rgba(255,244,167,.9));}
@keyframes friendPhotoMoment{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}12%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}20%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}86%{filter:brightness(2.2)}100%{opacity:0;transform:translate(-50%,-58%) scale(.92)}}
@keyframes friendPhotoPose{0%,100%{transform:rotate(0) translateY(0)}50%{transform:rotate(-2deg) translateY(-5px)}}

/* =====================================================================
   V16.2：人物标签、成长值玫瑰金、充值入口与尊享等级可读性
   ===================================================================== */
.ui-reference-v10 .player-name-row{
    left:50%!important;
    bottom:-22px!important;
    width:max-content!important;
    min-width:0!important;
    display:block!important;
    transform:translateX(-50%)!important;
    overflow:visible!important;
}
.ui-reference-v10 .player-name-row .name-tag{
    position:relative!important;
    z-index:3!important;
    display:block!important;
    margin:0!important;
    text-align:center!important;
}
.ui-reference-v10 .player-vip-mini{
    position:absolute!important;
    z-index:2!important;
    right:calc(100% + 3px)!important;
    top:50%!important;
    width:auto!important;
    min-width:31px!important;
    height:24px!important;
    margin:0!important;
    padding:0!important;
    transform:translateY(-50%)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
}
.ui-reference-v10 .player-vip-mini i{
    width:25px!important;
    height:22px!important;
    flex:0 0 25px!important;
    filter:drop-shadow(0 0 4px rgba(255,232,147,.92)) drop-shadow(0 2px 2px rgba(62,37,0,.35))!important;
}
.ui-reference-v10 .player-vip-mini b{
    margin:0 0 0 -2px!important;
    padding:0!important;
    color:#fff0a2!important;
    font-size:11px!important;
    line-height:1!important;
    text-shadow:0 1px 2px #603700,0 0 5px rgba(255,210,80,.9)!important;
}

.player.rose-gold-player .name-tag{
    position:relative!important;
    overflow:hidden!important;
    color:#fff8de!important;
    border-color:#f2c59f!important;
    background:linear-gradient(110deg,#6d302e 0%,#b76059 25%,#efb399 48%,#9d4845 72%,#f2c09f 100%)!important;
    background-size:220% 100%!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 0 5px #ffe2bd,0 0 11px rgba(224,133,104,.82),0 2px 5px rgba(92,39,35,.36)!important;
    text-shadow:0 1px 1px #713432,0 0 5px rgba(255,247,220,.72)!important;
    animation:roseGoldNameGlow 1.8s ease-in-out infinite,roseGoldNameSweep 3s linear infinite!important;
}
.player.rose-gold-player .name-tag::after{
    content:"";
    position:absolute;
    top:-55%;
    bottom:-55%;
    left:-30px;
    width:18px;
    transform:rotate(18deg);
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);
    animation:roseGoldTinySpark 2.2s ease-in-out infinite;
}
@keyframes roseGoldNameGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.18)}}
@keyframes roseGoldNameSweep{to{background-position:-220% 0}}
@keyframes roseGoldTinySpark{0%,28%{left:-30px;opacity:0}38%{opacity:1}70%{left:calc(100% + 12px);opacity:.75}78%,100%{left:calc(100% + 12px);opacity:0}}

.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    z-index:12!important;
    overflow:visible!important;
}
.rank-big-emblem{
    position:relative!important;
    overflow:visible!important;
}
.rank-big-emblem b,
.rank-big-emblem #rankModalLevel{
    position:absolute!important;
    right:4px!important;
    bottom:7px!important;
    z-index:12!important;
    min-width:30px!important;
    height:30px!important;
    margin:0!important;
    padding:0 7px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #a85d00!important;
    border-radius:16px!important;
    color:#643400!important;
    background:linear-gradient(180deg,#fffce7 0%,#ffdb68 54%,#eea715 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 7px rgba(67,33,0,.42),0 0 8px rgba(255,217,92,.72)!important;
    font-size:15px!important;
    line-height:1!important;
    text-shadow:none!important;
}

.player-sheet-kick-top.locked{
    color:#667181!important;
    border-color:#aeb6c0!important;
    background:linear-gradient(180deg,#f4f6f8,#d7dce2)!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 6px rgba(47,61,76,.14)!important;
    filter:saturate(.45)!important;
}
.player-sheet-kick-top.locked:hover{
    filter:saturate(.6) brightness(1.03)!important;
}

.recharge-setting-card{
    width:100%;
    min-height:64px;
    margin:0 0 12px;
    padding:9px 12px;
    display:grid;
    grid-template-columns:48px 1fr 20px;
    align-items:center;
    gap:10px;
    border:1px solid #e1b75f;
    border-radius:12px;
    color:#4c3b65;
    background:linear-gradient(120deg,#fffdf7 0%,#fff2d6 54%,#f7e4ff 100%);
    box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(105,74,130,.11);
    cursor:pointer;
    text-align:left;
}
.recharge-setting-card:hover{transform:translateY(-1px);filter:brightness(1.025);box-shadow:inset 0 1px 0 #fff,0 6px 15px rgba(105,74,130,.17)}
.recharge-setting-copy{display:flex;flex-direction:column;gap:3px}
.recharge-setting-copy b{font-size:14px;color:#6b448b}
.recharge-setting-copy small{font-size:11px;color:#8a7d91}
.recharge-setting-arrow{font-size:25px;line-height:1;color:#bd7a2d;text-align:right}
.premium-diamond-icon{
    position:relative;
    width:45px;
    height:40px;
    display:block;
    filter:drop-shadow(0 4px 5px rgba(28,83,179,.32)) drop-shadow(0 0 8px rgba(74,219,255,.55));
}
.premium-diamond-icon::before{
    content:"";
    position:absolute;
    inset:2px 3px 1px;
    clip-path:polygon(18% 4%,82% 4%,100% 34%,50% 100%,0 34%);
    background:linear-gradient(135deg,#efffff 0%,#68e9ff 28%,#478cff 55%,#9e63ff 100%);
    border-radius:4px;
}
.premium-diamond-icon::after{
    content:"";
    position:absolute;
    left:6px;right:6px;top:4px;height:15px;
    clip-path:polygon(0 0,43% 0,50% 100%,57% 0,100% 0,82% 100%,18% 100%);
    background:rgba(255,255,255,.62);
}
.premium-diamond-icon i{
    position:absolute;
    z-index:2;
    left:10px;
    top:4px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 0 8px 3px rgba(255,255,255,.85);
    animation:premiumDiamondSpark 1.7s ease-in-out infinite;
}
@keyframes premiumDiamondSpark{0%,100%{transform:scale(.45);opacity:.35}50%{transform:scale(1);opacity:1}}

#profileModal.rose-gold-profile,
#playerInfoModal.rose-gold-profile{
    position:fixed!important;
    isolation:isolate!important;
    overflow:hidden!important;
    border:2px solid #efc0a3!important;
    background:linear-gradient(145deg,#3e171f 0%,#7b3339 24%,#c87568 52%,#6a2932 76%,#30141c 100%)!important;
    box-shadow:0 24px 58px rgba(65,22,28,.55),0 0 0 2px rgba(255,224,194,.32),0 0 20px rgba(238,156,122,.7),0 0 42px rgba(190,91,91,.38)!important;
    animation:roseGoldProfileGlow 2.4s ease-in-out infinite!important;
}
#profileModal.rose-gold-profile::before,
#playerInfoModal.rose-gold-profile::before{
    content:"";
    position:absolute;
    z-index:0;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 7% 12%,#fff 0 1px,transparent 2px),
        radial-gradient(circle at 91% 18%,#ffe6b7 0 1.5px,transparent 3px),
        radial-gradient(circle at 14% 70%,#fff4cf 0 1px,transparent 2.5px),
        radial-gradient(circle at 83% 79%,#fff 0 1.2px,transparent 2.5px),
        radial-gradient(circle at 65% 43%,rgba(255,255,255,.9) 0 1px,transparent 2.5px),
        linear-gradient(110deg,transparent 12%,rgba(255,255,255,.18) 23%,transparent 34%);
    background-size:83px 89px,119px 103px,137px 127px,101px 97px,151px 139px,260% 100%;
    animation:roseGoldProfileSpark 4.6s linear infinite;
}
#profileModal.rose-gold-profile::after,
#playerInfoModal.rose-gold-profile::after{
    content:"";
    position:absolute;
    z-index:0;
    inset:6px;
    pointer-events:none;
    border:1px solid rgba(255,237,208,.72);
    border-radius:13px;
    box-shadow:inset 0 0 16px rgba(255,211,176,.25),0 0 10px rgba(255,205,171,.22);
}
#profileModal.rose-gold-profile>* ,
#playerInfoModal.rose-gold-profile>*{position:relative;z-index:1}
#profileModal.rose-gold-profile .profile-custom-head,
#playerInfoModal.rose-gold-profile .profile-modal-head{
    background:linear-gradient(100deg,#57212b 0%,#a74f50 38%,#e3a17e 63%,#74303a 100%)!important;
    border-bottom-color:#f0c09f!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 13px rgba(68,21,27,.25)!important;
}
#profileModal.rose-gold-profile .profile-custom-body,
#playerInfoModal.rose-gold-profile .player-sheet-body{
    background:linear-gradient(150deg,rgba(255,250,244,.97),rgba(250,219,207,.96) 48%,rgba(255,244,229,.97))!important;
}
#profileModal.rose-gold-profile .profile-hero-name,
#playerInfoModal.rose-gold-profile .player-sheet-name-line>span:first-child{
    color:#8e3f43!important;
    text-shadow:0 1px 0 #fff,0 0 8px rgba(255,191,153,.65)!important;
}
#profileModal.rose-gold-profile .profile-avatar-circle,
#playerInfoModal.rose-gold-profile .player-sheet-avatar{
    border-color:#efb488!important;
    box-shadow:0 0 0 4px #fff1e1,0 0 13px #e9a178,0 6px 16px rgba(100,39,39,.28)!important;
}
@keyframes roseGoldProfileGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.035)}}
@keyframes roseGoldProfileSpark{0%{background-position:0 0,0 0,0 0,0 0,0 0,120% 0}100%{background-position:83px 89px,-119px 103px,137px -127px,-101px -97px,151px 139px,-130% 0}}

/* =====================================================================
   V16.3：2000成长身份改为偏黄金色，消除偏红观感
   ===================================================================== */
.room-player-picker-rose{display:none!important}
.room-player-picker-item.rose-gold-player{
    border-color:#d6a62b!important;
    background:linear-gradient(112deg,#fffdf1 0%,#ffefb9 28%,#e3bc58 53%,#fff5ce 74%,#d9a937 100%)!important;
    background-size:220% 100%!important;
    box-shadow:inset 0 1px 0 #fff,0 4px 14px rgba(139,95,6,.25),0 0 10px rgba(255,215,86,.48)!important;
    animation:goldIdentityPulse 1.8s ease-in-out infinite,goldIdentityFlow 4.4s linear infinite!important;
}
.room-player-picker-item.rose-gold-player::after{
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),rgba(255,237,143,.8),transparent)!important;
}
.room-player-picker-item.rose-gold-player .room-player-picker-avatar{
    border-color:#e1ad27!important;
    box-shadow:0 0 0 2px #fff9df,0 0 10px rgba(244,188,42,.62),0 3px 9px rgba(104,70,0,.24)!important;
}
.room-player-picker-item.rose-gold-player .room-player-picker-name{
    color:#684700!important;
    text-shadow:0 1px 0 #fff7d3,0 0 6px rgba(255,242,179,.9)!important;
}
.room-player-picker-item.rose-gold-player .room-player-picker-vip{
    color:#654000!important;
    border-color:#cf9820!important;
    background:linear-gradient(180deg,#fff9dc,#efca6b)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 6px rgba(244,190,43,.35)!important;
}

.player.rose-gold-player .name-tag{
    color:#563600!important;
    border-color:#d89c13!important;
    background:linear-gradient(105deg,#bc7804 0%,#ffe580 23%,#fffbd6 45%,#edbd3f 68%,#fff0a2 86%,#b66e00 100%)!important;
    background-size:240% 100%!important;
    box-shadow:inset 0 1px 0 #fff,0 0 6px #fff2a9,0 0 13px rgba(255,198,48,.9),0 2px 5px rgba(92,57,0,.38)!important;
    text-shadow:0 1px 0 rgba(255,255,255,.9),0 0 4px rgba(255,248,193,.9)!important;
    animation:goldNameGlow 1.65s ease-in-out infinite,goldNameSweep 3.2s linear infinite!important;
}
.player.rose-gold-player .name-tag::after{
    background:linear-gradient(90deg,transparent,#fff,rgba(255,248,191,.95),transparent)!important;
}

#profileModal.rose-gold-profile,
#playerInfoModal.rose-gold-profile{
    border-color:#f1c34d!important;
    background:linear-gradient(145deg,#3d2b00 0%,#785407 24%,#c99b2f 49%,#765004 75%,#2f2100 100%)!important;
    box-shadow:0 24px 58px rgba(58,40,0,.48),0 0 0 2px rgba(255,237,162,.38),0 0 22px rgba(255,205,58,.76),0 0 46px rgba(198,139,7,.42)!important;
    animation:goldProfileGlow 2.25s ease-in-out infinite!important;
}
#profileModal.rose-gold-profile::before,
#playerInfoModal.rose-gold-profile::before{
    background:
        radial-gradient(circle at 7% 12%,#fff 0 1.2px,transparent 2.4px),
        radial-gradient(circle at 91% 18%,#fff0a9 0 1.8px,transparent 3.2px),
        radial-gradient(circle at 14% 70%,#fff8ce 0 1.2px,transparent 2.7px),
        radial-gradient(circle at 83% 79%,#fff 0 1.4px,transparent 2.7px),
        radial-gradient(circle at 65% 43%,#ffe273 0 1.2px,transparent 2.8px),
        linear-gradient(110deg,transparent 12%,rgba(255,255,255,.28) 23%,transparent 34%)!important;
    background-size:83px 89px,119px 103px,137px 127px,101px 97px,151px 139px,260% 100%!important;
}
#profileModal.rose-gold-profile::after,
#playerInfoModal.rose-gold-profile::after{
    border-color:rgba(255,240,158,.88)!important;
    box-shadow:inset 0 0 18px rgba(255,224,96,.32),0 0 11px rgba(255,215,70,.34)!important;
}
#profileModal.rose-gold-profile .profile-custom-head,
#playerInfoModal.rose-gold-profile .profile-modal-head{
    color:#fffdf0!important;
    background:linear-gradient(100deg,#5b3d00 0%,#a7740b 34%,#e3b93f 60%,#8a5b00 100%)!important;
    border-bottom-color:#f2d16e!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 3px 13px rgba(74,49,0,.3)!important;
}
#profileModal.rose-gold-profile .profile-custom-title,
#playerInfoModal.rose-gold-profile .profile-modal-title{
    color:#fffef4!important;
    text-shadow:0 1px 2px #684500,0 0 9px rgba(255,239,157,.7)!important;
}
#profileModal.rose-gold-profile .profile-custom-title::after,
#playerInfoModal.rose-gold-profile .profile-modal-title::after{
    background:linear-gradient(90deg,#fffce1,#ffd95c)!important;
}
#profileModal.rose-gold-profile .profile-custom-body,
#playerInfoModal.rose-gold-profile .player-sheet-body{
    background:linear-gradient(145deg,rgba(255,254,244,.98),rgba(250,231,168,.97) 48%,rgba(255,248,216,.98))!important;
}
#profileModal.rose-gold-profile .profile-hero-name,
#playerInfoModal.rose-gold-profile .player-sheet-name-line>span:first-child{
    color:#785300!important;
    text-shadow:0 1px 0 #fff,0 0 9px rgba(255,207,61,.66)!important;
}
#profileModal.rose-gold-profile .profile-avatar-circle,
#playerInfoModal.rose-gold-profile .player-sheet-avatar{
    border-color:#e7b52d!important;
    box-shadow:0 0 0 4px #fff8d7,0 0 15px #f0c64f,0 6px 17px rgba(91,61,0,.27)!important;
}
#profileModal.rose-gold-profile .profile-plan-pill,
#playerInfoModal.rose-gold-profile .player-sheet-plan{
    color:#664300!important;
    border-color:#d4a11f!important;
    background:linear-gradient(180deg,#fff9da,#ecc45c)!important;
    box-shadow:inset 0 1px 0 #fff,0 3px 9px rgba(116,78,0,.16)!important;
}
#profileModal.rose-gold-profile .profile-menu-card,
#profileModal.rose-gold-profile .profile-stats-card,
#profileModal.rose-gold-profile .avatar-scroll-shell,
#playerInfoModal.rose-gold-profile .player-sheet-panel,
#playerInfoModal.rose-gold-profile .player-outfit-public-card{
    border-color:#e0bc58!important;
    background:linear-gradient(180deg,#fffef7,#faedbe)!important;
    box-shadow:0 3px 11px rgba(115,76,0,.1),inset 0 1px 0 #fff!important;
}
#profileModal.rose-gold-profile .profile-section-title,
#profileModal.rose-gold-profile .profile-stats-card b,
#playerInfoModal.rose-gold-profile .player-sheet-label,
#playerInfoModal.rose-gold-profile .player-outfit-public-title,
#playerInfoModal.rose-gold-profile .player-sheet-stat b{
    color:#805900!important;
}
#profileModal.rose-gold-profile .profile-input,
#profileModal.rose-gold-profile .profile-select{
    border-color:#d8ad38!important;
    background:#fffdf2!important;
}
#profileModal.rose-gold-profile .save-profile-btn,
#playerInfoModal.rose-gold-profile .player-sheet-action.gold{
    color:#fff!important;
    border-color:#9c6900!important;
    background:linear-gradient(180deg,#e9bc43,#a66c03)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 4px 11px rgba(105,67,0,.25)!important;
}
#profileModal.rose-gold-profile .profile-menu-card.purple,
#profileModal.rose-gold-profile .profile-menu-card.gold,
#playerInfoModal.rose-gold-profile .player-sheet-action.purple{
    color:#684500!important;
    border-color:#d1a12a!important;
    background:linear-gradient(180deg,#fff9d8,#e8bf55)!important;
    box-shadow:inset 0 1px 0 #fff,0 3px 9px rgba(110,73,0,.16)!important;
}
#playerInfoModal.rose-gold-profile .player-sheet-action.soft{
    color:#765300!important;
    border-color:#dfbd5d!important;
    background:linear-gradient(180deg,#fffef7,#f8e9b2)!important;
}
#profileModal.rose-gold-profile .player-info-rank,
#playerInfoModal.rose-gold-profile .player-info-rank{
    border-color:#e0ae26!important;
    background:linear-gradient(155deg,#5a3b00,#b57a08 52%,#4d3300)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 0 9px rgba(244,191,43,.55)!important;
}
#profileModal.rose-gold-profile .player-info-rank b,
#playerInfoModal.rose-gold-profile .player-info-rank b{color:#fff0a3!important;text-shadow:0 1px 1px #654000!important}

/* 左侧等级数字移到图标之外，直接显示“Lv.数字”，避免被星形遮挡。 */
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    left:auto!important;
    right:7px!important;
    top:auto!important;
    bottom:6px!important;
    width:auto!important;
    min-width:35px!important;
    height:18px!important;
    padding:0 5px!important;
    border-radius:9px!important;
    color:#5b3900!important;
    background:linear-gradient(180deg,#fffde7,#ffd75e)!important;
    border:1px solid #b97800!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(76,47,0,.35),0 0 6px rgba(255,218,84,.6)!important;
    font-size:10px!important;
    line-height:18px!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number::before{content:"Lv.";font-size:8px;margin-right:1px}
.rank-big-emblem #rankModalLevel{
    right:-13px!important;
    bottom:5px!important;
    min-width:36px!important;
    height:34px!important;
    border-radius:18px!important;
    font-size:17px!important;
}

@keyframes goldIdentityPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.09)}}
@keyframes goldIdentityFlow{to{background-position:-220% 0}}
@keyframes goldNameGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.16)}}
@keyframes goldNameSweep{to{background-position:-240% 0}}
@keyframes goldProfileGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.035)}}

/* =====================================================================
   V16.4：等级数字独立显示、奢华金昵称、立体 VIP 与尊享充值入口
   ===================================================================== */

/* 左侧尊享等级：数字使用真实“Lv.数字”文字，不再依赖伪元素，也不再压在星形上。 */
.ui-reference-v9 .vip-rank-badge.side-vip-entry,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.elite,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty{
    overflow:visible!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-label{
    position:relative!important;
    z-index:4!important;
    transform:translateY(-7px)!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon img{
    overflow:visible!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon img{
    filter:saturate(1.18) contrast(1.06)
        drop-shadow(0 1px 1px rgba(255,255,255,.92))
        drop-shadow(0 0 5px rgba(255,240,170,.95))
        drop-shadow(0 0 11px rgba(255,180,35,.72))
        drop-shadow(0 3px 4px rgba(71,39,0,.42))!important;
    animation:vipMetalBreath 2.1s ease-in-out infinite!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    left:auto!important;
    right:11px!important;
    top:auto!important;
    bottom:5px!important;
    z-index:30!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:auto!important;
    min-width:48px!important;
    height:22px!important;
    padding:0 8px!important;
    border:1px solid #8d5600!important;
    border-radius:11px!important;
    color:#4b2c00!important;
    background:linear-gradient(180deg,#fffde3 0%,#ffe06d 42%,#d99509 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 7px rgba(255,225,118,.88),0 2px 5px rgba(63,35,0,.42)!important;
    font-size:11px!important;
    font-weight:1000!important;
    line-height:22px!important;
    letter-spacing:.2px!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number::before{content:none!important;display:none!important}
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty .vip-rank-number{
    color:#545b66!important;
    border-color:#8e99a8!important;
    background:linear-gradient(180deg,#f9fbfd,#cbd2da)!important;
    box-shadow:inset 0 1px 0 #fff,0 2px 4px rgba(31,45,60,.24)!important;
}

/* =====================================================================
   V16.5：等级数字固定在标题下方，VIP改为独立开通
   ===================================================================== */
.ui-reference-v9 .vip-rank-badge.side-vip-entry,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.elite,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty{
    position:relative!important;
    overflow:hidden!important;
    padding:0!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon{
    position:absolute!important;
    left:3px!important;
    top:6px!important;
    width:48px!important;
    height:48px!important;
    margin:0!important;
    flex:0 0 48px!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-vip-icon img{
    width:48px!important;
    height:48px!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-nav-label{
    position:absolute!important;
    left:56px!important;
    right:4px!important;
    top:9px!important;
    z-index:5!important;
    transform:none!important;
    line-height:17px!important;
    text-align:left!important;
}
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    left:66px!important;
    right:auto!important;
    top:33px!important;
    bottom:auto!important;
    min-width:54px!important;
    max-width:74px!important;
    height:20px!important;
    padding:0 7px!important;
    border-radius:10px!important;
    line-height:20px!important;
    font-size:10px!important;
    white-space:nowrap!important;
}
.rank-emblem-stage{
    width:120px!important;
    margin-bottom:8px!important;
}
.rank-emblem-stage .rank-big-emblem{
    width:102px!important;
    height:86px!important;
    min-height:86px!important;
    border-radius:19px!important;
}
.rank-emblem-stage .rank-big-vip-icon{
    width:78px!important;
    height:78px!important;
    margin:2px auto 0!important;
}
.rank-level-plate{
    min-width:78px!important;
    height:30px!important;
    margin-top:3px!important;
}
.vip-activation-actions,
.rank-vip-activation-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:7px!important;
}
.vip-activation-btn{
    min-width:104px;
    height:35px;
    padding:0 12px;
    border-radius:10px;
    border:1px solid rgba(255,235,174,.78);
    color:#553300;
    background:linear-gradient(180deg,#fff8c8,#efbf45 55%,#bf7800);
    box-shadow:inset 0 1px 0 #fff,0 3px 8px rgba(30,20,0,.22);
    font-size:11px;
    font-weight:900;
    cursor:pointer;
    white-space:nowrap;
}
.vip-activation-btn.diamond{
    color:#073f6d;
    border-color:#8adfff;
    background:linear-gradient(180deg,#f2feff,#72ddff 52%,#3d8bea);
}
.vip-activation-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}
.vip-activation-btn:disabled,
.vip-activation-btn.activated{opacity:.72;cursor:default;transform:none}
.rank-vip-activation{
    margin:10px 0;
    padding:10px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    text-align:left;
    border:1px solid #dbc06b;
    border-radius:13px;
    background:linear-gradient(115deg,rgba(255,251,220,.98),rgba(238,210,126,.96));
    color:#654200;
    box-shadow:inset 0 1px 0 #fff,0 4px 10px rgba(57,36,0,.17);
}
.rank-vip-activation.active{border-color:#91d7a6;background:linear-gradient(115deg,#effff1,#bdebc9)}
.rank-vip-activation-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.rank-vip-activation-copy small{font-size:7px;letter-spacing:1.2px;color:#94722e;font-weight:900}
.rank-vip-activation-copy b{font-size:12px;color:#664000}
.rank-vip-activation-copy span{font-size:8px;line-height:1.35;color:#806a3c}
.rank-vip-activation-actions{flex-direction:column!important;flex:0 0 auto}
.rank-vip-activation-actions .vip-activation-btn{width:104px;height:30px;font-size:9px}
@media(max-width:520px){
    .vip-guide-v2-footer{align-items:flex-start!important;flex-direction:column!important}
    .vip-activation-actions{width:100%}
    .vip-activation-actions .vip-activation-btn{flex:1}
    .rank-vip-activation{align-items:stretch;flex-direction:column}
    .rank-vip-activation-actions{flex-direction:row!important}
    .rank-vip-activation-actions .vip-activation-btn{flex:1;width:auto}
}

/* 尊享等级弹窗：等级牌完全放在图标外部，任何位数都不会再被遮住。 */
.rank-emblem-stage{
    position:relative;
    z-index:2;
    width:150px;
    margin:0 auto 7px;
    display:flex;
    flex-direction:column;
    align-items:center;
    overflow:visible;
}
.rank-emblem-stage .rank-big-emblem{
    width:132px!important;
    height:118px!important;
    min-height:118px!important;
    margin:0!important;
    padding:3px!important;
    overflow:hidden!important;
    border:1px solid #f3ca57!important;
    border-radius:23px!important;
    background:radial-gradient(circle at 50% 42%,rgba(255,222,103,.22),transparent 48%),linear-gradient(145deg,#111838,#293c78 56%,#111630)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 0 2px rgba(255,213,78,.13),0 0 17px rgba(255,204,61,.44),0 9px 19px rgba(2,9,32,.36)!important;
}
.rank-emblem-stage .rank-big-vip-icon{
    width:108px!important;
    height:108px!important;
    margin:1px auto 0!important;
    filter:saturate(1.17) contrast(1.05)
        drop-shadow(0 1px 1px rgba(255,255,255,.8))
        drop-shadow(0 0 8px rgba(255,230,135,.75))
        drop-shadow(0 5px 8px rgba(20,11,0,.43))!important;
}
.rank-level-plate{
    position:relative;
    z-index:8;
    min-width:76px;
    height:31px;
    margin-top:-4px;
    padding:0 13px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    border:1px solid #8e5800;
    border-radius:16px;
    color:#704600;
    background:linear-gradient(180deg,#fffde5 0%,#ffe475 42%,#dc980d 100%);
    box-shadow:inset 0 1px 0 #fff,0 0 8px rgba(255,225,108,.78),0 3px 7px rgba(50,28,0,.42);
    font-size:14px;
    font-weight:900;
    line-height:1;
    white-space:nowrap;
}
.rank-level-plate #rankModalLevel{
    position:static!important;
    display:inline!important;
    min-width:0!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    color:#4d2d00!important;
    background:none!important;
    box-shadow:none!important;
    font-size:19px!important;
    line-height:1!important;
    text-shadow:0 1px 0 rgba(255,255,255,.75)!important;
}

/* 人物下方 VIP 仍然无外框，但换成高精度宝石星徽与独立金色等级珠。 */
.ui-reference-v10 .player-vip-mini,
.ui-reference-v10 .player-vip-mini.elite{
    right:calc(100% + 6px)!important;
    top:50%!important;
    width:53px!important;
    min-width:53px!important;
    height:34px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
}
.ui-reference-v10 .player-vip-mini i,
.ui-reference-v10 .player-vip-mini.elite i{
    position:relative!important;
    z-index:1!important;
    width:36px!important;
    height:34px!important;
    flex:0 0 36px!important;
    overflow:visible!important;
    background-image:url('/ui/vip-star-v.png')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    filter:saturate(1.2) contrast(1.08)
        drop-shadow(0 1px 1px #fff)
        drop-shadow(0 0 5px rgba(255,235,145,.96))
        drop-shadow(0 0 9px rgba(255,177,34,.78))
        drop-shadow(0 3px 3px rgba(75,41,0,.5))!important;
    animation:vipMetalBreath 1.9s ease-in-out infinite!important;
}
.ui-reference-v10 .player-vip-mini b,
.ui-reference-v10 .player-vip-mini.elite b{
    position:relative!important;
    z-index:3!important;
    width:21px!important;
    min-width:21px!important;
    height:21px!important;
    margin:7px 0 0 -5px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #8d5400!important;
    border-radius:50%!important;
    color:#4c2a00!important;
    background:radial-gradient(circle at 35% 25%,#fffde6 0 16%,#ffe26c 44%,#d58a00 76%,#915000 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 6px rgba(255,223,105,.92),0 2px 4px rgba(56,30,0,.52)!important;
    font-size:11px!important;
    line-height:1!important;
    text-shadow:0 1px 0 rgba(255,255,255,.7)!important;
}

/* 2000成长值昵称：深金底、亮金边和流光，与普通浅黄色昵称明显区分。 */
.ui-reference-v10 .player.rose-gold-player .name-tag{
    min-width:35px!important;
    padding:3px 10px!important;
    border:2px solid #ffd96b!important;
    border-radius:8px!important;
    color:#fff4ae!important;
    background:linear-gradient(108deg,#342000 0%,#805000 17%,#d59a16 34%,#fff0a0 48%,#bd7b05 61%,#6c4000 78%,#251600 100%)!important;
    background-size:260% 100%!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82),inset 0 -2px 4px rgba(63,34,0,.55),0 0 0 1px rgba(104,62,0,.7),0 0 8px #ffe688,0 0 17px rgba(255,185,30,.92),0 3px 6px rgba(57,32,0,.5)!important;
    font-size:12px!important;
    font-weight:1000!important;
    letter-spacing:.45px!important;
    text-shadow:0 1px 1px #4b2a00,0 0 5px rgba(255,247,181,.94)!important;
    animation:vipGoldNamePulse 1.45s ease-in-out infinite,vipGoldNameSweep 3s linear infinite!important;
}
.ui-reference-v10 .player.rose-gold-player .name-tag::after{
    width:24px!important;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),#fff5b7,transparent)!important;
    animation:vipGoldNameSpark 2.15s ease-in-out infinite!important;
}

/* 房间玩家列表和资料页的 VIP 徽章统一为更厚重的黄金金属质感。 */
.room-player-picker-vip{
    min-width:47px!important;
    height:27px!important;
    padding:0 9px!important;
    gap:4px!important;
    border:1px solid #9e6500!important;
    border-radius:14px!important;
    color:#492900!important;
    background:linear-gradient(180deg,#fffde0 0%,#ffe16a 36%,#dfa018 68%,#b97100 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 7px rgba(255,218,86,.7),0 3px 6px rgba(73,42,0,.28)!important;
    font-size:12px!important;
    letter-spacing:.35px!important;
    text-shadow:0 1px 0 rgba(255,255,255,.78)!important;
}
.room-player-picker-vip::before,
.room-player-picker-item.rose-gold-player .room-player-picker-vip::before{content:"✦";color:#fff7ae;font-size:10px;text-shadow:0 1px 2px #7b4700,0 0 4px #fff}
#playerInfoModal .player-info-rank,
#playerInfoModal.rose-gold-profile .player-info-rank{
    min-width:66px!important;
    height:32px!important;
    padding:0 10px 0 6px!important;
    gap:2px!important;
    border:1px solid #936000!important;
    border-radius:16px!important;
    background:linear-gradient(180deg,#fff9c9 0%,#e9b83f 50%,#a96900 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 8px rgba(255,215,79,.72),0 4px 8px rgba(79,46,0,.26)!important;
}
#playerInfoModal .player-info-rank i,
#playerInfoModal.rose-gold-profile .player-info-rank i{
    width:30px!important;
    height:29px!important;
    display:block!important;
    background-image:url('/ui/vip-star-v.png')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    filter:saturate(1.18) contrast(1.06) drop-shadow(0 0 5px rgba(255,238,155,.92)) drop-shadow(0 2px 3px rgba(77,43,0,.38))!important;
}
#playerInfoModal .player-info-rank b,
#playerInfoModal.rose-gold-profile .player-info-rank b{
    color:#4c2c00!important;
    font-size:13px!important;
    text-shadow:0 1px 0 rgba(255,255,255,.8)!important;
}

/* 尊享等级里的充值入口与设置中的钻石充值进入同一页面。 */
.rank-recharge-entry{
    position:relative;
    z-index:3;
    width:100%;
    min-height:56px;
    margin:12px 0 2px;
    padding:7px 10px;
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    overflow:hidden;
    border:1px solid #dba82c;
    border-radius:13px;
    color:#fff6bf;
    background:linear-gradient(105deg,#493000 0%,#9b6908 42%,#d6a62d 69%,#765000 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 0 9px rgba(255,210,69,.3),0 5px 11px rgba(4,9,32,.25);
    cursor:pointer;
    text-align:left;
    transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}
.rank-recharge-entry::after{
    content:"";
    position:absolute;
    top:-50%;bottom:-50%;left:-35px;width:23px;
    transform:rotate(19deg);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);
    animation:rankRechargeSweep 3.5s ease-in-out infinite;
    pointer-events:none;
}
.rank-recharge-entry:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.52),0 0 14px rgba(255,213,74,.5),0 7px 14px rgba(4,9,32,.3)}
.rank-recharge-diamond{width:40px!important;height:35px!important;filter:drop-shadow(0 3px 4px rgba(5,22,80,.42)) drop-shadow(0 0 8px rgba(96,230,255,.82))!important}
.rank-recharge-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.rank-recharge-copy b{color:#fff9d0;font-size:14px;text-shadow:0 1px 2px rgba(70,42,0,.72)}
.rank-recharge-copy small{color:#f8df96;font-size:10px}
.rank-recharge-arrow{color:#fff6bd;font-size:12px;font-weight:900;white-space:nowrap}

@keyframes vipMetalBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes vipGoldNamePulse{0%,100%{filter:brightness(.98)}50%{filter:brightness(1.14)}}
@keyframes vipGoldNameSweep{to{background-position:-260% 0}}
@keyframes vipGoldNameSpark{0%,24%{left:-32px;opacity:0}36%{opacity:1}68%{left:calc(100% + 14px);opacity:.9}78%,100%{left:calc(100% + 14px);opacity:0}}
@keyframes rankRechargeSweep{0%,28%{left:-35px;opacity:0}40%{opacity:.8}70%{left:calc(100% + 28px);opacity:.55}80%,100%{left:calc(100% + 28px);opacity:0}}

/* V16.5 最终层级覆盖：缩小弹窗星徽，等级牌完整放在图标下方。 */
.rank-emblem-stage{
    width:118px!important;
    margin:0 auto 9px!important;
}
.rank-emblem-stage .rank-big-emblem{
    width:100px!important;
    height:84px!important;
    min-height:84px!important;
    margin:0!important;
    padding:2px!important;
    border-radius:18px!important;
}
.rank-emblem-stage .rank-big-vip-icon{
    width:76px!important;
    height:76px!important;
    margin:2px auto 0!important;
}
.rank-emblem-stage .rank-level-plate{
    position:relative!important;
    z-index:12!important;
    min-width:78px!important;
    height:30px!important;
    margin:4px 0 0!important;
    padding:0 13px!important;
}

/* =====================================================================
   V16.6：等级数字再下移、VIP专属换装与精选钻石购买
   ===================================================================== */
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{top:38px!important;height:18px!important;line-height:18px!important}
.vip-dress-gate-banner{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:10px;padding:9px 10px;border:1px solid #d69d22;border-radius:13px;background:linear-gradient(115deg,#4b3203 0%,#9a6710 46%,#f0c95d 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 5px 13px rgba(98,62,0,.16);color:#fff7c9}
.vip-dress-gate-banner.vip-active{background:linear-gradient(115deg,#143d71 0%,#285b9c 45%,#6f3fa6 100%);border-color:#75bbf4}
.vip-dress-gate-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-size:23px;color:#673b00;background:radial-gradient(circle at 35% 30%,#fffde0,#ffdb51 56%,#ce8500);border:2px solid #fff1a0;box-shadow:0 0 12px rgba(255,224,91,.75)}
.vip-dress-gate-banner>div{display:flex;flex-direction:column;gap:2px;min-width:0}.vip-dress-gate-banner b{font-size:14px;color:#fff9da;text-shadow:0 1px 2px rgba(62,36,0,.55)}.vip-dress-gate-banner small{font-size:10px;color:#fff0b0;line-height:1.4}.vip-dress-gate-banner.vip-active small{color:#d9ecff}
.vip-dress-gate-banner button{min-height:34px;padding:0 13px;border:1px solid #fff1bd;border-radius:9px;color:#6e4100;background:linear-gradient(180deg,#fffce5,#ffd463);font-size:11px;font-weight:900;box-shadow:inset 0 1px 0 #fff,0 3px 7px rgba(75,43,0,.2);cursor:pointer}
.qq-dress-tier.vip::after{content:none!important}.qq-dress-tier.diamond{color:#865400;border-color:#e3b548;background:linear-gradient(180deg,#fffdf2,#fff1b8)}.qq-dress-tier.diamond.active{color:#5d3500;border-color:#d79300;background:linear-gradient(180deg,#fff8b9,#ffc93d);box-shadow:0 0 0 2px rgba(255,196,41,.16),inset 0 1px 0 #fff}
.qq-dress-card{display:block;text-align:initial}.qq-dress-card:focus-visible{outline:3px solid rgba(58,143,230,.32);outline-offset:2px}.qq-dress-card.diamond-featured{border-color:#e0ad39;background:linear-gradient(180deg,#fffdf2,#fff5d3);box-shadow:0 3px 9px rgba(152,102,0,.13)}.qq-dress-card.diamond-featured.active{border-color:#d18a00;background:linear-gradient(180deg,#fffce5,#ffe9a4);box-shadow:0 0 0 3px rgba(245,183,23,.18),0 6px 14px rgba(142,90,0,.18)}
.qq-dress-card.diamond-featured::before{content:"精选";position:absolute;z-index:3;left:7px;top:7px;padding:2px 6px;border-radius:999px;color:#fff7c8;background:linear-gradient(180deg,#a97812,#563600);font-size:9px;font-weight:900;box-shadow:0 2px 5px rgba(76,45,0,.32)}
.qq-dress-buy-btn{display:block;width:100%;min-height:27px;margin-top:5px;padding:0 5px;border:1px solid #d59a13;border-radius:8px;color:#704200;background:linear-gradient(180deg,#fff8b9,#ffc63f);font-size:10px;font-weight:900;cursor:pointer;box-shadow:inset 0 1px 0 #fff}.qq-dress-buy-btn:hover{filter:brightness(1.06)}.qq-dress-buy-btn.owned{cursor:default;color:#236149;border-color:#7fc2a2;background:linear-gradient(180deg,#edfff7,#bcebd6)}
.vip-guide-v2 .vip-guide-subtitle b{color:#fff2b2;font-weight:1000}.vip-guide-v2-benefits .vip-benefit-card.fashion-primary{grid-column:1/-1;min-height:74px;padding:12px 14px 11px 52px!important;border-color:#d6a334!important;background:linear-gradient(110deg,#fffbed,#ffe7a8)!important;box-shadow:0 5px 14px rgba(154,101,0,.12)!important}.vip-guide-v2-benefits .vip-benefit-card.fashion-primary i{left:12px;top:13px;width:31px;height:31px;font-size:18px;background:linear-gradient(145deg,#fff39a,#d69205)!important;color:#643c00!important;border-color:#f3ce5c!important;box-shadow:inset 0 1px 0 #fff,0 0 10px rgba(239,184,36,.44)!important}.vip-guide-v2-benefits .vip-benefit-card.fashion-primary b{font-size:13px;color:#774800!important}.vip-guide-v2-benefits .vip-benefit-card.fashion-primary span{font-size:10px;color:#8b661e!important}
.vip-fashion-emphasis{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:13px;border:1px solid #e0ad3b;background:linear-gradient(110deg,#563807,#b4770d 58%,#e5b83d);color:#fff}.vip-fashion-emphasis>span{font-size:8px;letter-spacing:1.5px;color:#fff2b4;font-weight:900}.vip-fashion-emphasis>div{display:flex;flex-direction:column;gap:2px}.vip-fashion-emphasis b{font-size:12px;color:#fffbdc}.vip-fashion-emphasis small{font-size:9px;line-height:1.4;color:#ffefb2}.vip-fashion-emphasis button{min-height:32px;padding:0 12px;border:1px solid #fff0af;border-radius:8px;color:#6c4100;background:linear-gradient(#fffce1,#ffd564);font-size:10px;font-weight:900;cursor:pointer}
@media(max-width:760px){.vip-dress-gate-banner{grid-template-columns:36px 1fr}.vip-dress-gate-banner button{grid-column:1/-1}.vip-fashion-emphasis{grid-template-columns:1fr}.vip-fashion-emphasis>span{display:none}}

/* =====================================================================
   V16.7：隐藏未开通角标、强化金色身份、付款入口与性别名片主题
   ===================================================================== */
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry.empty .vip-rank-number.show{
    display:none!important;
}

.vip-guide-v2-price{
    appearance:none;
    -webkit-appearance:none;
    font-family:inherit;
    cursor:pointer;
    position:relative;
    overflow:hidden;
    transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.vip-guide-v2-price::after{
    content:"";
    position:absolute;
    top:-45%;bottom:-45%;left:-34px;width:22px;
    transform:rotate(18deg);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
    animation:v167VipPaySweep 2.8s ease-in-out infinite;
    pointer-events:none;
}
.vip-guide-v2-price:hover{
    transform:translateY(-2px) scale(1.015);
    filter:saturate(1.12) brightness(1.06);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 0 14px rgba(255,216,116,.58),0 7px 15px rgba(76,44,15,.22);
}
.vip-guide-v2-price:focus-visible{outline:3px solid rgba(255,218,108,.5);outline-offset:3px}
@keyframes v167VipPaySweep{0%,28%{left:-34px;opacity:0}40%{opacity:1}68%{left:calc(100% + 26px);opacity:.75}78%,100%{left:calc(100% + 26px);opacity:0}}

/* 满2000成长值的玩家选择条：加深金属层次和流光，让它与普通浅黄条明显区分。 */
.room-player-picker-item.rose-gold-player{
    border:2px solid #e6b82f!important;
    background:linear-gradient(108deg,#6b4100 0%,#bd7d05 12%,#ffe36e 29%,#fff9c8 44%,#d99a0d 58%,#8f5700 73%,#f2c53c 88%,#6a4000 100%)!important;
    background-size:340% 100%!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.96),inset 0 -3px 7px rgba(78,43,0,.42),0 0 0 1px rgba(105,61,0,.72),0 0 13px rgba(255,217,82,.9),0 7px 18px rgba(91,55,0,.32)!important;
    animation:v167GoldPickerPulse 1.35s ease-in-out infinite,v167GoldPickerFlow 3.2s linear infinite!important;
}
.room-player-picker-item.rose-gold-player::after{
    content:""!important;
    z-index:1!important;
    top:-45%!important;bottom:-45%!important;
    width:34px!important;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),#fff7ad,rgba(255,255,255,.9),transparent)!important;
    animation:v167GoldPickerSpark 1.9s ease-in-out infinite!important;
}
.room-player-picker-item.rose-gold-player>*{position:relative;z-index:2}
.room-player-picker-item.rose-gold-player .room-player-picker-avatar{
    border:2px solid #ffdc5a!important;
    box-shadow:0 0 0 2px #7c4b00,0 0 12px #fff0a1,0 4px 9px rgba(74,42,0,.45)!important;
}
.room-player-picker-item.rose-gold-player .room-player-picker-name{
    color:#3f2500!important;
    text-shadow:0 1px 0 #fffbd0,0 0 5px #fff4a7,0 0 9px rgba(255,237,126,.82)!important;
    font-weight:1000!important;
}
.room-player-picker-item.rose-gold-player .room-player-picker-vip{
    color:#392000!important;
    border-color:#7d4800!important;
    background:linear-gradient(180deg,#fffde3 0%,#ffe261 34%,#d89100 72%,#9d5b00 100%)!important;
    box-shadow:inset 0 1px 0 #fff,0 0 9px rgba(255,241,151,.95),0 3px 7px rgba(64,35,0,.4)!important;
}
@keyframes v167GoldPickerPulse{0%,100%{filter:saturate(1.08) brightness(.98)}50%{filter:saturate(1.28) brightness(1.13)}}
@keyframes v167GoldPickerFlow{to{background-position:-340% 0}}
@keyframes v167GoldPickerSpark{0%,22%{left:-42px;opacity:0}34%{opacity:1}68%{left:calc(100% + 26px);opacity:.92}78%,100%{left:calc(100% + 26px);opacity:0}}

/* 我的名片基础主题：女生保留樱粉，男生切换为海蓝；黄金身份仍优先使用黄金主题。 */
#profileModal.profile-theme-male:not(.rose-gold-profile){
    border-color:#347fc4!important;
    background:linear-gradient(180deg,#f7fbff,#dceeff)!important;
    box-shadow:0 22px 52px rgba(25,73,128,.3),0 0 0 1px rgba(194,228,255,.95),0 0 18px rgba(76,166,235,.2)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-head{
    background:linear-gradient(110deg,#173e75 0%,#2868a9 48%,#58ace2 100%)!important;
    border-bottom-color:#69b6e8!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 12px rgba(23,62,117,.2)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-title{
    color:#fff!important;
    text-shadow:0 1px 2px rgba(7,43,84,.5),0 0 8px rgba(188,232,255,.35)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-title::after{
    background:linear-gradient(90deg,#fff,#9bdcff)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-body{
    background:linear-gradient(180deg,#fbfdff,#e8f4ff)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-avatar-circle{
    border-color:#5ca7dc!important;
    box-shadow:0 0 0 4px #dff3ff,0 0 12px rgba(51,149,214,.28),0 5px 13px rgba(23,83,131,.2)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-hero-name,
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-section-title,
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-stats-card b{
    color:#17659d!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-plan-pill{
    color:#135984!important;
    border-color:#81bee2!important;
    background:linear-gradient(180deg,#eefaff,#bfe8fb)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-menu-card,
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-stats-card,
#profileModal.profile-theme-male:not(.rose-gold-profile) .avatar-scroll-shell{
    border-color:#9dcce8!important;
    background:linear-gradient(180deg,#fff,#e6f5fd)!important;
    box-shadow:0 3px 10px rgba(27,100,147,.08)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-menu-card.purple{
    color:#155f95!important;
    border-color:#85bfe2!important;
    background:linear-gradient(180deg,#f8fdff,#d5effc)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-menu-card.gold{
    color:#0e5b7f!important;
    border-color:#77c4df!important;
    background:linear-gradient(180deg,#f1fdff,#c9f1f7)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-input,
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-select{
    border-color:#8fc8e8!important;
    background:#fafdff!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .avatar-item.selected{
    border-color:#2d8ec9!important;
    box-shadow:0 0 0 3px rgba(45,142,201,.18),0 2px 7px rgba(18,79,123,.16)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .save-profile-btn{
    background:linear-gradient(180deg,#54b3e8,#246db2)!important;
    box-shadow:0 4px 11px rgba(29,88,145,.28)!important;
}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-body::-webkit-scrollbar-track{background:#e5f3fc!important}
#profileModal.profile-theme-male:not(.rose-gold-profile) .profile-custom-body::-webkit-scrollbar-thumb{background:#66a9d3!important;border-color:#e5f3fc!important}

/* 局部修正：等级牌固定在尊享等级按钮右下角，避免遮挡标题。 */
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    top:auto!important;
    bottom:4px!important;
    right:5px!important;
    min-width:34px!important;
    height:17px!important;
    padding:0 5px!important;
    font-size:10px!important;
    line-height:17px!important;
}

/* =====================================================================
   V16.8：左侧等级牌下移、人物下方 VIP 标识缩小并整齐对齐
   ===================================================================== */
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    left:auto!important;
    right:5px!important;
    top:43px!important;
    bottom:auto!important;
    min-width:31px!important;
    max-width:46px!important;
    height:15px!important;
    padding:0 4px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:15px!important;
    transform:none!important;
}

.ui-reference-v10 .player-vip-mini,
.ui-reference-v10 .player-vip-mini.elite{
    right:calc(100% + 4px)!important;
    top:50%!important;
    width:36px!important;
    min-width:36px!important;
    height:23px!important;
    margin:0!important;
    padding:0!important;
    transform:translateY(-50%)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
}
.ui-reference-v10 .player-vip-mini i,
.ui-reference-v10 .player-vip-mini.elite i{
    width:25px!important;
    height:23px!important;
    flex:0 0 25px!important;
    background-size:contain!important;
    background-position:center!important;
}
.ui-reference-v10 .player-vip-mini b,
.ui-reference-v10 .player-vip-mini.elite b{
    width:16px!important;
    min-width:16px!important;
    height:16px!important;
    margin:3px 0 0 -5px!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:9px!important;
    line-height:16px!important;
}
.ui-reference-v10 .player-name-row .name-tag{
    min-height:20px!important;
    line-height:16px!important;
}

/* =====================================================================
   V16.9：侧栏等级居中、VIP说明文字放大、尊享等级窗口加长
   ===================================================================== */

/* 等级牌放到“尊享等级”文字正下方，并以文字区域为中心。 */
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number,
.ui-reference-v9 .vip-rank-badge.side-vip-entry .vip-rank-number.show{
    left:calc(50% + 25px)!important;
    right:auto!important;
    top:43px!important;
    bottom:auto!important;
    min-width:31px!important;
    max-width:46px!important;
    height:15px!important;
    padding:0 4px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:15px!important;
    transform:translateX(-50%)!important;
}

/* VIP介绍页：主要说明、小标签和卡片文字统一略微放大。 */
.vip-guide-v2 .vip-guide-main-title{font-size:24px!important}
.vip-guide-v2 .vip-guide-subtitle{font-size:12px!important;line-height:1.55!important}
.vip-guide-v2-tags span{font-size:10px!important}
.vip-guide-v2-price small{font-size:10px!important}
.vip-guide-v2-price b{font-size:27px!important}
.vip-guide-v2-price span{font-size:9px!important}
.vip-benefit-card b{font-size:12px!important}
.vip-benefit-card span{font-size:10px!important;line-height:1.55!important}
.vip-guide-v2-section-head>span{font-size:8px!important}
.vip-guide-v2-section-head>b{font-size:14px!important}
.vip-guide-v2-section-head>small{font-size:10px!important}
.vip-level-node b{font-size:12px!important}
.vip-level-node span{font-size:10px!important}
.vip-guide-v2-note{font-size:10px!important}
.vip-daily-rule-grid b{font-size:12px!important}
.vip-daily-rule-grid span{font-size:10px!important}
.vip-guide-v2-footer span{font-size:9px!important}
.vip-guide-v2-footer b{font-size:13px!important}
.vip-guide-v2-footer small{font-size:10px!important}

/* 尊享等级页尽量利用屏幕高度，并保留内部滚动，底部内容不会被截断。 */
.rank-modal{
    height:min(760px,calc(100vh - 20px))!important;
    max-height:none!important;
}
.rank-modal-body{
    box-sizing:border-box!important;
    height:calc(100% - 52px)!important;
    max-height:none!important;
    padding-bottom:38px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
}


/* =====================================================================
   V17.2：按两张截图实测差值修正左侧 Lv.等级牌（最终强制覆盖）
   - 保持 V17.1 已经对准的水平位置与尺寸
   - 只把纵向位置从 top:44px 改为 top:56px，实际下移 12px
   - 对照用户参考图与当前截图：两者相对卡片的纵向差约 12px
   ===================================================================== */
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry #vipRankNumber.vip-rank-number,
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry #vipRankNumber.vip-rank-number.show{
    left:calc(50% + 13px)!important;
    right:auto!important;
    top:56px!important;
    bottom:auto!important;
    width:auto!important;
    min-width:40px!important;
    max-width:54px!important;
    height:18px!important;
    padding:0 5px!important;
    border-radius:9px!important;
    font-size:10px!important;
    line-height:18px!important;
    transform:translateX(-50%)!important;
    z-index:40!important;
    white-space:nowrap!important;
}


/* =====================================================================
   V17.3：左侧尊享等级最终结构修正
   根因：此前一直用 top/left 绝对定位 Lv 标签；项目里同一元素存在多轮 !important 覆盖，
   再加上旧版 3000 端口服务器可能仍在运行，导致新 CSS 看起来“完全没动”。
   本版不再用 top 数值硬挪，而是把“尊享等级 + Lv”放进同一个右侧纵向容器。
   ===================================================================== */
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry{
    overflow:hidden!important;
}
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy{
    position:absolute!important;
    left:60px!important;
    right:2px!important;
    top:16px!important;
    height:42px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:4px!important;
    z-index:35!important;
    pointer-events:none!important;
}
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy .side-nav-label{
    position:static!important;
    display:block!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    flex:none!important;
    line-height:18px!important;
    text-align:center!important;
}
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy #vipRankNumber.vip-rank-number,
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy #vipRankNumber.vip-rank-number.show{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    display:none!important;
    width:auto!important;
    min-width:34px!important;
    max-width:48px!important;
    height:17px!important;
    margin:0!important;
    padding:0 5px!important;
    border-radius:9px!important;
    font-size:10px!important;
    line-height:17px!important;
    transform:none!important;
    z-index:auto!important;
    white-space:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
}
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy #vipRankNumber.vip-rank-number.show{
    display:flex!important;
}


/* =====================================================================
   V17.4：尊享等级标题 + Lv 等级框整体同步上移 4px
   - 保持两者现有间距、尺寸、水平位置完全不变
   - 只移动共同父容器 side-vip-copy：top 20px -> 16px
   - 因此标题和 Lv 框会作为一个整体同步移动，不会再破坏两者距离
   ===================================================================== */
html body .main-container.ui-reference-v9 .vip-rank-badge.side-vip-entry .side-vip-copy{
    top:16px!important;
}


/* =====================================================================
   V17.6：电脑 + 手机双端兼容（最终移动端覆盖）
   说明：只在 <=700px 生效，桌面端 V17.5 的尺寸/位置/视觉不变。
   ===================================================================== */
@media (max-width:700px){
    html{
        width:100%!important;
        min-width:0!important;
        overflow-x:hidden!important;
        -webkit-text-size-adjust:100%;
    }
    body.lobby-reference-page{
        width:100%!important;
        min-width:0!important;
        min-height:100dvh!important;
        height:auto!important;
        margin:0!important;
        padding:0!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior-y:contain;
    }
    .main-container.ui-remix-v1.ui-left-latest-v6.ui-reference-v9{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        height:auto!important;
        min-height:100dvh!important;
        margin:0!important;
        border-left:0!important;
        border-right:0!important;
        border-radius:0!important;
        box-shadow:none!important;
    }

    /* 手机顶部功能区：原左侧栏改成可点击网格，不改任何按钮 ID/逻辑 */
    .ui-reference-v9 .top-blue-bar.classic-side-panel{
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        display:grid!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:4px!important;
        padding:5px!important;
        overflow:visible!important;
        border-right:0!important;
        border-bottom:2px solid #8fbaf0!important;
    }
    .ui-reference-v9 .side-brand{
        grid-column:1/-1!important;
        min-height:43px!important;
        display:flex!important;
        align-items:center!important;
        padding:0 4px 4px!important;
    }
    .ui-reference-v9 .side-brand-mark{width:37px!important;height:35px!important;flex:0 0 37px!important}
    .ui-reference-v9 .side-brand-copy b{font-size:16px!important}
    .ui-reference-v9 .side-brand-copy small{display:inline!important}
    .ui-reference-v9 .side-section-title,
    .ui-reference-v9 .side-panel-spacer{display:none!important}
    .ui-reference-v9 .top-right-group.side-nav-group,
    .ui-reference-v9 .side-room-actions{display:contents!important}
    .ui-reference-v9 .side-system-item,
    .ui-reference-v9 .side-exit-item{display:flex!important}
    .ui-reference-v9 .side-nav-item:not(.side-vip-entry),
    .ui-reference-v9 .top-blue-btn.side-nav-item:not(.side-vip-entry),
    .ui-reference-v9 .top-right-btn.side-nav-item:not(.side-vip-entry),
    .ui-reference-v9 .sub-btn.side-nav-item:not(.side-vip-entry),
    .ui-reference-v9 .chat-small-btn.side-nav-item:not(.side-vip-entry){
        width:100%!important;
        min-width:0!important;
        height:38px!important;
        min-height:38px!important;
        padding:4px 5px!important;
        gap:5px!important;
        font-size:12px!important;
        border-radius:10px!important;
    }
    .ui-reference-v9 .side-nav-item:not(.side-vip-entry)>span:last-child,
    .ui-reference-v9 .side-nav-label{font-size:12px!important}
    .ui-reference-v9 .side-nav-item:not(.side-vip-entry) .side-nav-icon:not(.side-nav-vip-icon){
        width:25px!important;height:25px!important;flex:0 0 25px!important;font-size:14px!important;
    }
    .ui-reference-v9 .vip-badge.side-vip-entry,
    .ui-reference-v9 .vip-rank-badge.side-vip-entry,
    .ui-reference-v9 .vip-rank-badge.side-vip-entry.elite,
    .ui-reference-v9 .vip-rank-badge.side-vip-entry.empty{
        width:100%!important;
        min-width:0!important;
        min-height:62px!important;
        height:62px!important;
    }

    /* 主内容改为手机纵向流式布局 */
    .ui-reference-v9 .classic-main-stage{
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        display:block!important;
        overflow:visible!important;
    }
    .ui-reference-v9 .room-map-panel{
        width:100%!important;
        height:58px!important;
        padding:5px 4px 4px!important;
        overflow:hidden!important;
    }
    /* 九个房间保持一行，但手机允许左右滑动，不再把文字压到看不清 */
    .ui-reference-v9 .room-tab-bar{
        width:100%!important;
        height:49px!important;
        display:flex!important;
        flex-wrap:nowrap!important;
        gap:4px!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch;
        scroll-snap-type:x proximity;
        touch-action:pan-x!important;
    }
    .ui-reference-v9 .room-tab-bar::-webkit-scrollbar{display:none!important}
    .ui-reference-v9 .room-tab,
    .ui-reference-v10 .room-tab{
        flex:0 0 94px!important;
        width:94px!important;
        min-width:94px!important;
        max-width:94px!important;
        height:45px!important;
        min-height:45px!important;
        scroll-snap-align:start;
        padding-left:29px!important;
    }
    .ui-reference-v10 .room-tab-name{font-size:9px!important;line-height:11px!important}
    .ui-reference-v10 .room-tab-main em{font-size:7px!important;line-height:8px!important}

    .ui-reference-v9 .scene-wrap{
        width:auto!important;
        height:52vh!important;
        min-height:390px!important;
        max-height:560px!important;
        margin:6px 5px 0!important;
        border-radius:9px!important;
    }
    .ui-reference-v9 #scene{width:100%!important;height:100%!important}

    /* 手机聊天区：输入与世界喊话自动换行，杜绝 370px 固定最小宽度撑破屏幕 */
    .ui-reference-v9 .bottom-chat-area{
        width:auto!important;
        margin:6px 5px 8px!important;
        padding:6px!important;
    }
    .ui-reference-v9 .chat-top-row{
        display:flex!important;
        flex-wrap:wrap!important;
        gap:5px!important;
        align-items:center!important;
    }
    .ui-reference-v9 .chat-title-block{flex:1 1 auto!important;min-width:90px!important}
    .ui-reference-v9 .chat-title-block small,.ui-reference-v9 .chat-online-tip{display:none!important}
    .ui-reference-v9 #btnHorn.world-horn-btn{height:30px!important;min-height:30px!important;padding:0 10px!important;font-size:12px!important}
    .ui-left-latest-v6 .horn-input-wrap,
    .ui-reference-v9 .horn-input-wrap{
        order:10!important;
        flex:1 1 100%!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        gap:5px!important;
    }
    .ui-reference-v9 .horn-text-input{min-width:0!important;height:34px!important;font-size:13px!important}
    .ui-reference-v9 .horn-send-btn{flex:0 0 auto!important;height:34px!important;padding:0 11px!important}
    .ui-reference-v9 .chat-box{height:108px!important;min-height:108px!important;font-size:13px!important}
    .ui-reference-v9 .chat-box.collapsed{height:52px!important;min-height:52px!important}
    .ui-reference-v9 .chat-input-row{
        display:flex!important;
        flex-wrap:wrap!important;
        gap:5px!important;
        align-items:center!important;
    }
    .ui-reference-v9 .mini-tool-group{
        flex:1 1 100%!important;
        width:100%!important;
        display:flex!important;
        justify-content:flex-start!important;
    }
    .ui-reference-v9 .mini-tool{width:58px!important;min-width:58px!important;height:32px!important}
    .ui-reference-v9 .chat-input{flex:1 1 0!important;min-width:0!important;height:38px!important;font-size:16px!important}
    .ui-reference-v9 .send-button{flex:0 0 70px!important;width:70px!important;height:38px!important}

    /* 弹窗：使用动态视口高度，手机浏览器地址栏展开/收起也不会把底部截掉 */
    .rank-modal,
    .vip-guide-modal,
    .profile-modal,
    .setting-modal,
    .friend-modal,
    .magic-modal,
    #magicModal,
    .dress-modal,
    .home-page-modal,
    .room-player-picker-modal,
    .timebook-modal{
        max-width:calc(100vw - 12px)!important;
    }
    .rank-modal{
        width:calc(100vw - 12px)!important;
        height:calc(100dvh - 12px)!important;
        max-height:calc(100dvh - 12px)!important;
    }
    .rank-modal-body{height:calc(100% - 52px)!important;padding-left:10px!important;padding-right:10px!important;padding-bottom:24px!important}
    .vip-guide-modal.vip-guide-v2,
    .dress-modal,
    .home-page-modal{
        width:calc(100vw - 12px)!important;
        max-height:calc(100dvh - 12px)!important;
    }
    .vip-guide-body,.dress-body{max-height:calc(100dvh - 68px)!important;overflow-y:auto!important}

    /* iPhone 安全区 */
    @supports (padding:max(0px)){
        body.lobby-reference-page{padding-bottom:max(0px,env(safe-area-inset-bottom))!important}
        .ui-reference-v9 .top-blue-bar.classic-side-panel{padding-top:max(5px,env(safe-area-inset-top))!important}
    }
}

@media (max-width:520px){
    .ui-reference-v9 .top-blue-bar.classic-side-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .ui-reference-v9 .scene-wrap{height:49vh!important;min-height:360px!important}
    .ui-reference-v9 .room-tab,.ui-reference-v10 .room-tab{flex-basis:88px!important;width:88px!important;min-width:88px!important;max-width:88px!important}
}


/* V17.6 手机输入框防止 iPhone 聚焦时自动放大页面 */
@media (max-width:700px){
    .ui-reference-v9 .horn-text-input,
    .ui-reference-v9 .chat-input,
    .profile-input,.profile-select,.friend-add-input{font-size:16px!important;}

    /* V17.6.3：手机端人物恢复正常比例，桌面端尺寸保持不变。 */
    .ui-reference-v9 .player,
    .ui-reference-v10 .player{
        width:100px!important;
        height:160px!important;
    }
    .ui-reference-v9 .player-name-row,
    .ui-reference-v10 .player-name-row{
        bottom:-18px!important;
        gap:4px!important;
    }
}



