.mengsan-overlay-shuying { position: fixed; inset: 0; z-index: 80; display: flex; align-items: center; justify-content: center; box-sizing: border-box; padding: 18px; background: radial-gradient(circle at 50% 20%, rgba(68, 62, 83, 0.72), rgba(8, 10, 15, 0.96)); color: #f6ead0; font-family: "Microsoft YaHei", sans-serif; } .mengsan-overlay-shuying *, .mengsan-overlay-shuying *::before, .mengsan-overlay-shuying *::after { box-sizing: border-box; float: none !important; writing-mode: horizontal-tb !important; -webkit-writing-mode: horizontal-tb !important; text-orientation: mixed !important; letter-spacing: normal; } .mengsan-panel-shuying { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; display: flex !important; flex-direction: column !important; flex: none !important; width: min(720px, 94vw); height: auto !important; min-height: 160px; max-height: 92vh; overflow: auto; box-sizing: border-box; padding: 22px; border: 1px solid rgba(232, 202, 140, 0.55); border-radius: 14px; background: linear-gradient(145deg, rgba(31, 28, 38, 0.98), rgba(17, 19, 26, 0.98)); box-shadow: 0 20px 70px rgba(0, 0, 0, 0.58), inset 0 1px rgba(255, 255, 255, 0.08); } .mengsan-panel-shuying > .mengsan-title-shuying, .mengsan-panel-shuying > .mengsan-description-shuying, .mengsan-panel-shuying > .mengsan-choice-list-shuying, .mengsan-panel-shuying > .mengsan-map-status-shuying, .mengsan-panel-shuying > .mengsan-map-shuying, .mengsan-choice-list-shuying > .mengsan-choice-shuying, .mengsan-choice-shuying > .mengsan-choice-name-shuying, .mengsan-choice-shuying > .mengsan-choice-description-shuying { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; transform: none !important; } .mengsan-title-shuying { display: block !important; flex: none !important; width: 100% !important; height: auto !important; margin-bottom: 14px; color: #f2d28e; font-size: 30px; font-weight: 700; text-align: center; letter-spacing: 4px; line-height: 1.35; white-space: normal !important; } .mengsan-description-shuying, .mengsan-map-status-shuying { display: block !important; flex: none !important; width: 100% !important; height: auto !important; margin-bottom: 14px; color: rgba(255, 255, 255, 0.78); text-align: center; line-height: 1.6; } .mengsan-choice-list-shuying { display: grid; flex: none !important; width: 100% !important; height: auto !important; gap: 12px; } .mengsan-choice-shuying { display: block !important; width: 100% !important; height: auto !important; min-height: 64px; padding: 14px 16px; border: 1px solid rgba(242, 210, 142, 0.34); border-radius: 9px; background: rgba(255, 255, 255, 0.055); cursor: pointer; transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease; } .mengsan-choice-shuying:hover { transform: translateY(-2px); border-color: rgba(242, 210, 142, 0.8); background: rgba(242, 210, 142, 0.12); } .mengsan-choice-shuying.disabled { cursor: default; opacity: 0.35; filter: grayscale(1); } .mengsan-choice-name-shuying { display: block !important; width: 100% !important; height: auto !important; color: #f6dca5; font-size: 18px; } .mengsan-choice-description-shuying { display: block !important; width: 100% !important; height: auto !important; margin-top: 5px; color: rgba(255, 255, 255, 0.65); font-size: 13px; } .mengsan-map-panel-shuying { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; min-width: 100%; min-height: 100%; max-width: none !important; max-height: none !important; padding: clamp(12px, 2vw, 24px); border: 0; border-radius: 0; background: transparent; box-shadow: none; overflow: hidden; } .mengsan-map-overlay-shuying { padding: 0 !important; background: radial-gradient(circle at 50% 18%, rgba(67, 59, 82, 0.82), rgba(9, 10, 16, 0.97)), repeating-linear-gradient(12deg, rgba(255, 255, 255, 0.018) 0 2px, transparent 2px 12px); } .mengsan-map-panel-shuying > .mengsan-title-shuying { margin-bottom: 6px; font-size: clamp(24px, 3vw, 36px); } .mengsan-map-panel-shuying > .mengsan-map-status-shuying { margin-bottom: 10px; } .mengsan-map-shuying { position: relative; display: block !important; flex: 1 1 auto !important; width: 100%; height: auto !important; min-height: 0; overflow: hidden; border-radius: 0; background: transparent; } .mengsan-lines-shuying { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; } .mengsan-lines-shuying line { vector-effect: non-scaling-stroke; stroke: rgba(232, 219, 190, 0.68); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 6 5; } .mengsan-lines-shuying line.completed { stroke: rgba(243, 207, 128, 0.95); } .mengsan-lines-shuying line.dynamic { stroke: rgba(118, 205, 255, 0.95); stroke-dasharray: 3 4; } .mengsan-node-shuying { position: absolute; width: 66px; height: 40px; transform: translate(-50%, -50%); display: flex; align-items: center; justify-content: center; box-sizing: border-box; border: 2px solid var(--node-color); border-radius: 50%; background: radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.2), transparent 42%), var(--node-color); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.42); color: #fff4df; font-size: 12px; text-align: center; user-select: none; } .mengsan-node-shuying.selectable { cursor: pointer; animation: mengsan-node-pulse-shuying 1.6s infinite; } .mengsan-node-shuying.locked { opacity: 0.45; filter: grayscale(0.65); } .mengsan-node-shuying.completed { opacity: 0.72; box-shadow: 0 0 0 3px rgba(244, 211, 139, 0.3); } @keyframes mengsan-node-pulse-shuying { 0%, 100% { box-shadow: 0 0 0 0 rgba(242, 207, 132, 0.18), 0 5px 15px rgba(0, 0, 0, 0.42); } 50% { box-shadow: 0 0 0 8px rgba(242, 207, 132, 0), 0 5px 18px rgba(0, 0, 0, 0.55); } } @media (max-width: 600px) { .mengsan-overlay-shuying { padding: 7px; } .mengsan-panel-shuying { padding: 14px; } .mengsan-title-shuying { font-size: 24px; } .mengsan-map-panel-shuying { padding: 8px; } .mengsan-map-shuying { min-height: 0; } .mengsan-node-shuying { width: 54px; height: 36px; font-size: 11px; } }